Piràmide
Codi font
<!doctype html>
<html lang="ca">
<head>
<meta charset="UTF-8">
<title>ex11</title>
</head>
<body>
<h1> Piràmide </h1>
<form method="POST">
<label>Caràcter:</label>
<input type="text" name="caracter" maxlength="1" value="<?php echo isset($_POST["caracter"]) ? $_POST["caracter"] : ""; ?>" >
<br><br>
<label>Número de files:</label>
<input type="number" name="numFiles" value="<?php echo isset($_POST["numFiles"]) ? $_POST["numFiles"] : ""; ?>" >
<br><br>
<input type="submit" value="Generar">
</form>
<?php
/*
A partir de l'exercici anterior, fent servir el mètode POST,
fem un formulari on l'usuari pot indicar el caràcter
que vol mostrar i el nombre de files de la piràmide.
*/
// Comprovem que s'hagin enviat les dues dades del formulari
if (isset($_POST["caracter"]) && isset($_POST["numFiles"])) {
// Espai buit en HTML
$espai = " ";
// Agafem el caràcter introduït per l'usuari
// i li afegim un espai al davant
$caracter = $espai . $_POST["caracter"];
// Agafem el nombre de files introduït per l'usuari
$numFiles = $_POST["numFiles"];
// Aquest bucle controla cada fila de la piràmide
for ($i = 1; $i <= $numFiles; $i++) {
// Espais abans dels caràcters
/*
Fila 1 → numFiles - 1 espais
Fila 2 → numFiles - 2 espais
Fila 3 → numFiles - 3 espais
...
Última fila → 0 espais
*/
for ($pos = $i; $pos < $numFiles; $pos++) {
echo $espai;
}
// Caràcters de cada fila
/*
El nombre de repeticions depèn del valor de $i.
Fila 1 → 1 caràcter
Fila 2 → 2 caràcters
Fila 3 → 3 caràcters
...
*/
for ($pos = 1; $pos <= $i; $pos++) {
echo $caracter;
}
// Salt de línia per començar la fila següent
echo "<br>";
}
}
?>
<h2> Codi font </h2>
<?php
show_source("ej11.php");
?>
</body>
</html>