none
Mostrar datos almacenados en una Array(Bucle for anidado) RRS feed

  • Pregunta

  • Hola!!

    No logre entender por que cuando muestro mis datos por consola, no se me acumulan los datos ingresados en cantidad_Muestra_2. solo se muestran los que ingreso en el ultimo alumno. Si alguien puede ayudarme a saber como creo un acumulador para los datos tipos string sobre la carga de asistencias seria genial!!  Saludos!!! 

    static void Main(string[] args)
            {
                Console.WriteLine("ingreso cantidad alumnos:");
                int cantidad_Muestra_1 = int.Parse(Console.ReadLine());
                Console.WriteLine("ingreso cantidad clases:");
                int cantidad_Muestra_2 = int.Parse(Console.ReadLine());
     
                string[] nombre_Alumno = new string[cantidad_Muestra_1];
                string[] cantidad_Clases = new string[cantidad_Muestra_2];

                int i = 0;
                int s = 0;
                //CARGA
                for (i = 0; i < cantidad_Muestra_1; i++)
                {
                    Console.WriteLine("INGRESE NOMBRE ALUMNO: Nº" + +i + ";");
                    nombre_Alumno[i] = Console.ReadLine();
                    for (s = 0; s < cantidad_Muestra_2; s++)
                    {

                        Console.WriteLine("ingrese (A) ausente o  (P)presente: " + s + ";");
                        cantidad_Clases[s] = Console.ReadLine();

                    }
                    Console.WriteLine("");
                }
                //MUESTRA
                for ( i = 0; i < cantidad_Muestra_1; i++)
                {
                    Console.WriteLine("NOMBRE: " + nombre_Alumno[i] + " Nº: " + i);
                    for ( s = 0; s < cantidad_Muestra_2; s++)
                    {
                        Console.WriteLine("Asistencia: " + cantidad_Clases[s] + " Clase: " + s);

                    }               
                }
                Console.ReadKey();          
            }

    miércoles, 21 de octubre de 2020 21:55

Todas las respuestas

  • Hola!!

    No logro entender por que cuando muestro mis datos por consola, no se me acumulan los datos ingresados en cantidad_Muestra_2. solo se muestran los que ingreso en el ultimo alumno. Si alguien puede ayudarme a saber como creo un acumulador para los datos tipos string sobre la carga de asistencias seria genial!!  Saludos!!! 

    static void Main(string[] args)
            {
                Console.WriteLine("ingreso cantidad alumnos:");
                int cantidad_Muestra_1 = int.Parse(Console.ReadLine());
                Console.WriteLine("ingreso cantidad clases:");
                int cantidad_Muestra_2 = int.Parse(Console.ReadLine());
     
                string[] nombre_Alumno = new string[cantidad_Muestra_1];
                string[] cantidad_Clases = new string[cantidad_Muestra_2];

                int i = 0;
                int s = 0;
                //CARGA
                for (i = 0; i < cantidad_Muestra_1; i++)
                {
                    Console.WriteLine("INGRESE NOMBRE ALUMNO: Nº" + +i + ";");
                    nombre_Alumno[i] = Console.ReadLine();
                    for (s = 0; s < cantidad_Muestra_2; s++)
                    {

                        Console.WriteLine("ingrese (A) ausente o  (P)presente: " + s + ";");
                        cantidad_Clases[s] = Console.ReadLine();

                    }
                    Console.WriteLine("");
                }
                //MUESTRA
                for ( i = 0; i < cantidad_Muestra_1; i++)
                {
                    Console.WriteLine("NOMBRE: " + nombre_Alumno[i] + " Nº: " + i);
                    for ( s = 0; s < cantidad_Muestra_2; s++)
                    {
                        Console.WriteLine("Asistencia: " + cantidad_Clases[s] + " Clase: " + s);

                    }               
                }
                Console.ReadKey();          
            }


    miércoles, 21 de octubre de 2020 21:55
  • Hola Alejo5434:

    Esta pregunta no tiene cabida en esta parte del foro.

    Prueba a realizarla en el foro MSDN de c#

    jueves, 22 de octubre de 2020 5:27
  • Hola Alejo5434:

    Adicionalmente el problema radica en que tu tienes un array de nombres de alumnos con por ejemplo 5 items

    y un array de cantidad de clases y lo inicializas con 3 items. 

    Pero 5 alumnos para 3 clases deberían de ser 15 valores, y el array de clases tiene 3

    Podrías usar ese mismo array que fuera new string[Cantidad_Muestra_1 * Cantidad_Muestra_2]

    y para cada alumno le correspondería su parte del array. 

    Por tanto el alumno [0] tendría las posiciones de cantidad_muestras_2[0],[1],[2], el alumno 1 tendría de la [3]....

    jueves, 22 de octubre de 2020 7:19
  • Gracias!
    jueves, 22 de octubre de 2020 8:27