• Viernes 15 de Noviembre de 2024, 02:23

Autor Tema:  Piramide Pascal  (Leído 2531 veces)

pegui

  • Nuevo Miembro
  • *
  • Mensajes: 8
    • Ver Perfil
Piramide Pascal
« en: Miércoles 25 de Junio de 2008, 11:10 »
0
Hola a todos, Necesito ayuda porque tengo que hacer un programilla en pascal que por medio de bucles anidados, “mientras” me construya una pirámide de dígitos como la imagen de abajo, de tal manera que el número de líneas de la pirámide está dado por un número introducido por teclado.

                              1
                            010
                          10101
                        0101010
                      101010101
                    01010101010

Necisito que alguien me ayude sobre cual es la condiccion a poner en el while, porque no consigo dar con ello.
Gracias.

PROCEDURE piramide ()
VAR
     Numero:Integer;
BEGIN
     Write('Introduce un Número por teclado:');
     Read(Numero);
     WHILE ( ) DO

END;

Enko

  • Miembro de PLATA
  • *****
  • Mensajes: 1562
  • Nacionalidad: 00
    • Ver Perfil
Re: Piramide Pascal
« Respuesta #1 en: Miércoles 25 de Junio de 2008, 15:00 »
0
si el numero que lees es la altura de la piramide, entonces>
Código: Text
  1.  
  2. while i <= Numero do
  3. begin
  4.    for j:=1 to i do
  5.    begin
  6.        //aqui escribes los ceros o los unos.
  7.    end;
  8.    i := i + 1;
  9. end;
  10.  
  11.  

Saludos

pegui

  • Nuevo Miembro
  • *
  • Mensajes: 8
    • Ver Perfil
Re: Piramide Pascal
« Respuesta #2 en: Sábado 28 de Junio de 2008, 02:28 »
0
En la solucíon que me has dado, como meto los unos y los ceros porque dependen del número que me metan.
si me meten un 1 solo muestro un 1, pero si me meten un 2 tengo que mostrar:
1
010
entonces nunca se lo que tengo que mostrar depende del numero introducido.Como hago????

Enko

  • Miembro de PLATA
  • *****
  • Mensajes: 1562
  • Nacionalidad: 00
    • Ver Perfil
Re: Piramide Pascal
« Respuesta #3 en: Sábado 28 de Junio de 2008, 04:07 »
0
Es cuestion de tener una variable booleana e ir cambiando su valor entre verdadero o falso cada vez que  escribes un 1 o un 0.
Código: Text
  1.  
  2. var
  3.    b: boolean;
  4. begin
  5. ................
  6. if b then
  7.     Write('1')
  8. else
  9.     Write('0');
  10. end;
  11. b := not b;
  12.  
  13.  
Saludos