bueno.. aver si me ayudan..
ingresar "n" cantidad de elementos numericos y ordenarlos de menor a mayor y que los muestre en forma del triangulo de pascal
ej:
1,2,3,46,6,7,8,97,88
debe salir
1
2 3
6 7 8
46 88 97
Todos esos valores los vas guardando en un array y luego podrias buscar sobre "ordenamiento burbuja" para ordenar el array. Luego con un bucle do while podrias ir incrementando el valor de una variable para iniciar un bucle for donde irian mostrandose cada vez mas items del array.
Deja siempre tu intento para que te puedan ayudar mejor..
Para el ordenamiento usa el algoritmo de burbuja, es tan sencillo recorre todo los valores en busca valores menores al anterior y vuelve a recorrer los valores...
y para mostrarlos en en forma de triangulo pascal usa un bucle sencillo, si tengo tiempo de otro rato lo tomo como un reto y
lo hago :xD
esto es como voy haciendo...
llego hasta ordenar los elementos y ponerlos en orden... pero para hacerlo en forma triangular no me sale
namespace algoritmo_burbuja
{
class burbuja_array
{
static void Main(string[] args)
{
int i, j, aux, n;
string auxn;
Console.WriteLine("ingrese cantidad de elementos");
n = int.Parse(Console.ReadLine());
Console.WriteLine("ingrese ahora los elementos");
string[] nombre = new string[10];
int[] a = new int[10];
for (i = 1; i <= n; i++)
{
// Console.WriteLine("ingrese elnombre");
// nombre = Console.ReadLine();
Console.WriteLine("ingrese nota");
a = int.Parse(Console.ReadLine());
}
for (i = 1; i <= n; i++)
{
j = n;
while (j > i)
{
if (a[j - 1] >= a[j])
{
aux = a[j - 1];
auxn = nombre[j - 1];
a[j - 1] = a[j];
nombre[j - 1] = nombre[j];
a[j] = aux;
nombre[j] = auxn;
}
j = j - 1;
}
}
for (i = 1; i <= n; i++)
{
//Console.WriteLine();
Console.WriteLine("{0}", a);
}
for (int t = 0; i < 3; t++)
{
for (int l = i; l <3; l++)
{
Console.Write(" ");
}
for (int s = 2 * i + 1; s > 0; s--)
{
Console.Write("*",a);
}
Console.WriteLine("");
Console.ReadKey();
}
verTriángulo(a);
Console.ReadKey();
}
static void verTriángulo(int N)
{
for (int n = 0; n <= N; ++n)
{
for (int i = 0; i < N - n; ++i)
Console.Write("{0,4}", "");
for (int p = 0; p <= n; ++p)
Console.Write("{0,4}{1,4}",p);
Console.WriteLine();
}
}
}
}
espero que me ayuden y gracias de antemano.
Compila bien aunquesea eso? hay cosas q pareciera q darian error..
Yo despues del ordenamiento burbuja tuyo (supuestamente dices que funciona bien) me perdi y no entiendo nada que haces pero mira, yo desde 0 lo haria asi:
Ingresar N
Leer N
Para i = 0 hasta N - 1 Hacer // ( int i = 0; i<n; i++ )
Ingresar Numero
Guardar Numero en Array[i]
Ordenamiento burbuja
axuliar = 0
contador = 0
Hacer
auxiliar = auxiliar + 1
Para i =1 hasta auxiliar hacer
mostrar arrayordenado[contador]
contador++;
Mientras auxiliar < n
Proba si algo asi funcionaria
algoritmo de burbuja:
http://estudiante.gamersmafia.com/respuestas/show/2254
void ordenamientoBurbuja(int v[ ], int util_v) {·······<--- recibe la lista y el número de elemntos que tiene
____ int temp;
____ for (int i = 0; i <= util_v - 2; i++) { ········· <---- Para i= 0 hasta n-2
________ for (int j = i + 1; j <= util_v - 1; j++) { ·········· <---- selecciona el siguiente para poder comparar pos(i) con pos(i+1)
____________ if (v[ i ] > v[ j ]) { ·········· <--- compara
________________ temp = v[ i ]; ··········<--- cambia los elementos
________________ v[ i ] = v[ j ];
________________ v[ j ] = temp;
____________ }
________ }
____ }
}
este mi code de triangulo:
#include <iostream>
using namespace std;
char X[];
int main()
{
char X = "1234567890";
int a,b,c;
c = 2;
for(a=0;a<10;)
{
b = 1;
do
{
b++;
cout << X[a] << " ";
a++;
}while (b < c);
c=(b+1);
if (a == 1) c = 3;
cout << endl;
}
return 0;
}
C# amigos, C#, moviendo a donde debe estar ...
Esta en .net y esta bien, fue raul que se confundio en poner ese codigo. La idea raul es que lo pongas en pseudocodigo si no conoces el lenguaje pienso. No me discutas raul xDD
Cita de: $Edu$ en 27 Noviembre 2011, 01:16 AM
Esta en .net y esta bien, fue raul que se confundio en poner ese codigo. La idea raul es que lo pongas en pseudocodigo si no conoces el lenguaje pienso. No me discutas raul xDD
que coñaso!? :¬¬
bueno si se movio no se pero al princio es cierto el usuario no se especifico que lenguaje usaba yo por deduccion se suponia que era C++ :P luego me fui y de nuevo al entrar ni vi el codigo del usuario porque tenia prisa y postee el mio :¬¬ no es otra cosa edu :¬¬
Esque siempre estuvo en .net entonces tiene que ser un lenguaje de .net generalmente aca ponen vb.net o C# y el titulo del mensaje siempre dijo c sharp xD Pero te retaba en broma raul! xD
Bueno, estaba implementandote eso y me salio este metodo, dime si te ayuda....
public static int[][] TriangPascal(int n)
{
int[][] a= new int[n+1][];
for(int i=0; i<a.Length; i++)
{
a[i]=new int[i+1];
if(i==0)
{
a[i][i]=1;
}
if(i==1)
{
a[i][0]=1;
a[i][i]=1;
}
if(i>1)
{
a[i][0]=1;
a[i][a[i].Length-1]=1;
for(int j=1; j<a[i].Length-1; j++)
{
a[i][j]=a[i-1][j-1]+a[i-1][j];
}
}
}
return a;
saludos ;)
No $Edu$, estaba en C/C++ es obvio, sino no hubiera puesto mi mensaje ni existiria este hilo:
http://foro.elhacker.net/programacion_cc/movido_ayudaumlejercio_c_sharp-t345950.0.html
Mala mia entonces ;)