Foros del Web » Programando para Internet » PHP »

Generar tabla html

Estas en el tema de Generar tabla html en el foro de PHP en Foros del Web. Hola recién me estoy iniciando en el lenguaje de programación y en concreto con php, llevo un par de horas atrancado en un ejercicio y ...
  #1 (permalink)  
Antiguo 14/10/2013, 10:01
 
Fecha de Ingreso: octubre-2013
Ubicación: Castellón de la Plana
Mensajes: 9
Antigüedad: 10 años, 6 meses
Puntos: 0
Generar tabla html

Hola recién me estoy iniciando en el lenguaje de programación y en concreto con php, llevo un par de horas atrancado en un ejercicio y no consigo encontrar la solución..

El ejercicio consiste en generar una tabla html que tiene los números del 1 al 10, que serán los divisores. Horizontalmente tengo 10 números a partir del número primo 23, que serán, los dividendos.

Se trata de rellenar la tabla con un asterisco (*) en la intersección de los números
en el caso de ser divisible, en caso contrario se rellenará con un guión (-).

Aquí esta la tabla:




He intentado generar la tabla mediante el bucle for, este es mi código php:



Obtengo el siguiente resultado:




Pues bien las filas se repiten y según la captura que muestro no se deberían de repetir ya que aquí van los simbolos "*" o "-" según sea divisibles o no es decir el resto % es 0. A ver si alguien me puede dar alguna sugerencia o pista ...

Gracias de antemano ..


Saludos .
  #2 (permalink)  
Antiguo 14/10/2013, 11:28
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: Generar tabla html

Bienvenido al foro.

Si imprimes los números dentro del bucle tr es obvio que se te van a repetir los números, debe ser por fuera. Ya que tienes toda la idea del ejercicio te lo dejo para que lo mejores:

Código PHP:
Ver original
  1. <table border="1">
  2. <tr>
  3. <td>/</td>
  4. <?php
  5. for ($tds = 23; $tds <= 33; $tds++) {
  6.     echo "<td>$tds</td>" . PHP_EOL;
  7. }
  8. ?>
  9. </tr>
  10. <?php
  11. for ($tr=1; $tr <= 10; $tr++) {
  12.     echo '<tr>' . PHP_EOL;
  13.     echo "<td>$tr</td>" . PHP_EOL;
  14.     for ($td = 23; $td <= 33; $td++) {
  15.         if($td % $tr == 0) {
  16.             echo '<td>*</td>' . PHP_EOL;
  17.         } else {
  18.             echo '<td>-</td>' . PHP_EOL;
  19.         }
  20.     }
  21.     echo '</tr>' . PHP_EOL;
  22. }
  23. ?>
  24. </table>

PD: PHP_EOL lo uso para que se vea ordenado el código fuente.

Saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #3 (permalink)  
Antiguo 14/10/2013, 14:42
 
Fecha de Ingreso: octubre-2013
Ubicación: Castellón de la Plana
Mensajes: 9
Antigüedad: 10 años, 6 meses
Puntos: 0
Respuesta: Generar tabla html

Muchas gracias, Compañero.

Gracias a tu ayuda conseguí resolver el ejercicio e incluso logre poner el color rojo y azul a la tabla ..

Saludos ...

Etiquetas: html, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:13.