PDA

Ver la Versión Completa : Ayuda...algoritmo para triangulo de pascal



gabo2504
04/05/2005, 21:41
Hola....... necesito el algoritmo en c++ para obtener el triangulo de pascal
y ke me lo imprima por filas asi
cout<<"1";
cout<<"121";
cout<<"1331";
hasta la decima fila.... agradezco mucho al ke me ayude....

Thanatos
05/05/2005, 04:08
Hola gabo2504:

Este código que escribí, genera los valores hasta la fila que tu le indiques.


#include <iostream.h>
#include <stdlib.h>

void main()

{
int lim,triang[200][200],L,C;
printf ("Ingrese el límite de filas: ");
scanf ("%i",&lim);
system ("cls");
for (L=0; (L<lim); L++)
{
for (C=0; (C<=L); C++)
{
if ((C==0) || (L==C))
{
triang[L][C]=1;
}
else
{
triang[L][C]=triang[L-1][C]+triang[L-1][C-1];
}
}
}
for (L=0; (L<lim); L++)
{
for (C=0; (C<=L); C++)
{
printf ("%i ",triang[L][C]);
}
printf ("\n\n");
}
system ("pause");
}

Usé arreglos bidimensionales, y la asignación de espacios de memoría que utilicé fué arbitraria. Si deseas mejorar el manejo del espacio en la memoria, puedes definir el arreglo triang luego del ingreso del dato lim por parte del usuario; definiéndolo como int triang[lim][lim].
También podrías usar la fórmula del Binomio de Newton, para realizar otro programa que genere estos valores.
En caso que no estés familiarizado con printf () y scanf (), son los equivalentes de cout << y cin>>, respectivamente.

Espero haber podido ayudarte, saludos......

http://smilies.sofrayt.com/fsc/gentleman.gif

crcbad
05/05/2005, 09:28
Aqui va el código programado en C++ y probado con el Borland C++ Builder 5.5:


#include <iostream.h>
#include <conio.h>

float nfa(int b);

void main()
{
int nf, r,x=40,y=1;
float f1=0, f2=0, f3=0;

// Limpiamos Pantalla
clrscr();

cout << "hasta n terminos ===> ";
int a;

// Obtenemos el dichos valor
cin >> a;

clrscr();

// Creamos secuencia numerica
for (nf=0; nf<=a; nf++)
{
gotoxy(x,y);

for (r=0; r<=nf; r++)
{
f1 = nfa(nf);
f2 = nfa(r);
f3 = nfa(nf-r);

// Mostramos el valor segun rf/r, guardados en f1,f2,f3
cout<< f1/(f3*f2) << " ";
}

// Salto de linea
cout << "\n";
x -= 1;
y +=1;
}

cout << "By Ruben Rueda.\n\n Fin Triangulo de Pascal.";
}


// Funcion factorial segun valor dado.
float nfa(int b)
{
float fact=1;

for (int i=1; i <=b; i++)
fact *= i;

return fact;
}

Anonymous
10/09/2005, 16:42
hola sabes te pido ayuda para realizar el programa del triangulo depascal en builder 5 c++, te agradeceria si me pudieras ayudar :cry: o si me pudieras contactar con alguin que sepa por favor este es mi correo b_rrozzetti@hotmail.com o n_x_1981@hotmail.com por favo te lo agradecere mucho :D

crcbad
12/09/2005, 11:18
Y por que no intentas primero con los codigos que Thanatos y yo propusimos, y si tienes duda despues preguntas? ;)

makuko
03/09/2006, 05:55
Hola que tal compañero.............. oye, crees que puedes hacer este programa de "triangulo de pascal" pero con un arreglo unidimensional???? esque asi me lo dejaron y la verdad no se me ocurre como hacerlo