PHP - Algoritmo que lea un número entero (lado) y a partir de él cree un cuadrado de asteriscos

 
Vista:
sin imagen de perfil
Val: 80
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Algoritmo que lea un número entero (lado) y a partir de él cree un cuadrado de asteriscos

Publicado por Alejandro (37 intervenciones) el 06/04/2020 21:35:13
Algoritmo que lea un número entero (lado) y a partir de él cree un cuadrado de asteriscos con ese tamaño. Los asteriscos sólo se verán en el borde del cuadrado, no en el interior.
Ejemplo, para lado = 4 escribiría:
1
2
3
4
****
*  *
*  *
****

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
if (isset($_POST['env'])){
  $num=$_POST['h'];
  for ($i=0; $i < $num ; $i++) {
    echo "*";
  }echo "<br>";
  for ($i=0; $i < $num-2 ; $i++) {
    echo "*";
    for ($j=0; $j < $num-2 ; $j++) {
      echo " ";
    }
    echo "*";
    echo "<br>";
  }
  for ($i=0; $i < $num ; $i++) {
    echo "*";
  }
}
?>
 
<form method="post" action="pract5.php">
<label>Escribe un número entero: </label>&nbsp;
<input type="text" name="h">
&nbsp;&nbsp;
<input type="submit" name="env" value="enviar">
</form>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 80
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Algoritmo que lea un número entero (lado) y a partir de él cree un cuadrado de asteriscos

Publicado por Alejandro (37 intervenciones) el 07/04/2020 13:58:19
Tiene que ser sin una función...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Algoritmo que lea un número entero (lado) y a partir de él cree un cuadrado de asteriscos

Publicado por joel (1269 intervenciones) el 07/04/2020 11:00:45
Haber si te sirve así:
1
2
3
4
5
6
7
8
9
10
11
$num=$_POST['h'];
 
echo "<pre>";
echo "<br>";
echo str_repeat("*", $num);
for ($i=0; $i<$num-2; $i++) {
    echo "<br>*".str_repeat(" ", $num-2)."*";
}
echo "<br>";
echo str_repeat("*", $num);
echo "</pre>";
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 80
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Algoritmo que lea un número entero (lado) y a partir de él cree un cuadrado de asteriscos

Publicado por Alejandro (37 intervenciones) el 07/04/2020 13:57:19
¿Me podrías ayudar sin una función? Es que todavía no he dado las funciones... Sería una cosa así, el problema es que me sale solo un espacio en blanco y deben de ser dos:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
if (isset($_POST['env'])){
  $num=$_POST['h'];
  for ($i=0; $i < $num ; $i++) {
    echo "*";
  }echo "<br>";
  for ($i=0; $i < $num-2 ; $i++) {
    echo "*";
    for ($j=0; $j < $num-2 ; $j++) {
      echo " ";
    }
    echo "*";
    echo "<br>";
  }
  for ($i=0; $i < $num ; $i++) {
    echo "*";
  }
}
?>
 
<form method="post" action="pract5.php">
<label>Escribe un número entero: </label>&nbsp;
<input type="text" name="h">
&nbsp;&nbsp;
<input type="submit" name="env" value="enviar">
</form>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Algoritmo que lea un número entero (lado) y a partir de él cree un cuadrado de asteriscos

Publicado por joel (1269 intervenciones) el 07/04/2020 16:49:50
Cuando dices funciones te refieres a str_repeat()?

En html mas de un espacio, lo muestra como uno solo... para mostrar mas de un espacio, puedes hacerlo de dos maneras...

1.- cambiando el espacio por &nbsp;
2.- poniendo el código entre los tags <pre>

Cambia la linea 10:
1
echo " ";
por esto:
1
echo "&nbsp;";
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 80
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Algoritmo que lea un número entero (lado) y a partir de él cree un cuadrado de asteriscos

Publicado por Alejandro (37 intervenciones) el 07/04/2020 17:33:56
Muchas gracias, lo probaré.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar