Inicio Apuntes FPApuntes DAW Crea dos triángulos formando una pirámide usando PHP

Crea dos triángulos formando una pirámide usando PHP

ACTUALIZACIÓN DEL ARTÍCULO: https://entreunosyceros.net/piramide-de-asteriscos-crea-una-con-php-de-forma-rapida/

Publicado por entreunosyceros
Publicado el: Última actualización:

AVISO: Esta entrada tiene más de dos años desde su publicación. Es posible que el contenido esté desactualizado.

El tutorial que voy a dejar hoy aquí son dos formas diferentes, dentro del lenguaje PHP para formar una pirámide vertical con asteriscos. Para ello vamos a crear la pirámide formando dos triángulos rectángulos. Uno de ellos invertido y el otro normal.

Pirámide con asteríscos

Para esta clase de representaciones podrás encontrar multitud de maneras a lo largo y ancho de internet, pero estas dos formas las acabo de escribir yo para alguien que con buenos modos me lo ha pedido. La verdad es que no sé si exactamente era esto lo que buscaba, pero espero que como mínimo le de la idea para desarrollar su propio código. Soy consciente que la pirámide está rotada, pero tampoco lo voy a dar todo hecho. Echando un pequeño vistazo al código se puede modificar fácilmente para que la pirámide quede como debe, pero eso ya que lo vea cada cual.

Como he dicho, voy a dejar dos código para realizar este ejercicio. En ambos códigos la línea intermedia entre los triángulos tendrá un valor de 8 asteriscos, pero este será  modificable mediante la inclusión de un valor en la variable de turno.

Con programación lineal en PHP

El objetivo de este será básicamente practicar un poco los bucles en PHP. El primero de los método va a ser programación lineal haciendo uso de dos bucles for. Puedes ver el código que sigue a estas líneas funcionando en el siguiente enlace.

<?php
//Tamaño de la línea más larga, la de en medio de ambos triángulos
$num = 8;
//bucle para el triángulo superior
for($n=1; $n <= $num; $n++){
    echo str_pad('', $n, '*') . '<br />';
}
 
//bucle para el triángulo invertido 
for($n=$num - 1; $n >= 1; $n--){
    echo str_pad('', $n, '*') . '<br />';
}
?>

Como se puede ver, se trata de un código muy sencillo. Este es el típico ejercicio que todo el mundo hará después del clásico «Hola mundo».

Con PDO en PHP

En este segundo código, que tendrá el mismo resultado que el anterior, vamos a hacer la misma pirámide pero utilizando PDO. Me parece como más elegante.

El resultado final del código se puede consultar en el siguiente enlace.

<?php 
/** 
* Creando dos triángulo con PDO
*/ 

//Clase para escribir los triángulos
class triangulo{ 
     
    //Constructor
    function __construct($cateto){ 
        $this->cateto = $cateto; 
    } 

    //Función que escribe los asteriscos
    function sacaTriangulo(){ 
        
        //Buble para escribir el triángulo superior
        for($i = 1; $i <= $this->cateto; $i++){ 
            $escrito = 1;
            echo "*"; 

            while($escrito < $i){ 
                echo "*"; 
                $escrito++; 
            } 
            echo "<br/>";
        }

        //Bucle para el triángulo invertido
        for($i = $this->cateto; $i >= 1; $i--){
            
            $escritoInf = 1; 
            while($escritoInf < $i){
                echo "*";  
                $escritoInf++;
            }
            echo "<br/>";
        } 
    } 
} 

//Tamaño de la línea de enmedio
$cateto = 8; 
//llamamos al contructor pasándole el parámetro para el tamaño
$triangulo = new Triangulo($cateto); 
//llamamos al método
$triangulo->sacaTriangulo(); 
?>

Como se puede ver aquí también, el objetivo de este tipo de ejercicio, sigue siendo practicar los bucles. Pero en este segundo caso se utiliza un constructor ara ello. Decir que aun que el primer código es más sencillo, es mejor idea pararse a leer el segundo, ya que en PHP utilizar PDO es mejor idea.

También te puede interesar ...

Deja un comentario

* Al utilizar este formulario, aceptas que este sitio web almacene y maneje tus datos.

2 Comentarios

Mery 27 mayo, 2017 - 10:58 PM

Genial. Es justo lo que necesitaba. Con esto puedo ver como hacer un rombo. Gracias por compartir.

Respuesta
sapoclay 27 mayo, 2017 - 11:03 PM

Gracias a ti por comentar. Salu2.

Respuesta

Adblock Detectado!!

Ayúdanos deshabilitando la extensión AdBlocker de tu navegador para visitar esta web.
Si no sabes hacerlo en Chrome, consulta el siguiente enlace. Si utilizas Firefox, puedes consultar este otro enlace.
Esto mejorará tu experiencia en este sitio web.