Curso Práctico de PHP

Curso Práctico de PHP

Ana Belisa Martínez

Ana Belisa Martínez

¡Ponte a prueba!

10/17

Lectura

PHP es un lenguaje con el cual podrás llevar a cabo todo tipo de proyectos y además desarrollar una excelente lógica de programación de forma muy sencilla.

...

Regístrate o inicia sesión para leer el resto del contenido.

Aportes 248

Preguntas 4

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

10. ¡Ponte a prueba!

Quise ponerme un poco más a prueba, y lograr un árbol completo, me costó y tuve que hacer varios bucles pero me salió al fin 😃.

(Todo feedback es bien recibido 😃)

Así se ve:

Aquí comparto el código .php:

<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Retos</title>
</head>
<body>
    <div class="challenge-box">
    <form action="index.php" method="post">
        <label for="">Ingresar edad:</label><br>
        <input type="number" name="age" id="">
        <button type="submit">Validar</button>
    </form>
    <?php
    function ageValidation($age)
    {
        if($age < 5) {
            return "la parte inferior de la bodega.";
        } else if ($age >= 5 && $age <= 7) {
            return "la parte media de la bodega.";
        } else if ($age > 7){
            return "la parte alta de la bodega.";
        } else {
            return "la bodega de al lado.";
        }
    }
    $studentAge = $_POST["age"];
    echo "El estudiante con $studentAge años, tendrá sus juguetes en " . ageValidation($studentAge);
    ?>
    </div>
    <div class="challenge-box" style="margin-top: 20px;">
    <form action="index.php" method="post">
        <label for="">Ingresar tamaño deseado del árbol de navidad:</label><br>
        <input type="number" name="treeSize" id="">
        <button type="submit">Generar árbol</button>
    </form>
    <?php
    function treeGenerator($treeSize)
    {
        $blankSpaces = $treeSize;
        $asterisks = 1;
        for($i = 0; $i<$treeSize; $i++){
            for($j = 0; $j< ($blankSpaces - 1); $j++) {
                echo '&nbsp';
            }
            for($k = 0; $k<$asterisks; $k++){
                echo "*";
            }
            echo "<br>";
            $asterisks++;
            $blankSpaces--;
        }
    }
    $treeSize = $_POST["treeSize"];
    echo "Árbol generado de tamaño: $treeSize<br><br>";
    treeGenerator($treeSize);
    ?>
    </div>
</body>
</html>

Seguí jugando e hice una versión de arbolito “cute”. Cabe mencionar que por el tamaño de los iconos, la lógica del medio árbol se acopló, adicionando los espacios en blanco.

Acá el código:

<?php

  function arbolEnteroIcons(int $longitud):void {
    $espaciosEnBlanco = $longitud;
    echo str_repeat(" ", $espaciosEnBlanco) . "⭐ \n";

    # Hojas
    for ($i=1; $i <= $longitud; $i++) { 
      echo str_repeat(" ", $espaciosEnBlanco);
      echo str_repeat("🌳", $i) . "\n";
      $espaciosEnBlanco--;
    }

    # Base del árbol
    echo str_repeat(" ", ceil($longitud/2));
    echo str_repeat("💼", floor($longitud/2 + 1));
  }


  echo "¿De qué longitud quieres el arbolito? ";
	fscanf(STDIN, "%d", $longitud); //input por consola

  echo arbolEnteroIcons($longitud);

ejercicio 1 bodega

<?php

$edades = [
    4,
    5,
    7,
    10,
    'undefined age'
];

function espacios_correspondientes_en_la_bodega (array $edades) {
    for ($i = 0; $i < count($edades); $i++) {
        if(is_int($edades[$i])) {
            if ($edades[$i] < 5) {
                echo "<br>guarde sus juguetes en la parte inferior de la bodega.<br>";
            } elseif ($edades[$i] >= 5 && $edades[$i] <= 7) {
                echo "<br>guarde sus juguetes en la parte media de la bodega.<br>";
            } else {
                echo "<br>guarde sus juguetes en la parte alta de la bodega.<br>";
            }
        } else {
            echo "<br>guarde sus juguetes en la bodega de al lado.<br>";
        }
    }
}

espacios_correspondientes_en_la_bodega ($edades);

ejercicio 2 medio pino

<?php 

function imprime_medio_pino (int $altura) {
    $char = '';
    for ($i = 0; $i <= $altura; $i++) {
        $char .= '*';
        echo $char."<br>";
    }
}

imprime_medio_pino (5);

Orientado a Objetos 😄

  • Reto: Con una condición:

  • Reto: Medio Árbol de Navidad:

Hola a Todos les comparto 3 formas distintas para imprimir el arbolito, con el agregado que el usuario puede elegir el número de hojas.

ejercicio 1 :

$edades = array(3,4,7,7,6,'undefined age');

foreach($edades as $edad) {
  switch($edad) {
    case $edad>0&&$edad<5:
      echo"al ser menor de 5 años van a la parte inferior de la bodega \n";
    break;
    case $edad>=5&&$edad<=7:
      echo "al tener entre 5 y 7 años sus juguetes se almacenan en la parte media de la bodega \n";
    break;
    case $edad>7&&$edad<100:
      echo "al ser mayor de 7 años sus juguetes se almacenan en la parte superior de la bodega \n";
    break;
    default:
      echo "Al no tener registrada su edad sus juguetes se guardaran en el almacen de al lado \n";
    break;
  }
}

ejercicio 2:

$asterisc = "*";
$countAsterisc = 10;
$a = "*";

for($i=0 ;$i < ($countAsterisc/2); $i++) {
  echo "$a \n";
  
  $a .= $asterisc;
}
// Ejercicio 1

$arr_edades = array(1, 5, 7, 2, 6, 10, 'undefined');

function ejercicio1($array_edades) {
    foreach ($array_edades as $edad) {
        switch ($edad) {
            case $edad > 0 && $edad < 5:
                concatPhrase($edad, "inferior");
                break;

            case $edad >= 5 && $edad < 7:
                concatPhrase($edad, "media");
                break;

            case $edad >= 7:
                concatPhrase($edad, "alta");
                break;

            default:
                echo "Tiene un almacenamiento en la bodega de al lado." . PHP_EOL;
                break;
        }
    }
}

function concatPhrase($edad, $parte) {
    echo "El estudiante con $edad años tendrá sus juguetes en la parte $parte de la bodega." . PHP_EOL;
}

ejercicio1($arr_edades);
// Ejercicio 2

function ejercicio2($num) {
    $treeLevel  = '';
    $asterisk = '*';
    for ($i = 0; $i < ($num / 2); $i++) {
        $treeLevel .= $asterisk;
        echo $treeLevel . PHP_EOL;
    }
}

ejercicio2(10);

Para el primer ejercicio realicé de esta forma;

<?php
//funcion para llenar un arreglo de edades mediante
//el numero de estudiantes ingresado
function llenarEdades($num){
    for($i=0;$i<$num;$i++){
        $edad=rand(0,10);
        while($edad>0 && $edad<=7){
            $edad=rand(0,10);
        }
        $edades[$i]=$edad;
    }
    return $edades;//devuelvo el arreglo de edades
}

function mensaje($ed){
//tomé a cero como si un estudiante no proporciona su nombre
    if($ed<5 && $ed>0){
        echo "El estudiante con $ed años tendrá sus juguetes en la parte inferior de la bodega.<br>";
    }else if($ed>=5 && $ed<=7){
        echo "El estudiante con $ed años tendrá sus juguetes en la parte media de la bodega.<br>";
    }else if($ed>7){
        echo "El estudiante con $ed años tendrá sus juguetes en la parte alta de la bodega.<br>";
    }else if ($ed==0){
        echo "El estudiante con $ed años tendrá sus juguetes en la bodega de a lado.<br>";
    }
}

//main
    $numNinios=rand(0,5);//genero aleatorio una cantidad de chicos
    $edarr=llenarEdades($numNinios);//lleno el vector de edades
    print_r($edarr);//muestra las edades ingresadas
    foreach($edarr as $value){//con un foreach despliego el mensaje para cada uno de los chicos 
        mensaje($value);
    }


Para mi segundo ejercicio 


<?php
$altitudF=rand(2,10);// genero numero de filas aleatorias entre 2 y 10
print_r($altitudF);//visualiza el numero generado
for($i=0;$i<$altitudF;$i++){//este for recorre las filas
for($j=0;$j<$i;$j++){
//este for imprime el numero de asteriscos dependiendo de la fila en la que se encuentre
echo ‘*’;
}
echo ‘<br>’;//hago salto de linea para cada fila, en ese caso se muestra info en HTML
}

function asignardeposito($edad){

    switch($edad){
        case ($edad<5): 
            echo "le corresponde la parte inferior de la bodega ya que cuenta con $edad de edad.";
        break;
        case ($edad>=5 && $edad<7):
            echo "le corresponde la parte media de la bodega ya que cuenta con $edad de edad.";
        break;
        case ($edad>=7):
            echo "le corresponde la parte alta de la bodega ya que cuenta con $edad de edad.";
        break;
        default: 
            echo "le corresponde la bodega de al lado ya que no cuenta con  edad.";
        break;

    }

}
asignardeposito(0);
?>

$arbol = 5;
for ($i=1; $i <=$arbol ; $i++) { 
    for ($j=1; $j <= $i ; $j++) { 
        echo "*";
    }
    echo "\n";
}
$longitud_arbol = 50;
for ( $i=1; $i<= $longitud_arbol; $i++)
{
    $array[$i] = "*";
    echo implode("",$array) . "\n";
}

<?php

function edades($edad){

if ($edad<=5) {
echo "Tendrán sus espacios en la parte inferior de la bodega.\n ";
}
elseif($edad >=5 && $edad <= 7){
echo "Tendrán sus espacios en la parte media de la bodega.\n ";
}
elseif ($edad>7) {
echo "Tendrán sus espacios en la parte alta de la bodega.\n ";
}
else {
echo "Quienes no tengan edad registrada, tendran un espacio al lado\n ";
}

}do {
$ingreseedad= (int)readline(“ingrese su edad \n”);
edades($ingreseedad);
} while (true);
echo “\n”;

// reto arbol  
<?php
$pisos = (int) readline("Cuantos pisos quieres en tu medio arbol: ");
$piso = 1;
while ($pisos > 0){
  $arbol = "*";
  echo str_repeat($arbol,$piso) ."\n";
  $piso++;
  $pisos--;
};

// reto estudiantes

$edades = readline("por favor ingrese las edades de los estudiantes: ");
function orden_de_objetos ($edades){
  $edades = explode(",",$edades);
   foreach ($edades as $edad){
    $edad = (int) $edad;
    if (!$edad){
      echo "No tiene registro y puede guardar sus cosas en la bodega de al lado \n";
    } else if ($edad < 5 ) {
      echo "Tiene $edad años y puede guardar sus cosas en parte inferior de la bodega \n";
    } else if ($edad >= 5 && $edad < 7) {
      echo "Tiene $edad años y puede guardar sus cosas en parte media de la bodega \n";
    } else {
      echo "Tiene $edad años y puede guardar sus cosas en parte alta de la bodega \n";
  }
}
};
orden_de_objetos($edades);
?>

RETO_2:
$altura = 10;
for ($i=1; $i < $altura; $i++) {
echo str_repeat("*", $i) . “\n”;
}

RETO-1:
<?php

$estudiante = readline("Ingrese el nombre del alumno: ");
$edad = rand(0,10);
print_r(“edad: (Asignada al azar) “. $edad.”\n”);

if ($edad < 1) {
echo “El juguete debe ir en la bodega del lado”;
} else if ($edad >= 1 && $edad< 5) {
echo “El juguete va en la parte inferior de la bodega”;
} else if ($edad >= 5 && $edad <= 7) {
echo “El juguete va en la parte media de la bodega”;
} else {
echo “El juguete va en la parte alta de la bodega”;
}

para el ejercicio 1

<?php

$parar = false;
$decision = "no";

do {

    $edad = readline("Ingrese la edad del alumno: ");

    juguetes($edad);

    echo "desea agregar la edad de otro alumno? si/no ";

    $decision = readline();

    if ($decision == "no") {

        $parar = true;

    } else if ($decision == "si") {

        $parar = false;

    } else {

        echo "comando no reconocido, siguiendo con el programa\n";

        $parar = true;
    }




} while ($parar == false);



function juguetes($edad)
{

        

    if (is_numeric($edad)) {

        if ($edad < 5) {

            echo "El estudiante con $edad años tendrá sus juguetes en la parte inferior de la bodega.\n";

        } else if ($edad >= 5 && $edad <= 7) {

            echo "El estudiante con $edad años tendrá sus juguetes en la parte media de la bodega.\n";
        } else if ($edad > 5) {

            echo "El estudiante con $edad años tendrá sus juguetes en la parte alta de la bodega.\n";
        }

    } else {

        echo "El estudiante sin registro de edad aún tendrán un espacio de almacenamiento en la bodega de al lado.\n";
    }
}


?>

para el ejercicio 2

<?php

$altura = readline("Ingrese la altura del pino: ");

pino($altura);

function pino($altura)
{

    if (is_numeric($altura)) {
        $iteracion =0;

        for ($i = 0; $i <= $altura; $i++) {

            for ($j=0; $j < $i; $j++) { 
                echo "*";
            }
            echo " \n";

        }
    }

}



?>
<?php

// Captura por teclado las edades de los niños

$capturaEdades = readline("Ingresa las edades de los niños separados por coma (,):");

// Convierte en un arreglo el string capturado por teclado

$arregloEdades = explode(',', $capturaEdades);

// Convierte a enteros los elementos del arreglo que vienen como string

$edades = array_map('intval', $arregloEdades);


for ($i = 0; $i < count($edades); $i++) {
    if (is_int($edades[$i])) {
        if ($edades[$i] < 5) {
            echo "El niño de $edades[$i] años guarde sus juguetes en la parte inferior de la bodega \n";
        } elseif ($edades[$i] >= 5 && $edades[$i] <= 7) {
            echo "El niño de $edades[$i] años guarde sus juguetes en la parte media de la bodega \n";
        } elseif ($edades[$i] > 7 && $edades[$i] <= 12) {
            echo "El niño de $edades[$i] años guarde sus juguetes en la parte alta de la bodega \n";
        } else {
            echo "El niño de $edades[$i] años guarde sus juguetes en la bodega de al lado \n";
        }
    }
}

<?php

function tree() {

$a = readline("ingrese el numero de pisos del audio: ");

for($i = 0; $i <= $a; $i++) {
echo str_repeat("*", $i );
echo “\n”;
}
}
echo tree();
echo “\n”;
?>

<?php
    # CON UNA CONDICION

    function juguetes($edad){

        if($edad<5){
            return "El estudiante con $edad años tendrá sus juguetes en la parte inferior de la bodega.";
        }elseif($edad>=5 and $edad<=7){
            return "El estudiante con $edad años tendrá sus juguetes en la parte media de la bodega.";
        }elseif($edad > 7){
            return "El estudiante con $edad años tendrá sus juguetes en la parte alta de la bodega.";
        }else{
            return "El estudiante tendrá sus juguetes en la bodega de al lado.";
        }    

    }

    echo juguetes(4);
    echo juguetes(8);
    echo juguetes(10);

?>

<?php
    # MEDIO ARBOL DE NAVIDAD

    function arbol_navidad($altura){
        $arbol = "";
        for($i = 1; $i<= $altura; $i++){
            for($j = 1; $j<= $i; $j++){
                $arbol .= "*";
            }
            $arbol .= "\n";
        }
        return $arbol;
    }

    echo arbol_navidad(5);
    echo arbol_navidad(3);
    echo arbol_navidad(8);

?>

<?php
$edad = readline("Por favor ingresa tu edad: ");
var_dump($edad);

if($edad==null)
    echo "El estudiante sin registro de edad tendrá sus juguetes en la bodega de al lado.\n";
else if($edad<5)
    echo "El estudiante con $edad años tendrá sus juguetes en la parte inferior de la bodega.\n";
else if($edad>= 5 && $edad<=7)
    echo "El estudiante con $edad años tendrá sus juguetes en la parte media de la bodega. \n";
else echo "El estudiante con $edad años tendrá sus jugeutes en la parte alta de la bodega. \n";

?>

Medio árbol de Navidad

<!DOCTYPE html>
<html>
<head>
	<title>Árbol de Navidad</title>
</head>
<body>
	<form method="post">
		<label for="altura">Altura del árbol:</label>
		<input type="text" name="altura" id="altura">
		<input type="submit" value="Generar árbol">
	</form>

	
	<?php
    if(isset($_POST['altura'])) {
        $altura = $_POST['altura'];
    
        // Generar el triángulo de asteriscos
        for($i = 1; $i <= $altura; $i++) {
            // Imprimir asteriscos
            for($j = 1; $j <= $i; $j++) {
                echo "*";
            }
    
            // Salto de línea para pasar a la siguiente fila
            echo "<br>";
        }
    }
    ?>

</body>
</html>

Con una condición…

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
<!-- <form action="main.php">
    <input type="text" name="Nombre">
    <button type="submit">Enviar</button>
</form> -->

    <h1>Juguetes Favoritos</h1>

    <form class="Bodega" action="main.php" method="post">
        <h3>Ingrese la edad.</h3>
        <p>Edad: <input type="text" name="Estudiantes[]">
        <button type="submit">Enviar</button>
    </form>

</body>
</html>
<?php
print_r($_POST);

class Bodega {

    public function Estudiantes($Estudiantes) {
        foreach ($Estudiantes as $Edad) {
            $this -> Clasificar($Edad);
        }
    }

    private function Clasificar($Edad) {
        if (!is_numeric($Edad)) {
            $Bodega = "Indefinidad";
        } else if ($Edad > 0 && $Edad < 5) {
            $Bodega = "Inferior";
        } else if ($Edad >= 5 && $Edad <= 7) {
            $Bodega = "Media";
        } else if ($Edad > 7) {
            $Bodega = "Alta";
        } else {
            $Bodega = "Indefinidad";
        }

        switch ($Bodega) {
            case 'Inferior':
                echo "El estudiante con ".$Edad." años de edad tendrá sus juguetes en la parte inferior de la bodega.";
                break;
            case 'Media':
                echo "El estudiante con ".$Edad." años de edad tendrá sus juguetes en la parte media de la bodega.";
                break;
            case 'Alta':
                echo "El estudiante con ".$Edad." años de edad tendrá sus juguetes en la parte alta de la bodega.";
                break;
            default:
                echo "El estudiante tendrá sus juguetes en un espacio de almacenamiento en la bodega de al lado.";
                break;
        }
    }

}

$Estudiantes = $_POST['Estudiantes'];
$Bodega = new Bodega;
$Bodega -> Estudiantes ($Estudiantes);
?>

RETO COMPLETADO!

Hice algo extra, le agregué el número de niños para analizar

<code> 

$altura = (int)readline("Indique la Altura deseada del arbolito, espresada en numeros ");


function altura($altura)
{
    for ($i=0 ; $i <= $altura; $i++) { 
        echo str_repeat("*", $i)."\n";
        }   
}
    
altura($altura);

Mi aporte ha este reto 💚

<?php

function arbolito($altura)
{
  $edad = readline("Dame tu edad, para colocar tus regalos en el arbolito:\n");


  for ($i = 0; $i < $altura; $i++) {
    echo str_repeat("*", $i) . "\n";
  }

  if ($edad >= 0 && $edad <= 5) {
    echo "Tu regalo se encuentra en la parte inferior\n";
  } elseif ($edad >= 5 && $edad <= 23) {
    echo "Tu regalo se encuentra en la parte media\n";
  } elseif ($edad >= 24) {
    echo "Tu regalo se encuentra en la parte superior\n";
  } else {
    echo "Coloca tu edad para que sepas en que parte esta tu regalo 💚\n";
  }
}
arbolito(10);

Parte Inferior

Parte Media

Parte Superior

<?php
function drawArbol(int $len){
    for($i=0;$i<=$len;$i++){
        for($j=0;$j<$i;$j++){
            echo "🌳";
        }
        echo "\n";
    }
}

$longi = readline("tamano del arbol?: ");
drawArbol($longi)
?>```

Este seria mi aporte.

<?php

class Practice
{
    /*
        Quienes sean menores de 5 años tendrán sus espacios en la parte inferior de la bodega.
        Quienes tengan entre 5 y 7 años tendrán sus espacios en la parte media de la bodega.
        Quienes tengan más de 7 años tendrán sus espacios en la parte alta de la bodega.
        Quienes no tengan registro de su edad aún tendrán un espacio de almacenamiento en la bodega de al lado.
    */
    private string $store = 'undefined';
    private string $asterisk = '*';

    public function Age(int $age = null): string
    {
        if (!is_null($age)) {
            if ($age < 5) {
                $this->store = 'lower';
            }
            if ($age >= 5 && $age <= 7) {
                $this->store = 'medium';
            }
            if ($age > 7) {
                $this->store = 'hight';
            }
        }

        return match ($this->store) {
            'lower' => "El estudiante con $age años tendrá sus juguetes en la parte inferior de la bodega.",
            'medium' => "El estudiante con $age años tendrá sus juguetes en la parte media de la bodega.",
            'hight' => "En estudiante con $age años tendrá sus juguetes en la parte alta de la bodega.",
            default => "Al no tener registrada su edad sus juguetes se guardaran en el almacen de al lado"
        };
    }

    public function Tree(int $cant): void
    {
        for ($i = 0; $i < ($cant / 2); $i++) {
            echo "$this->asterisk \n";
            $this->asterisk .= '*';
        }
    }
}

$test = new Practice();
echo $test->Age();
echo "\n";
$test->Tree(10);

quise hacerlo por medio de contadores, siento que esta función me facilita la vida en muchos aspectos. !Me costo hacer el salto, pero ahi me las arregle ajajaj!
<?php
$piso=10;
$arbol=0;
while ($arbol < $piso) {
for ($i = 1; $i <= $arbol; $i++){
echo ("*");}
echo “
”;
$arbol = ($arbol + 1);
}
?>

Los niños y sus juguetes…

echo "Almacen de juguetes\n\n";

$estudiantes = array(
	array("nombre" => "Ana", "edad" => 4),
	array("nombre" => "Andy", "edad" => 6),
	array("nombre" => "Andrés", "edad" => null),
	array("nombre" => "Wendy", "edad" => 10),
	array("nombre" => "Carlos", "edad" => 7),
	array("nombre" => "David", "edad" => 4),
	array("nombre"	=> "Juan", "edad" => 8),
);

foreach ($estudiantes as $key => $estudiante) {

	$edad = $estudiante['edad'];
	//nombre de estudiante
	$resultado = $estudiante['nombre'];

	//mostrar edad
	if (!is_int($edad)) {
		$resultado .= " al no saberse su edad";
	} else {
		$resultado .= " con " . $edad . " años";
	}
	//texto complementario
	$resultado .= " tendrá sus jugetes en la ";

	//mostrar bodega
	if (!is_int($edad)) {
		//si no hay edad registrada
		$resultado .= "bodega de al lado.";
	} else {
		//si hay edad se especifica la bodega
		if ($edad < 5) {
			$ubicación =  "inferior";
		} else if ($edad >= 5 && $edad <= 7) {
			$ubicación =  "media";
		} else if ($edad > 7) {
			$ubicación = "alta";
		}
		// Texto de ubicación
		$resultado .= "parte " . $ubicación . " de la bodega";
	}
	//imprimir mensaje
	echo $resultado . "\n";
}

imprime:

Ana con 4 años tendrá sus jugetes en la parte inferior de la bodega
Andy con 6 años tendrá sus jugetes en la parte media de la bodega
Andrés al no saberse su edad tendrá sus jugetes en la bodega de al lado.
Wendy con 10 años tendrá sus jugetes en la parte alta de la bodega
Carlos con 7 años tendrá sus jugetes en la parte media de la bodega
David con 4 años tendrá sus jugetes en la parte inferior de la bodega
Juan con 8 años tendrá sus jugetes en la parte alta de la bodega

Ejercicio #1:

Ejercicio #2:

Buen día el reto de los juguetes lo realice de diferentes maneras , no supe cual de todos es la mas optima

<form action="" method="post">
<label>Ingresa la edad de Niño</label>    
<input type="number" name="num">

<button type="submit">Agregar</button>
<br>

<?php


    $num2 = $_POST['num'];
    

    
        if($num >= '1' && $num <= '4'  ){
            echo "El estudiante con $num años tendrá sus juguetes en la parte inferior de la bodega.";
        }
        elseif( $num >= '5' && $num <= '7' ){
            echo "El estudiante con $num años tendrá sus juguetes en la parte media de la bodega." ;
        }
        elseif( $num >= '8' ){
            echo "El estudiante con $num años tendrá sus juguetes en la parte alta de la bodega." ;
        }
        else{
            echo "El estudiante sin registro de años tendrá sus juguetes en la bodega de al lado.";
        }
       
   
   switch($num){
    case ($num >= 1 && $num <= 4):
        echo "El estudiante con $num años tendrá sus juguetes en la parte inferior de la bodega.";
    break;
    case ($num >= 5 && $num <= 7):
        echo "El estudiante con $num años tendrá sus juguetes en la parte media de la bodega." ;
    break;
    case ($num >= 8):
        echo "El estudiante con $num años tendrá sus juguetes en la parte alta de la bodega." ;
    break;
    case ($num < 0 && $num == ""):
        echo "El estudiante sin registro de años tendrá sus juguetes en la bodega de al lado.";
    break;



   };

   function jugete($num) {

    if($num >= '1' && $num <= '4'  ){
        return "El estudiante con $num años tendrá sus juguetes en la parte inferior de la bodega.";
    }
    elseif( $num >= '5' && $num <= '7' ){
        return  "El estudiante con $num años tendrá sus juguetes en la parte media de la bodega." ;
    }
    elseif( $num >= '8' ){
        return  "El estudiante con $num años tendrá sus juguetes en la parte alta de la bodega." ;
    }
    else{
        return  "El estudiante sin registro de años tendrá sus juguetes en la bodega de al lado.";
    }

   }

   echo jugete($num2);

<?php

$edades = array(1,2,3,4,5,6,7,8,9,10,11);
function definirlugar($edades){
for($i = 0; $i < count($edades); $i++){
if($edades[$i] >= 5 and $edades[$i]<= 7){
echo(“guarda en la parte media de la bodega <br>”);
}else if($edades[$i] > 7){
echo(“guarda en la parte alta de la bodega <br>”);
}else{
echo(“guarda en la bodega de al lado <br>”);
}
}

}
definirlugar($edades);
?>

El Arbolito

<form action="" method="post">
<label>Ingresa el Numero</label>    
<input type="number" name="num">

<button type="submit">Agregar</button>
<br>
<?php

if($_POST['num'] <> ""){
$num = $_POST['num'];
}else{
    $num = 0 ;
}

for($i = 1 ; $i <= $num ; $i++){
    
    for($a = 1 ; $a <= $i ; $a++){
    echo "*";
    }
    echo "<br>";
}

?>
<?php
$numeroAster = readline("Ingrese el numero de asteriscos: ");
$imprimirAster="";
for($i=0; $i< $numeroAster; $i++){
    $imprimirAster = $imprimirAster . "*";
    echo "\n";
    echo $imprimirAster;
    
}
echo "\n"

?>

Bodega

<?php

$childrens = array(4, 6, 10, 5, 8, 7, null, 3);

foreach ($childrens as $children) {
    store($children);
}

function store($age) {
    
    if (!$age) {
        echo "El estudiante sin edad tendrá sus juguetes en la bodega de al lado \n";
        return;
    }

    switch ((int)$age) {

        case $age < 5:
            echo "El estudiante con $age años tendrá sus juguetes en la parte inferior de la bodega \n";
            break;
        case $age >= 5 && $age <= 7:
            echo "El estudiante con $age años tendrá sus juguetes en la parte media de la bodega \n";
            break;
        case $age > 7:
            echo "El estudiante con $age años tendrá sus juguetes en la parte alta de la bodega \n";
            break;
    }
}

Para la solución del segundo ejercicio utilice una function predefinida de php y le solicito al usuario ingresa la altura de arbol.

<?php
// Solicitar al usuario la altura de su arbol.
$alturaArbol = readline("Ingrese la altura de su arbol: ");
// ciclo for imprimir la cantidad de veces que usuario haya ingresado.
for ($i = 0; $i <= $alturaArbol; $i++)
// uso de la función str_repeat para repetir el caracter * la cantidad de veces que valga $i
    echo str_repeat("*", $i) . "\n";

Mí solución al primero reto fue agregar un poco mas de interactividad del usuario con el programa solicitándole la edad.

<?php
// Solicitamos la edad al usuario
$edadEstudiante = (int) readline("Ingrese la edad del estudiante para saber su posición en la bodega:");
// Validamos edad ingresada e imprimimos la respuesta.
if ($edadEstudiante >= 1 && $edadEstudiante < 5)
    echo "El estudiante con $edadEstudiante años tendrá sus juguetes en la parte inferior de la bodega.";
elseif ($edadEstudiante >= 5 && $edadEstudiante <= 7)
    echo "El estudiante con $edadEstudiante años tendrá sus juguetes en la parte media de la bodega.";
elseif ($edadEstudiante > 7)
    echo "El estudiante con $edadEstudiante años tendrá sus juguetes en la parte alta de la bodega.";
elseif ($edadEstudiante == 0)
    echo "El estudiante sin edad registrada tendrá sus juguetes en la bodega de al lado.";

Versión sencilla de arbolito y bodega:

arbolito.php

<?php

$levels = (int)readline('Cuantos pisos quieres que tenga el arbolito?: ');
$rama = "";

for($i = 0; $i < $levels; $i++){
    $rama = "*" . $rama;
    echo $rama . "\n";
}

?>

bodega.php

<?php

$age = (int)readline('Cuantos años tienes?: ');

if ($age >= 0) {
    if ($age < 5) {
        echo "El estudiante con ". $age ." años tendrá sus juguetes en la parte inferior de la bodega.\n";
    } elseif ($age < 7) {
        echo "El estudiante con ". $age ." años tendrá sus juguetes en la parte media de la bodega.\n";
    } else {
        echo "El estudiante con ". $age ." años tendrá sus juguetes en la parte alta de la bodega.\n";
    }
} else {
    echo "No existen personas con esa edad\n";
}

?>

Aquí el código comentado

<?php

//Creo un arreglo con los nombres y las edades de los estudiantes
$estudiantes = array(
    "Juan" => 4,
    "Maria" => 6,
    "Pedrito" => 8,
    "Lucia" => null
);
// Creo una función que recibe como parámetro la edad de un estudiante y determina en qué parte de la bodega se almacenará su juguete
function posicionBodega($edad){
    if ($edad === null) {
        return "fuera de la bodega";
    } elseif ($edad < 5) {
        return "bodega inferior";
    } elseif ($edad >= 5 && $edad <= 7) {
        return "bodega del medio";
    } elseif ($edad >7) {
        return "bodega superior";
    }
};
// Creo una variable con un mensaje que utilizaré para imprimir la posición de cada estudiante
$mensaje = "El estudiante %s tendrá que almacenar su juguete en la %s\n";
// Utilizo un ciclo foreach para recorrer el arreglo de estudiantes
foreach ($estudiantes as $nombre => $edad) {
    // Utilizo la función printf para imprimir el mensaje con el nombre y la posición de cada estudiante
    printf($mensaje,$nombre,posicionBodega($edad));
};
<?php
function arbolito($pisos)
{
    $acu = "";

    for ($i = 0; $i < $pisos; $i++) {
        $acu .= "*";
        echo $acu . "\n";
    }
}

arbolito(10);
<?php

function asignaLugar($lista)
{

    foreach ($lista as $edad) {
        if ($edad < 5) {
            echo  "El estudiante con $edad años tendrá sus juguetes en la parte inferior de la bodega.";
        } elseif ($edad >= 5 && $edad < 7) {
            echo "El estudiante con $edad años tendrá sus juguetes en la parte media de la bodega.";
        } elseif ($edad >= 7) {
            echo "El estudiante con $edad años tendrá sus juguetes en la parte alta de la bodega.";
        } else {
            echo "El estudiante sin edad registrada tendrá sus juguetes en la bodega de al lado.";
        }
        echo "\n";
    }
}

$listaEdades = array(5, 6, 3, 8, 4, 2, 0);
asignaLugar($listaEdades);

Medio Arbolito de navidad con READLINE y DOBLE CICLO FOR

<?php
    $altura = readline("¿Cuál será la altura del medio arbolito de navidad?: ");
    medioArbolitoNavidad($altura);

    function medioArbolitoNavidad($alturaDelArbolito){
        for($i=1;$i<=$alturaDelArbolito;$i++){
            for($j=0;$j<$i;$j++){
                echo "*";
            }
            echo "\n";
        }
    }
?>  

Si queremos saber si existe una llave en un arreglo. En este caso la edad de un estudiante.

<?php
    $estudiantes = [
        "x25" => [
            "Nombre" => "Juanito",
            "Edad" => 4
        ],
        "x26" => [
            "Nombre" => "Pedrito",
        ],
        "x27" => [
            "Nombre" => "Robertito",
            "Edad" => 6
        ],
        "x28" => [
            "Nombre" => "Julieta",
            "Edad" => 10
        ],
        "x29" => [
            "Nombre" => "Anita",
            "Edad" => 15
        ],
        "x30" => [
            "Nombre" => "Marianito",
            "Edad" => 2
        ],
        "x31" => [
            "Nombre" => "Fatima",
            "Edad" => 7
        ],
        "x32" => [
            "Nombre" => "Chumelito",
            "Edad" => 8
        ],
        "x33" => [
            "Nombre" => "Chuy",
            
        ],
    ];


    almacenarJuguetes($estudiantes);

    function almacenarJuguetes($estudiantes){
        foreach ($estudiantes as $estudiante){
            if(array_key_exists("Edad",$estudiante)){
                if($estudiante["Edad"]<5)
                    echo "{$estudiante["Nombre"]} con {$estudiante["Edad"]} años tendrá sus juguetes en la parte inferior de la bodega\n";
                else if($estudiante["Edad"]>=5 && $estudiante["Edad"]<=7)
                    echo "{$estudiante["Nombre"]} con {$estudiante["Edad"]} años tendrá sus juguetes en la parte media de la bodega\n";
                else if($estudiante["Edad"]>7)
                    echo "{$estudiante["Nombre"]} con {$estudiante["Edad"]} años tendrá sus juguetes en la parte alta de la bodega\n";
            }else{
                echo "{$estudiante["Nombre"]} no tiene registro de edad. No hay un lugar en la bodega\n";
            }
        }
    }
?>

Desarrollo del ejercicio de arbolito (medio) dinámico …

<?php

$indicador = readline("Ingresa el número de pisos del arbol: ");

function imprimir_arbol ($indicador) {

$contador = (($indicador - $indicador) + 1);

do {
    for ($i=1; $i <= $contador ; $i++) { 
        echo "*";
    }

    echo "\n";
    $contador +=1;

} while ($contador <= $indicador);

}

imprimir_arbol($indicador);

Esta es mi solución al primer ejercicio: “Con una condición…”.

<?php

echo "\n";

//Primero pedimos al usuario que ingrese la cantidad  de estudiantes

$cant_est = (int) readline("Por favor, ingrese la cantidad de estudiantes: ");

echo "\n";

// Creamos un arreglo para guardar las edades de cada uno

$edades = array();
$a = 0;
while ($a < $cant_est) {
    
    $edad = (int) readline("Ingrese la edad del estudiante #" . ($a + 1) . ": ");
    array_push($edades, $edad);
    $a++;

}

echo "\n\n";

// Realizamos la validación de la edad de cada estudiante
$j = 0;

while ($j < $cant_est) {

    foreach ($edades as $edad) {

        if ($edad > 0 && $edad < 5) {
            $bodega = 1;
        } elseif ($edad >= 5 && $edad <=7) {
            $bodega = 2;
        }elseif ($edad > 7) {
            
            $bodega = 3;
        }else {
            $bodega = "indefinida";
        }

        switch ($bodega) {
            case 1:
                echo "El estudiante #" . ($j + 1) . ", con $edad años de edad, ubicará sus juguetes en la parte inferior de la bodega. \n\n";
                $j++;
                break;
            
            case 2:
                echo "El estudiante #" . ($j + 1) . ", con $edad años de edad, ubicará sus juguetes en la parte media de la bodega.\n\n";
                $j++;
                break;
    
            case 3:
                echo "El estudiante #" . ($j + 1) . ", con $edad años de edad, ubicará sus juguetes en la parte alta de la bodega.\n\n";
                $j++;
                break;
            default:
                echo "El estudiante #" . ($j + 1) . " ubicará sus juguetes en la bodega de al lado.\n\n";
                $j++;
                break;
        }
    }
}

echo "\n";

<?php
function arbol($numero){

for ($i = 1; $i <= $numero; $i++){
    $string = "*";
    echo str_repeat($string, $i)."\n";
    
}

}
arbol(6);
?>

para solucionar el primer reto podemos hacer uso de las sentencias if, elseif y else de la siguiente forma:

$edad = 6;

if ($edad < 5) {
  echo "El estudiante tendrá sus juguetes en la parte inferior de la bodega.";
} elseif ($edad >= 5 && $edad <= 7) {
  echo "El estudiante tendrá sus juguetes en la parte media de la bodega.";
} elseif ($edad > 7) {
  echo "El estudiante tendrá sus juguetes en la parte alta de la bodega.";
} else {
  echo "El estudiante tendrá sus juguetes en la bodega de al lado.";
}

Hola dejo mi ejercicio Medio árbol de Navidad hecho en python 🐍 me resulta más fácil hacer los ejercicios en este lenguaje, la lógica viene siendo la misma para cualquier otro

#Medio arbol de navidad

altura = int(input("Ingrese la altura del arbol: "))

for i in range(altura):
    print(" "+ "*"*(i+1))

RESULTADO EN CONSOLA

Hola dejo mi ejercicio ¡Ponte a prueba! hecho en python 🐍, me resulta más facil hacer los ejercicios en este lenguaje, la lógica viene siendo la misma para cualquier otro

#arreglos con datos de los estudiantes
estudiante1 = {"nombre":"Juan", "edad": 6}
estudiante2 = {"nombre":"Pedro", "edad": 8}
estudiante3 = {"nombre":"Hugo", "edad": 4}
estudiante4 = {"nombre":"Luis", "edad": ""}

#arreglo con los estudiantes
estudiantes = [estudiante1, estudiante2, estudiante3, estudiante4]

# funcion para asignar una bodega a cada estudiante por edad

def asignarBodega(estudiantes):
    for estudiante in estudiantes:
        if estudiante["edad"] == "":
            estudiante["bodega"] = "la bodega de a lado"
        elif estudiante["edad"] < 5:
            estudiante["bodega"] = "la parte inferior de la bodega"
        elif estudiante["edad"] >= 5 and estudiante["edad"] <= 7:
            estudiante["bodega"] = "la parte media de la bodega"
        elif estudiante["edad"] > 7:
            estudiante["bodega"] = "La parte alta de la bodega"
    return estudiantes

# funcion para imprimir la bodega correspondiente a cada estudiante
def imprimirEstudiantes(estudiantes):
    for estudiante in estudiantes:
        print("El estudiante", estudiante["nombre"], "con", estudiante["edad"], "años tendrá sus juguetes en", estudiante["bodega"])
        
# llamada a la funcion asignarBodega
estudiantes = asignarBodega(estudiantes)

# llamada a la funcion imprimirEstudiantes
imprimirEstudiantes(estudiantes)

RESULTADO EN CONSOLA

<?php

function arbolEnteroIcons(int $longitud):void {
$espaciosEnBlanco = $longitud;
echo str_repeat(" ", $espaciosEnBlanco) . “⭐ \n”;

# Hojas
for ($i=1; $i <= $longitud; $i++) { 
  echo str_repeat(" ", $espaciosEnBlanco);
  echo str_repeat("🌳", $i) . "\n";
  $espaciosEnBlanco--;
}

# Base del árbol
echo str_repeat(" ", ceil($longitud/2));
echo str_repeat("💼", floor($longitud/2 + 1));

}

echo "¿De qué longitud quieres el arbolito? ";
fscanf(STDIN, “%d”, $longitud); //input por consola

echo arbolEnteroIcons($longitud);
?>

<?php

$edades = [
4,
5,
7,
10,
‘undefined age’
];

function espacios_correspondientes_en_la_bodega (array $edades) {
for ($i = 0; $i < count($edades); $i++) {
if(is_int($edades[$i])) {
if ($edades[$i] < 5) {
echo “.\n guarde sus juguetes en la parte inferior de la bodega.\n”;
} elseif ($edades[$i] >= 5 && $edades[$i] <= 7) {
echo “\nguarde sus juguetes en la parte media de la bodega.\n”;
} else {
echo “\nguarde sus juguetes en la parte alta de la bodega.\n”;
}
} else {
echo “\nguarde sus juguetes en la bodega de al lado.\n”;
}
}
}

espacios_correspondientes_en_la_bodega ($edades);
?>

Para quienes lo buscan muy sencillo

Ejercicio 1

$edades = 0; // se tiene que cambiar el numero para ver los resultados


    if($edades >= 1 and $edades <= 4){
        echo('Te toca la parte baja de la bodega');
    };     
   if ($edades >= 5 and $edades <= 7){
        echo('Te toca la parte media de la bodega');
    };
    if($edades >= 8){
        echo('Te toca la parte alta de la bodega');
    };
    if($edades == false){
        echo('Te toca la parte de a lado de la bodega');
    };

Ejercicio 2

$cantidad = 10; // Se tiene que cambiar el numero para ver los resultados

for ($i=1; $i<=$cantidad; $i++) {
 for ($j=1; $j<=$i; $j++) { 
    echo("*");
 }
 echo("\n");
}
//Declaramos nuestros inputs (lista de edades)
$arrayOfAges = array(5, 6, 7, 4, 10);

//Trabajamos el proceso con una estructura condicional if/else y un ciclo foreach dentro de una función

function orderAges($array) {

    foreach ($array as $age) {
        if( $age < 5 ) {

            echo "El estudiante con $age años tendrá sus juguetes en la parte inferior de la bodega. \n";

        } else if ( $age >= 5 || $age <= 7  ) {

            echo "El estudiante con $age años tendrá sus juguetes en la parte media de la bodega \n";

        } else {
            echo "El estudiante con $age años tendrá sus juguetes en la parte alta de la bodega. \n";
        };
    };
};

orderAges($arrayOfAges);

reto: medio arbolito hecho con *

<?php

$altura_arbolito = readline("ingresa la altura (cantidad de filas) que tendra del arbolito: ");

$filas=0;

while($filas < $altura_arbolito){
    
    for($i = 0;$i <= $filas; $i++){
        echo "*";
    }    
    $filas++;
    echo "\n";
}
?>

reto: guardar juguete en bodega segun edad

<?php

/* apoyandome en la frase  "Nunca pares de aprender", no hay restriccion de edad para el estudiante que quiere guardar el juguete en la bodega.
*/
$edad_estudiante = readline("escribe la edad del estudiante: ");

if(!empty($edad_estudiante)){

    if(is_numeric($edad_estudiante)){

    
    
        $edad = (int)$edad_estudiante;

        if($edad < 5)
            echo "almacenar juguete en la parte baja de la bodega";

        else if((4< $edad) && ($edad<7))
            echo "almcenar juguete en la parte media de la bodega";

        else 
            echo "almacenar juguete en la parte alta de la bodega";

    }else
    echo "escriba la edad como numero \n";
    

    
}
else
    echo "edad del estudiante no definida, almacenar juguete en la bodega de al lado";
echo "\n";
?>

Mi solución, a los retos;
Con una condición…

function almacenarJuguetesAlmacen ($edades) {
    foreach ($edades as $edad) {
        if ($edad >= 2 && $edad < 5)
            echo "El estudiante con $edad años tendrá sus juguetes en la parte inferior de la bodega." . PHP_EOL;
        elseif ($edad >= 5 && $edad <= 7)
            echo "El estudiante con $edad años tendrá sus juguetes en la parte media de la bodega.". PHP_EOL;
        elseif ($edad > 7 && $edad <= 10 )
            echo "El estudiante con $edad años tendrá sus juguetes en la parte alta de la bodega.". PHP_EOL;
        else
            echo 'Edad  no registrada, tendrán un espacio de almacenamiento en la bodega de al lado'. PHP_EOL;
    }
}

$edades = array (4, 10, 6, 15);
almacenarJuguetesAlmacen($edades);

Medio árbol de Navidad:

function dibujarMedioArbol ($altura) {
    $asterisco = '*';
    for ($i=0; $i < $altura; $i++) { 
        echo $asterisco . PHP_EOL;
        $asterisco .= '*';
    }
}
dibujarMedioArbol(6);
<?php

function arbol($pisos){
    for ($i=0; $i < $pisos; $i++) { 
        for ($j=0; $j <= $i; $j++) { 
            echo "*";
        }
        echo "\n";
    }
}

arbol(10);

?>

Ejercicio 1:

<?php

do {
    echo "Ingresa tu edad para saber donde acomodar tus juguetes o 0 para salir:  ";
    fscanf(STDIN, "%d", $valor);


    almacenandoJuguetes($valor);
} while ($valor != 0);



function almacenandoJuguetes($edad)
{
    if ($edad < 0) {
        echo "No es una edad válida, favor de escibir un dato válido.";
    } else {
        switch ($edad) {
            case ($edad < 5):
                echo "El estudiante con " . $edad . " años tendrá sus juguetes en la parte inferior de la bodega.";
                break;

            case ($edad > 5 and $edad < 7):
                echo "El estudiante con " . $edad . " años tendrá sus juguetes en la parte media de la bodega.";
                break;

            case ($edad > 7):
                echo "El estudiante con " . $edad . " años tendrá sus juguetes en la parte alta de la bodega.";
                break;

            default:
                echo "El estudiante no ha especificado su edad, sin embargo tendrá sus juguetes en la bodega de al lado";
                break;
        }
    }
}

ejercicio 2:

<?php

for ($i=1; $i < 10 ; $i++) { 
    for ($j=0; $j <= $i-1; $j++) { 
        echo "*";
    }
    echo "\n";
}
<?php

$edad=$_POST['edad'];

$arbolito=$_POST['arbolito'];

    
    switch ($edad) {
        case $edad <= 5:
            print_r("el estudiante con ".$edad." años tendra un espacio en la parte inferior de la bodega");
            break;

        case $edad >5 and $edad <=7:
             print_r("el estudiante con ".$edad." años tendra un espacio en la parte media de la bodega");
             break;

        case $edad >7 and $edad <=12:
             print_r("el estudiante con ".$edad." años tendra un espacio en la parte alta de la bodega");
             break;
        
        default:
           print_r("no hay registro de su edad ".$edad." años, tendra un espacio en la siguiente bodega" );
            break;
    }

    echo"<br>";
    echo"<br>";
    echo"<br>";

    for ($i=1; $i <=$arbolito; $i++) { 
        for ($j=1; $j <=$i; $j++) { 
            echo"*";
        }
        echo"<br>";
    }

    
?>

<?php
$num_aster=readline(“Digite altura del Arbolito”);
for ($i=0; $i <= $num_aster; $i++) {
echo str_repeat(’*’,$i) . “\n”;
}
?>

<?php
$array_edades = [1, 2, 3, 4, 5, 5, 6, 1, 3, 9, 0, 10, 11, 3, 0, 4];

foreach ($array_edades as $value) {

switch (true) {
    case ($value > 0 && $value < 5):
        echo " El estudiante con $value años tendrá sus juguetes en la parte 
        Inferior de la bodega.\n";
        break;
    case ($value >= 5 && $value <= 7):
        echo " El estudiante con $value años tendrá sus juguetes en la 
            parte Media de la bodega.\n";
        break;
    case ($value > 7):
            echo " El estudiante con $value años tendrá sus juguetes en la 
                parte Alta de la bodega.\n";
            break;    
    case ($value == 0):
        echo " El estudiante con $value años tendrá sus juguetes en la 
        bodega de alado.\n";
        break;
}

}

?>

Buen día,

Adjunto mi código, utilice el mismo $_REQUEST de la clase anterior, solo para obtener el dato desde el html, ese mismo dato lo use en edad y en el tamaño del arbol.

<?php


$dato = $_REQUEST;

//print_r($dato);

$datoEdad = $dato['Nombre'];
$datoArbol = (int) $dato['Nombre'];

//ejercicios de practica

//edades

echo "Pintando las edades" . "<br>";
$lista_edades = [6,2,4,null,$datoEdad];

foreach($lista_edades as $edad) {
    if($edad > 0 && $edad < 5)
        echo "El estudiante tiene $edad y tendrá sus juguetes almacenados en la parte inferior de la bodega" . "<br>";
    else if($edad >= 5 && $edad <= 7)
        echo "El estudiante tiene $edad y tendrá sus juguetes almacenados en la parte media de la bodega" . "<br>";
    else if($edad > 7)
        echo "El estudiante tiene $edad y tendrá sus juguetes almacenados en la parte superior de la bodega" . "<br>";
    else
        echo "Quienes no tengan registro de edad tendran un espacio de almacenamiento en la bodega de al lado" . "<br>";
}

//Arbolito
echo "Pintando el arbol" . "<br>";
for($i=1; $i <= $datoArbol; $i++) {
    echo str_repeat("*",$i) . "<br>";
}
function mostrar() {
        $edades = array(2,3,6,8,10,19);
        foreach ($edades as $value) {
            # code...
            if ($value < 5) {
                echo "El estudiante con ".$value." años tendrá sus juguetes en la parte inferior de la bodega.\n";
            } else if ($edades < 7) {
                echo "El estudiante con ".$value." años tendrá sus juguetes en la parte inferior de la bodega.\n";
            } else if ($edades > 7) {
                echo "El estudiante con ".$value." años tendrá sus juguetes en la parte inferior de la bodega.\n";
            } else {
                echo "El estudiante con ".$value." años tendrá sus juguetes en la parte inferior de la bodega.\n";
            }
        }
    }
    
    mostrar();

Aquí va mi código, donde puedes ingresar la edad del niño para saber qué lugar le corresponde:

<?php

function almacenamiento_por_edades($edad){

    if ($edad < 5) {
        echo "Ninos que tienen menos de 5 anos almacenan sus juguetes en la parte inferior de la bodega";

    } else if ($edad >= 5 && $edad <= 7) {
        echo "Ninos que tienen entre 5 y 7 anos almacenan sus juguetes en la parte media de la bodega";

    } else if ($edad > 7) {
        echo "Ninos que tienen mas de 7 anos almacenan sus juguetes en la parte alta de la bodega";
    } else {
        echo "Ninos sin regristro de edad almacenan sus juguetes en la otra bodega";
    }
    
}

$ingrese_edad = (int) readline ("Ingrese la edad del nino, para saber el lugar correspondiente de almacenaje: ");
almacenamiento_por_edades($ingrese_edad);

echo "\n";

Lista de niños

<?php

//niños

$Estudiante = readline("Agrega tu edad: ");

if ($Estudiante > 7){
echo “Tu eres mayor de 7, tu espacio sera en la parte alta de la bodega”;
} else if ($Estudiante <5 and $Estudiante > 1){
echo “Tu eres menor de 5, tu espacio seran en la parte inferior de la bodega”;
} else if ($Estudiante >= 5 && $Estudiante <7){
echo “Tu edad esta entre 5 y 7, tu espacio sera en la parte media de la bodega”;
} else {
echo “No tienes registro de edad pero hay un espacio para ti en la bodega de al lado”;
}

arbolito

$cantidad = readline ("Cuantos pisos quieres que tenga el arbolito: ");

for ($p=0;$p<$cantidad; $p++){
echo str_repeat("*",$p)."\n";

}

?>

<?php
$acc = "*";
for($i=0;$i<=5;$i++){
    echo $acc . "\n";
    $acc = $acc . "*";
}
<?php
//Medio árbol de Navidad
    $num = readline("Indicate Height: ");
    for ($i = 0; $i < $num; $i++) {
        echo str_repeat("*", $i)."\n";
    }
<?php
//Con una condición…
    $age = readline("What's your age?: ");
    if (!$age) return print_r("Your age is not registered it will be in the cellar next door");
    if ($age <= 5) {
        echo "The student with $age years will have their toys in the lower part of the cellar.";
    } elseif ($age > 5 and $age <= 7) {
        echo "The student with $age years will have their toys in the middle part of the cellar.";
    } elseif ($age > 7) {
        echo "The student with $age years will have their toys in the upper part of the cellar.";
    }

SOLUCION 1ER EJERCICIO CON $_POST

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>RETOS CON PHP</title>
</head>
<body>

    <form action="reto1AlmacenajeToy.php" method="post">
        <input type="text" name="edad">
        <input type="submit" value="Enviar">
    </form>
    
</body>
</html>

PHP

<?php 

 
   $inputEdad=(int)$_POST['edad']; 
   

function almacenamientoJuguetesEscolares ($edad){

    if ($edad < 5 && $edad >0){
         echo"El estudiante con"." ". $edad. " "."años tendrá sus juguetes en la parte inferior de la bodega.";
    
    }
    
    else if ($edad == 5 || $edad == 6 || $edad == 7){
         echo"El estudiante con"." ". $edad. " "."años tendrá sus juguetes en la parte media de la bodega.";
    
    }else if ($edad > 7){
         echo"El estudiante con" ." ". $edad. " "."años tendrá sus juguetes en la parte alta de la bodega.";
    
    }else{   
         echo"No tiene registro de edad,  asi que tendrá un espacio de almacenamiento en la bodega de al lado.";
    
      } 
    }

    almacenamientoJuguetesEscolares ($inputEdad);

    


?>

🐘 El de los niños estuvo fácil:

<?php

// Vamos a generar 10 edades de niños de forma aleatoria

$edades = array();

for ($i = 0; $i < 10; $i++) {
  array_push($edades, rand(1, 10));
}

// vamos a clasificar los niños

for ($j = 0; $j < count($edades); $j++) {
  if ($edades[$j] < 5) {
    echo "El estudiante con $edades[$j] años tendrá sus juguetes en la parte inferior de la bodega.";
  } else if ($edades[$j] > 7) {
    echo "En estudiante con $edades[$j] años tendrá sus juguetes en la parte alta de la bodega.";
  } else if ($edades[$j] >= 5 && $edades[$j] <= 7) {
    echo "El estudiante con $edades[$j] años tendrá sus juguetes en la parte media de la bodega.";
  } else {
    echo "El estudiante sin años registrados tendra sus juguetes en la bodega de a lado.";
  }
  echo "\n";
}

🎄 Este ya lo había visto en un meme de Facebook

<?php

$arbolito = "*";

for ($i=0; $i < 10; $i++) {
  echo $arbolito . "\n";
  $arbolito = $arbolito . "*";
}
<?php
//medio arbol de navidad con *
function christmasTree($cant){

    for ($i=0; $i <= $cant; $i++) { 
    echo str_repeat("*", $i) . "\n";
    }

}
    
$number = readline("Por favor ingrese la cantidad de rengloneas que tendra el arbol de navidad ",);

christmasTree($number);
?>
<?php

//llenar por entrada de teclado un arreglo
$kids = readline("Por favor, ingresa la cantidad de niños que desas saber su edades ",);
$n = [];

for ($i=0; $i < $kids ; $i++) { 

    $numbers = readline( "Por favor, ingrese 5 edades diferentes de los niños ", );
    array_push($n, $numbers);
}

//var_dump($n);

foreach ($n as $valor) {
    //echo $valor . "\n";

    if($valor < 5 ){
        echo "El estudiante tendrá sus juguetes en la parte inferior de la bodega por que tiene $valor años \n";
    } else if($valor >= 5 && $valor <= 7 ){

            echo "El estudiante tendrá sus juguetes en la parte media de la bodega por que tiene $valor años \n";
        }
    else if($valor > 7 && $valor <= 18){
        
            echo "El estudiante tendrá sus juguetes en la parte alta de la bodega por que tiene $valor años \n";
    
    }
    else if($valor >18){
        echo "No se tiene registro de su edad o su edad no corresponde a la de un niño, sin embargo tendra un espacio de almacenamiento en la bodega de al lado \n";
    };
}

?>
<?php

    function altura($pisos) {
        for ($i = 0; $i < $pisos; $i++){
            echo str_repeat("*", $i) . "\n";
        }
    }
    $dato = readline("ingrese el numero de pisos del arbol :");
    altura($dato);
    
?>
<?php
//Reto medio arbol de navidad con altura dinámica
$altura= readline('Ingresa altura arbol: ');
$rama="*";

for($i=1;$i<=$altura;$i++){
    echo str_repeat($rama, $i);
    echo "\n";
}
?>

<?php

function lugar_almacenamiento($nombres,$edad)
{
if ($edad>=0 && $edad<=4) {
echo"$nombres los estudiantes hasta los 4 años, tienen como espacio para almacenar, la parte inferior de la bodega.";
}elseif ($edad>=5 && $edad<=7) {
echo"$nombres los estudiantes entre 5 y 7 años, tienen como espacio para almacenar, la parte media de la bodega.";
}elseif ($edad>7) {
echo"$nombres los estudiantes mayores a los 7 años, tienen como espacio para almacenar, la parte superior de la bodega.";
} elseif($edad=="") {
echo"$nombres Los estudiantes que no tengan registro de edad, tienen como espacio para almacenar, la bodega del lado.";
}elseif ($edad<0) {
echo"$nombres, las edades deben ser en nuemros positivos.";
}
}

lugar_almacenamiento(“Pepito Perez”,5);

?>

No se si así se cumple lo que pedía el ejercicio.

<?php

function arbol($altura) {
for ($i=1; $i<=$altura; $i++) {
for($j=1; $j<=$i-1; $j++){
echo “";
}
echo "
\n”;
}
}
$altura = readline("¿De qué longitud requiere el arbol? ");
echo arbol($altura);
?>

<?php

for ($i=0; $i <= 10; $i++) {
echo str_repeat("*", $i);
echo “<br>”;
}

<!DOCTYPE html>
<html lang=“en”>
<head>
<meta charset=“UTF-8”>
<meta http-equiv=“X-UA-Compatible” content=“IE=edge”>
<meta name=“viewport” content=“width=device-width, initial-scale=1.0”>
<title>Formulario</title>
</head>
<body>
<form method=“post”>
<input type=“number” name=“edad” placeholder=“Ingrese su edad”>
<input type=“submit” name=“Enviar”>
</form>
</body>
</html>

<?php

if (isset($_POST[‘Enviar’])){
$edad = $_POST[‘edad’];
if ($edad== “”){
echo “Tendrán un espacio de almacenamiento en la bodega de al lado”;
} elseif ($edad < 5){
echo “Los juguetes del estudiante con " .$edad. " años se almacenan en los espacios en la parte inferior de la bodega”;
} elseif (($edad >= 5) && ($edad <= 7)){
echo “Los juguetes del estudiante con " .$edad. " se almacenan en los espacios en la parte media de la bodega”;
} elseif ($edad > 7){
echo “Los juguetes del estudiante con " .$edad. " sus juguetes se almacenan en la parte alta de la bodega”;
}

}
?>

Problema 2

<
$numero=readline("Ingrese el numero de asteriscos deseados: ");

for ($i=1; $i<=$numero ; $i++) { 
   
   for ($e=0; $e <$i ; $e++) { 
        echo "*";
        if($e==($i-1)){
            echo "\n";
        }
   }
}
> 

mi aporte para el primer ejercicio
(

mi aporte para el segundo ejercicio: Arbolito

Aquí esta mi código

<?php
    $alumnos = array(
        "Jorge" => 5,
        "Jessica" => 4,
        "Edgar" => 7,
        "Nacho" => 8,
        "Lugo" => 0,
    );

    foreach($alumnos as $alumno => $edad){
        echo "$alumno con $edad años tendrá sus juguetes en la ";

        if($edad < 5 && $edad != 0){
            echo "parte inferior de la bodega";
        }elseif($edad>=5 && $edad < 7){
            echo "parte media de la bodega";
        }elseif($edad>=7){
            echo "parte alta de la bodega";
        }elseif(!$edad){
            echo "bodega de al lado";
        }

        echo "\n\n";
    }
?>

reto 1

<?php

function edadpillin($edad){

    if($edad <5){
        echo "El estudiane con" . ' ' . $edad .' '. "Tendrán sus espacios en la parte inferior de la bodega.".PHP_EOL;
    }elseif($edad >5 && $edad < 7){
        echo "El estudiane con" . ' ' . $edad .' '."Tendrán sus espacios en la parte media de la bodega.".PHP_EOL;
    }elseif($edad > 7 ){
        echo "El estudiane con" . ' ' . $edad .' '."Tendrán sus espacios en la parte alta de la bodega".PHP_EOL;
    }else
        echo "Tendrán un espacio de almacenamiento en la bodega de al lado.".PHP_EOL;
}
//pasamos los parametros a la funcion 
edadpillin(4);
edadpillin(6);
edadpillin(10);

?>

reto 2

<?

function arbolito($altura) {
    for ($i = 0; $i < $altura; $i++) {
        echo str_repeat("*", $i) . PHP_EOL;
    }
}

arbolito(10);

?>

Reto 1:

<?php
    $estudiante = [
        "Antonio"=> 9,"José"=> 3,"Manuel"=> 7,"Francisco"=> 6,
        "David"=> 5,"Juan"=> 8,"José Antonio"=> 6,"Javier"=> 5,
        "Daniel"=> 8,"José Luis"=> 5,"Francisco Javier"=> 7,
        "Luis"=> null,
    ];

    
    foreach($estudiante as $estudiante => $edad){
        echo obtener_mensaje($estudiante, $edad);
        echo PHP_EOL;
    }

    function obtener_mensaje($nombre, $edad){
        $mensaje_final = "El estudiante $nombre con " . ($edad ?? "N/A") . " años tendrá sus juguetes en la";
        $parte_bodega = "";

        if($edad < 5) $parte_bodega = "parte inferior de la bodega.";
        
        else if($edad >= 5 && $edad <= 7) $parte_bodega = "parte media de la bodega.";
        
        else if($edad > 7) $parte_bodega = "parte alta de la bodega.";
        
        else $parte_bodega = "bodega de al lado";

        return $mensaje_final . " " . $parte_bodega;
    }
?>

Reto 2:

<?php

//Solitar dato
//validar dato
//si no es valid, volver a solicitar hasta que sea valido
//si es valido proseguir
//tener simbolo base y iterar n veces - 1 concatenando un simbolo por cada iteración!

$nivel_arbol = readline("¿Cuántos niveles tendrá su medio arbol de navidad?: ");
$linea = "";
echo "\n=== Imprimiendo arbol de $nivel_arbol niveles ===\n";
for( $i = 1; $i <= $nivel_arbol; $i++){
    $linea .= "*";
    echo "$linea\n";
}
?>

ejercicio 1

<?php

$alumnoEdad = array(3,4,5,6,7,8,“undefined”);

for($i=0; $i < count($alumnoEdad); $i++){
if($alumnoEdad[$i] < 5){
echo “tendrán sus espacios en la parte inferior de la bodega”;
echo “\n”;
}
if($alumnoEdad[$i] >= 5 && $alumnoEdad[$i] < 7){
echo “tendrán sus espacios en la parte media de la bodega.”;
echo “\n”;
}
if($alumnoEdad[$i] > 7){
echo “tendrán sus espacios en la parte alta de la bodega.”;
echo “\n”;
}
if($alumnoEdad[$i] == “undefined”){
echo “espacio de almacenamiento en la bodega de al lado.”;
echo “\n”;
}
}

?>

ejercicio2

<?php

function arbol($tamaño){
$asterisco = ‘’;
for($i=0; $i < $tamaño; $i++){
$asterisco .= “*”;
echo $asterisco;
echo “\n”;
}
}

arbol(10);

?>

Aqui mi arbolito!!

<?php

// Árbol de navidad
$rows = 7;

for ($i=0,$body='*'; $i < $rows; $i++,$body.='*') { 
    echo $body."\n";
}

respuesta:

<?php
// regalos
$años= readline("La edad del niño es: ");

if ($años<=5) {
    $parte= "inferior";
    echo"El estudiante con $años años tendrá sus juguetes en la parte $parte de la bodega.";
}
elseif ($años>5 && $años<=7) {
    $parte= "media";
    echo"El estudiante con $años años tendrá sus juguetes en la parte $parte de la bodega."; 
}
elseif ($años>7 && $años<18) {
    $parte= "alta";
    echo"El estudiante con $años años tendrá sus juguetes en la parte $parte de la bodega.";
}
else  echo"El estudiante con $años años tendrá sus juguetes en la otra bodega.";

//medio arbol
$arbol="*";

$pisos=readline("De cuantos pisos quiere el arbol: ");

for ($i=0; $i <$pisos ; $i++) { 
    echo str_repeat($arbol, $i)."\n";
}

?>