Ejemplos de código PHP (Parte 3: Estructuras repetitivas)

  En esta parte de la serie sobre ejemplos de código PHP se verán ejemplos de estructuras repetitivas, que forman parte de las estructuras de control, como se ha visto en esta entrada anterior.
   Cada uno de los códigos aquí mostrados como ejemplo se refieren a una situación hipotética a la que son útiles, pero eso no significa que no haya otros códigos PHP que resuelvan igualmente tales situaciones.
  Los códigos aquí mostrados han sido probados y funcionan sin ningún problema.

  El siguiente programa obtiene la cantidad de números pares de un rango de números enteros dados.

<?php
          $r1 = 5;
          $r2 = 10;
          $c = 0;
          $n = 5;
          if ($r1 <= $r2) {
            while ($r1 <= $r2) {
                if ($r1 % 2 == 0) {
                    $c++;
                }
                $r1++;
            }
            echo "La cantidad de números pares del rango " . $n . " - " . $r2 . " es " . $c . ".";
          } else {
            echo "Rango incorrecto.";
          } 

?>

_________________________________________________________________________________

  Este algoritmo obtiene la cantidad de los primeros N números múltiplos de 5 de un número N dado.

<?php
            $N = 60;
            $n = 1;
            $c = 0;
            do {
                if($n % 5 == 0){   
                    $c = $c + 1;
                }
                $n = $n + 1;
            } while ($n < $N);
            echo "La cantidad de múltiplos de 5 es ". $c. "." ;

?>

________________________________________________________________________

  El siguiente programa determina la cantidad de dígitos total, la cantidad de dígitos pares que contiene, y el dígito mayor de un número dado.

<?php
          $n = 8765;
          $n1 = $n;
          $c1 = 0;
          $p = 0;
          $r1 = 0;
          while ($n <> 0) {
            $r = $n % 10;
            $n = floor ($n / 10);
            if ($r % 2 == 0) {
                $p++;
            }
            if ($r1 <= $r) {
                $max = $r;
            }
            $r1 = $r;
            $c1++;
          }
          echo $n1 . " tiene " . $c1 . " dígitos.</br>";
          echo $n1 . " tiene " . $p . " dígitos pares.</br>";
          echo "El dígito mayor de ". $n1. " es ". $max. ".";

?>

________________________________________________________________________

  Este algortimo devuelve el inverso de un número.

<?php
          $n = 1785;
          $i = 0;
          $n1 = $n;
          while ($n <> 0) {
            $r = $n % 10;
            $n = floor ($n / 10);
            $i = ($i * 10) + $r;
          }
          echo "El inverso de ". $n1 . " es " . $i. ".";

?>

________________________________________________________________________

  Este algoritmo indica si un número dado es o no un cubo perfecto (la suma de los cubos de sus dígitos dan el mismo número).

<?php
          $n = 64;
          $n1 = $n;
          while ($n <> 0) {
            $r = $n % 10;
            $n = floor ($n / 10);
            $cubo = pow($r, 3);
            $cubosuma = $cubosuma + $cubo;
          }
          if ($n1 == $cubosuma) {
            echo $n1 . " es un cubo perfecto.";
          } else {
              echo $n1 . " no es un cubo perfecto.";
          } 

?>

________________________________________________________________________

  El siguiente programa obtiene la suma de pares e impares de los primeros N números enteros de un número N dado.

<?php
          $N = 20;
          $n = 1;
          $p = 0;
          $imp = 0;
          for ($i = $n; $i <= $N; $i++) {
            if ($n % 2 == 0) {
                $p = $p + $n;
            } else {
                $imp = $imp + $n;
            }
            $n = $n + 1;  
          }
          echo "La cantidad de pares es: ". $p. ".</br>";
          echo "La cantidad de impares es: ". $imp. ".</br>";

?>

________________________________________________________________________

  El siguiente algoritmo determina el número de múltiplos de un número M dado en un rango de números enteros dado.

<?php
            $M = 4;
            $r1 = 1;
            $r2 = 20;
            $c = 0;
            if ($r1 <= $r2) {
                for($i = $r1; $i <= $r2 ;$i++){
                    if($i % $M == 0){
                        $c = $c + 1;
                    }
                }
                echo "En el rango entre ". $r1. " y ". $r2. ", hay ". $c. " múltiplos de ". $M. ".";   
            } 

?>

________________________________________________________________________

  El programa de este ejemplo determina si un número dado es o no un número primo (número mayor que 1 que sólo es divisible por 1 y por sí mismo).

<?php
            function Primo($n){
                $div = 2;
                while($div < $n) {
                    if(($n % $div) == 0) {
                        $boolean = True;
                        break;
                    } else {
                        $div++;
                    }       
                }
                if ($boolean) {
                    echo "El número ". $n . " no es primo.";
                } else {
                    echo "El número ". $n . " es primo.";
                }
            }
            Primo (23)

?>

  Otro modo de hacer lo mismo:

function Primo($n){
                $cont = 0;
                for($i = 1; $i <= $n; $i++){
                    if($n % $i == 0){
                        $cont++;
                    }
                }
                if($cont == 2){
                    echo "El número ". $n . " es primo.";
                } else{
                    echo "El número ". $n . " no es primo.";
                }
            }
            Primo (3)

?>

________________________________________________________________________

  El algoritmo siguiente muestra todas las letras desde "a" a la "z" en minúsculas. 

<?php
            for ($i=97;$i<=122;$i++) {
                echo chr($i);                
            }
 ?>


________________________________________________________________________

  Este programa determina si dos números dados son amigos (la suma de los divisores de uno son iguales al otro y al revés) o no.

<?php
            $n1 = 220;
            $n2 = 284;
            $suma = 0;
            $suma2 =0;
            for ($c = 1; $c < $n1; $c++) {
                if ($n1 % $c == 0) {
                    $suma = $suma + $c;
                }
            }
            for ($d = 1; $d < $n2; $d++) {
                if ($n2 % $d == 0) {
                    $suma2 = $suma2 + $d;
                }
            }
           
            if ($suma == $n2){
                if ($suma2 == $n1){
                    echo $n1." y ".$n2." son amigos.";
                }
            }else{
                    echo $n1." y ".$n2." no son amigos.";
            }

?>

________________________________________________________________________

   El siguiente algoritmo determina si un número dado es o no capicúa.

<?php
            $n = 4554;
            $nstring = (string)$n;
            $result = "";
            for ($i = strlen($n) - 1; $i >= 0; $i--) {
                $result.=$nstring[$i];
            }
            $inv = (int)$result;
            if ($n == $inv) {
                echo $n." es capicúa.";
            } else {
                echo $n." no es capicúa.";
            }    

?>

________________________________________________________________________

   Este programa determina si un número dado es perfecto (la suma de sus divisores da ese mismo número) o no.

<?php
            $n = 55;
            $suma = 0;
            for ($c = 1; $c < $n; $c++) {
                if ($n % $c == 0) {
                    $suma = $suma + $c;
                }
            }
            if ($suma == $n){
                echo $n." es perfecto.";
            }else {
                echo $n." no es perfecto.";
            }

?>

________________________________________________________________________

  Algoritmo que muestra la tabla de multiplicar completa desde el 1 al 10.

<?php
            for($tabla=1; $tabla<=10; $tabla++) {
                echo "<h3>Tabla del $tabla </h3>";
                for($n=1; $n<=10; $n++) {
                    echo "$tabla x $n = ". ($tabla * $n) . "<br/>";
                }
            }

?>

________________________________________________________________________


  Espero que esta entrada de la bitácora haya sido interesante y/o útil al lector. De ser así, aguardo que la comnete y/o la comparta, por favor.

No hay comentarios:

Publicar un comentario

Deje aquí su comentario, si no puede comentar, pruebe a hacerlo desde otro navegador de red u otro equipo.