3
« en: 22 de Octubre 2020, 10:02 »
Hola comunidad!! Estoy haciendo un programa en C#. Mi duda es por qué me devuelve los mismos datos para cada alumno. ¿Alguna ayuda?
Enunciado o rúbrica del ejercicio a resolver:
1 - Crear un método que se llame ingreso Numérico Con Control.
* Solicitar al usuario que ingrese un valor entero (n : cantidad de alumnos).
* Solicitar el usuario que ingrese el valor entero (m : cantidad de clases al mes).
* Realizar el control de errores.
* El método deberá retornar un tipo de dato entero.
1 A - Crear un método que se llame Crear Planilla Asistencia
* Definir un array del tipo string de n elementos, donde n seria la cantidad de alumnos a
cargar. El valor de n se cargó en el punto 1.
1 B - Crear un método que se llame Tomar Asistencia.
* Ir cargando en otro array la asistencia de los alumnos, la cantidad de días de clases está
dado por la variable m del punto 1.
* El usuario cargará una P (presente) o una A (Ausente).
* Al finalizar la carga mostrar por consola la planilla con los nombres y las asistencias.
1 C - Crear un método que se llame Control
* El método se encargará de sumar las asistencias de cada alumno.
* Mostrar como salida cuantos presentes y cuantos ausentes tuvo cada alumno.
Salida:
Juan Presentes: 2 Ausentes: 1
Pedro Presentes: 3 Ausentes: 0
Maria Presentes: 1 Ausentes: 2
static void Main(string[] args)
{
//int cant_ClasesMes = 0;
int cant_Alumnos = ingresoNumericoconControl("Ingrese cantidad alumnos)");//p_1
int cant_Clases = ingresoNumericoconControl("Ingrrese cantidad Clases");
CrearPlanillaAsistencia(cant_Alumnos);
TomarAsistencia(cant_Alumnos, cant_Clases); // PUNTO 1.B
}
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);
// Console.WriteLine("Cantidad: "+ n);
return n;
}
public static int TomarAsistencia(int cant_alumnos, int cant_clases)
{
string[] array_Alumnos = new string[cant_alumnos];
string[] array_Clase = new string[cant_clases];//1.b
creaplanillaAssistencia: " + cantidad_muestra);
for (int i = 0; i < cant_alumnos; i++)
{
Console.WriteLine("Ingrese nombre alumno nº: " + i + ";");
array_Alumnos[i] = Console.ReadLine();
for (int s = 0; s < cant_clases; s++)
{
Console.WriteLine("ingrese a ausente o p presente: " + s + ";");
array_Clase[s] = Console.ReadLine();
}
Console.WriteLine();
}
//muestra
for (int i = 0; i < cant_alumnos; i++)
{
Console.WriteLine("NOMBRE: " + array_Alumnos[i] + " Nº: " + i);
for (int s = 0; s < cant_clases; s++)
{
Console.WriteLine("Asistencia: " + array_Clase[s] + " Clase Nº: " + s);
}
}
return cant_alumnos;
}
public static int CrearPlanillaAsistencia(int cantidad_muestra)//1.a
{
int cantidad4 = 0;
string[] cantidad_Alumnos = new string[cantidad4];
return cantidad_muestra;
}