Código
package triangulopascal;
public class TrianguloPascal {
public static void main(String[] args) {
int nfilas = 10;
int[] a = new int[1];
for (int i = 1; i <= nfilas; i++) {
int[] x = new int[i];
for (int j = 0; j < i; j++) {
if (j == 0 || j == (i - 1)) {
x[j] = 1;
} else {
x[j] = a[j] + a[j - 1];
}
System.out.print(x[j] + " ");
}
a = x;
System.out.println();
}
}
}
Resultado:
run:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
BUILD SUCCESSFUL (total time: 0 seconds)
Muchas gracias por el aporte, me sirvió de mucho.
ResponderEliminarGracias me evitaste un chorro de humo que me hubiese saido del morro jejejej por sierto, el triangulito este tambien lo representan en forma de piramide, yo modifique un tantito el codigo para que se muestre así, aqui lo dejo por si a alguien mas le sirve!!
ResponderEliminarpackage triangulopascal;
/**
*
*
*/
public class TrianguloPascal {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic herepublic static void main(String[] args) {
int nfilas = 10;
int[] a = new int[1];
for (int i = 1; i <= nfilas; i++)
{
for(int k=i-5;k<=10;k++)
{
System.out.print( " ");
}
int[] x = new int[i];
for (int j = 0; j < i; j++)
{
if (j == 0 || j == (i - 1))
{
x[j] = 1;
} else
{
x[j] = a[j] + a[j - 1];
}
if(x[j]<10)
{
System.out.print(x[j] + " ");
}
else
{
if (x[j]<100)
{
System.out.print(x[j] + " ");
}
else
{
System.out.print(x[j] + " ");
}
}
}
a = x;
System.out.println();
}
}
}
Resultado:
run:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
BUILD SUCCESSFUL (total time: 0 seconds)
no se nota el formato porque blogger le quitó los espacios pero si funciona!!!
EliminarGracias por el aporte!
Eliminarhola si digamos que solamente se quiera imprimir 1 nivel ejemplo solo nivel 3 : 1 2 1 que el usuario indique el nivel que quiere y no todo el triaungulo plis ayuda
ResponderEliminarSe pone la salida dentro un "If":
Eliminarif (nfilas == 3) System.out.print(x[j] + " ");
puedes inicializar un contador y un Scanner para que te inserte el usuario la longitud de tu arreglo
Eliminarnfilas = leer .nextInt();
Eliminarhola, lo podrían poner para hacerlo en un bloc de notas? me ayudarían mucho
ResponderEliminaruna pregunta.. se puede realizar el programa, que el triangulo de pascal se imprima en una tabla Jframe ? pero realizado el proceso desde una clase (sin vectores ni matrices)
ResponderEliminarsi es que se puede .. me pueden ayudar por favor.. gracias..
Podrian hacerlo en un diagramade flujo.
ResponderEliminardonde habro esto?
ResponderEliminarScanner LeerDatosPorTeclado = new Scanner(System.in);
ResponderEliminarint opcion;
do {
int nFilas = 0;
int arreglo[] = new int[1];
System.out.println("*** TRIANGULO DE PASCAL ***");
System.out.print("Ingrese numero de filas: ");
nFilas = LeerDatosPorTeclado.nextInt();
System.out.println("\nEl triangulo de pascal es: \n");
for (int i = 1; i <= nFilas; i++) {
int pascal[] = new int[i];
for (int j = nFilas; j > i; j--) {
System.out.print(" ");
}
for (int k = 0; k < i; k++) {
if (k == 0 || k == (i - 1)) {
pascal[k] = 1;
} else {
pascal[k] = arreglo[k] + arreglo[k - 1];
}
System.out.print(pascal[k] + " ");
}
arreglo = pascal;
System.out.println();
}
System.out.println("\n\nDecea continuar?");
System.out.println("1. continuar.");
System.out.println("2. Salir. ");
System.out.print("\nIngrese una opcion: ");
opcion = LeerDatosPorTeclado.nextInt();
System.out.println("\n\n");
} while (opcion != 2);