C sharp - Mostrar lista de alumnos y asistencias a clase (Metodos,Array)

 
Vista:
sin imagen de perfil
Val: 7
Ha mantenido su posición en C sharp (en relación al último mes)
Gráfica de C sharp

Mostrar lista de alumnos y asistencias a clase (Metodos,Array)

Publicado por alejandro (2 intervenciones) el 22/10/2020 18:45:27
Hola comunidad, soy estudiante y me encuentro trabado en un ejercicio.
No me doy cuenta por que me devuelve los mismo datos para todos los alumnos. Ejemplo:

poEv5cQyp

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
int cant_Alumnos = ingresoNumericoconControl("Ingrese cantidad alumnos)");//p_1
    int cant_Clases = ingresoNumericoconControl("Ingrrese cantidad Clases");
 
    string[] lista_Alumnos = CrearPlanillaAsistencia(cant_Alumnos);
    string[] lista_Asistencias =TomarAsistencia(cant_Clases);
    //Carga Alumnos y Asistencias
    for (int i = 0; i < cant_Alumnos; i++)
    {
        Console.WriteLine("Ingrese nombre alumno nº: " + i + ";");
        lista_Alumnos[i] = Console.ReadLine();
        for (int s = 0; s < cant_Clases; s++)
        {
            Console.WriteLine("ingrese a (ausente) _  p (presente) : " + s + ";");
            lista_Asistencias[s] = Console.ReadLine();
        }
        Console.WriteLine();
    }
    //muestra
    for (int i = 0; i < cant_Alumnos; i++)
    {
        Console.WriteLine("NOMBRE: " + lista_Alumnos[i] + " Nº: " + i);
        for (int s = 0; s < cant_Clases; s++)
        {
            Console.WriteLine("Asistencia: " + lista_Asistencias[s] + " Clase Nº: " + s);
        }
    }
}
public static int ingresoNumericoconControl(string msj)
{
    Boolean bandera;
    int n = 0;
    do   //INGRESO CANTIDAD ALUMNOS; CONTROL DE ERRORES;
    {
        try
        {
            Console.WriteLine(msj);
           n = int.Parse(Console.ReadLine());
 
            if (n >= 1)
            {
                bandera = true;
            }
            else
            {
                bandera = false;
                Console.WriteLine("Error. Debe ingresar un valor mayor a 0");
            }
 
        }
        catch (Exception e)
        {
            Console.WriteLine("ERROR DESDE EL CATCH");
            Console.WriteLine(e.Message);
            bandera = false;
        }
 
    } while (!bandera);
    return n;
}
public static string[]  TomarAsistencia(int cant_clases)
{
    string[] array_Clase = new string[cant_clases];
    return array_Clase;
}
public static string[] CrearPlanillaAsistencia(int cantidad_muestra)//1.a
{
    string[] cantidad_Alumnos = new string[cantidad_muestra];
    return cantidad_Alumnos;
 
}

Agradecería la ayuda. Saludos!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Mostrar lista de alumnos y asistencias a clase (Metodos,Array)

Publicado por Nacho (115 intervenciones) el 22/10/2020 21:11:28
Hay clases por cada alumno, luego necesitas una matriz para guardar las clases de cada alumno, no un array.
Así
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
static void Main()
{
    int cant_Alumnos = ingresoNumericoconControl("Ingrese cantidad alumnos)");//p_1
    int cant_Clases = ingresoNumericoconControl("Ingrrese cantidad Clases");
    string[] lista_Alumnos = CrearPlanillaAsistencia(cant_Alumnos);
    string[,] lista_Asistencias = TomarAsistencia(cant_Clases, cant_Alumnos);
    //Carga Alumnos y Asistencias
    for (int i = 0; i < cant_Alumnos; i++)
    {
        Console.WriteLine("Ingrese nombre alumno nº: " + i + ";");
        lista_Alumnos[i] = Console.ReadLine();
        for (int s = 0; s < cant_Clases; s++)
        {
            Console.WriteLine("ingrese a (ausente) _  p (presente) : " + s + ";");
            lista_Asistencias[i,s] = Console.ReadLine();
        }
        Console.WriteLine();
    }
    //muestra
    for (int i = 0; i < cant_Alumnos; i++)
    {
        Console.WriteLine("NOMBRE: " + lista_Alumnos[i] + " Nº: " + i);
        for (int s = 0; s < cant_Clases; s++)
        {
            Console.WriteLine("Asistencia: " + lista_Asistencias[i,s] + " Clase Nº: " + s);
        }
    }
}
public static int ingresoNumericoconControl(string msj)
{
    Boolean bandera;
    int n = 0;
    do   //INGRESO CANTIDAD ALUMNOS; CONTROL DE ERRORES;
    {
        try
        {
            Console.WriteLine(msj);
            n = int.Parse(Console.ReadLine());
            if (n >= 1)
            {
                bandera = true;
            }
            else
            {
                bandera = false;
                Console.WriteLine("Error. Debe ingresar un valor mayor a 0");
            }
        }
        catch (Exception e)
        {
            Console.WriteLine("ERROR DESDE EL CATCH");
            Console.WriteLine(e.Message);
            bandera = false;
        }
    } while (!bandera);
    return n;
}
 
public static string[,] TomarAsistencia(int cant_clases, int cantidad_alumnos)
{
    string[,] array_Clase = new string[cantidad_alumnos, cant_clases];
    return array_Clase;
}
 
public static string[] CrearPlanillaAsistencia(int cantidad_muestra)//1.a
{
    string[] cantidad_Alumnos = new string[cantidad_muestra];
    return cantidad_Alumnos;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 7
Ha mantenido su posición en C sharp (en relación al último mes)
Gráfica de C sharp

Mostrar lista de alumnos y asistencias a clase (Metodos,Array)

Publicado por Alejandro (2 intervenciones) el 22/10/2020 21:28:26
Muchísimas Gracias!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar