C sharp - Contador en un array

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

Contador en un array

Publicado por Carl (2 intervenciones) el 23/10/2020 17:51:17
Hola, Necesito una ayuda, en el ejercicio me pide cantidad de vaca y cantidad de días en los que deben ser vacunadas, debo programarlo con la mayor cantidad de métodos posibles. Hasta ahora creo que vengo bien. Pero en un punto el problema me pide que muestre una lista con la cantidad de vacunas A y B para cada vaca en particular. Ejemplo Vaca: h. Vacuna A: 1, Vacuna B: 3. Pero el programa me devuelve la misma cantidad de vacunas para todas las vacas. El contador que creo no funciona correctamente. La idea es crear un método que cuenta las cantidad de vacunas A y B para cada vaca en particular y luego las muestra por consola. Una ayuda seria genial.. Saludos!!!
Datos devueltos:
pn8iJTzTp
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
Boolean control;
    int v = 0;
    do   //INGRESO CANTIDAD ALUMNOS; CONTROL DE ERRORES;
    {
        try
        {
            Console.WriteLine(msj);
            v = int.Parse(Console.ReadLine());
            if (v >= 1)
            {
                control = true;
            }
            else
            {
                control = false;
                Console.WriteLine("Error. Debe ingresar un valor mayor a 0");
            }
        }
        catch (Exception e)
        {
            Console.WriteLine("ERROR DESDE EL CATCH");
            Console.WriteLine(e.Message);
            control = false;
        }
    } while (!control);
    return v;
}
 
public static string[,] Vacunas(int cant_dias, int cant_vacas)
{
    string[,] array_dias = new string[cant_vacas, cant_dias];
    return array_dias;
}
 
public static string[] Cantidad_vacas(int c_vacas)//1.a
{
    string[] cantidad_vacas = new string[c_vacas];
    return cantidad_vacas;
}
static void Main(string[] args)
{
    int cant_Vacas = carga_cantidad("Ingrese cantidad de Vacas)");
    int cant_Dias = carga_cantidad("Ingrrese cantidad de Dias");
    string[] array_Vacas = Cantidad_vacas(cant_Vacas);
    string[,] array_Dias = Vacunas(cant_Dias, cant_Vacas);
    Boolean bandera = false;
    string Vacuna_a = "a";
    string Vacuna_b = "b";
    int cont_vacuna_a = 0;
    int cont_vacuna_b = 0;
    for (int i = 0; i < cant_Vacas; i++)
    {
        Console.WriteLine("Ingrese una letra para nombrar a la vaca (No puede ser la letra A, B):   Vaca N º" + i + ";");
        array_Vacas[i] = Console.ReadLine();
        for (int s = 0; s < cant_Dias; s++)
        {
            try
            {
                do
                {
                    Console.WriteLine("Ingreso Vacuna: (A) o (B) :  Vacuna Nº " + s + "; ");
                    array_Dias[i, s] = Console.ReadLine();
                    if (array_Dias[i, s].Equals(Vacuna_a) || array_Dias[i, s].Equals(Vacuna_b))
                    {
                        if (array_Dias[i, s].Equals(Vacuna_a))
                        {
                            cont_vacuna_a += 1;
                        }
                        if (array_Dias[i, s].Equals(Vacuna_b))
                        {
                            cont_vacuna_b += 1;
                        }
                        bandera = true;
                    }
                    else
                    {
                        Console.WriteLine("Error");
                        bandera = false;
                    }
                } while (!bandera);
            }
            catch (Exception e)
            {
                Console.WriteLine("Error");
                Console.WriteLine(e.Message);
                bandera = false;
            }
        }
        Console.WriteLine();
 
    }
    //muestra
    for (int i = 0; i < cant_Vacas; i++)
    {
        Console.WriteLine(" " + array_Vacas[i] + " Nº: " + i);
        for (int s = 0; s < cant_Dias; s++)
        {
            Console.WriteLine("Vacuna: " + array_Dias[i, s] + " Dia: " + s);
        }
        Console.WriteLine("Vaca: " + array_Vacas[i] + " Nº: " + i + " Cantidad Vacuna (A): " + cont_vacuna_a + " Cantidad Vacuna (B)" + cont_vacuna_b);
    }
}
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

Contador en un array

Publicado por Nacho (115 intervenciones) el 23/10/2020 19:43:38
Si quieres cantidad de vacunas para cada vaca el contador no puede ser un inr, tiene que ser un int[] de la cantidad de vacas que haya.
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
sin imagen de perfil
Val: 5
Ha disminuido su posición en 4 puestos en C sharp (en relación al último mes)
Gráfica de C sharp

Contador en un array

Publicado por Carl (2 intervenciones) el 24/10/2020 23:41:53
Y como seria? por que lo intento hacer y me sigue dando error.
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

Contador en un array

Publicado por Nacho (115 intervenciones) el 25/10/2020 13:26:32
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
public static int carga_cantidad(string msj)
{
    Boolean control;
    int v = 0;
    do   //INGRESO CANTIDAD ALUMNOS; CONTROL DE ERRORES;
    {
        try
        {
            Console.WriteLine(msj);
            v = int.Parse(Console.ReadLine());
            if (v >= 1)
            {
                control = true;
            }
            else
            {
                control = false;
                Console.WriteLine("Error. Debe ingresar un valor mayor a 0");
            }
        }
        catch (Exception e)
        {
            Console.WriteLine("ERROR DESDE EL CATCH");
            Console.WriteLine(e.Message);
            control = false;
        }
 
    } while (!control);
    return v;
}
 
public static string[,] Vacunas(int cant_dias, int cant_vacas)
{
    string[,] array_dias = new string[cant_vacas, cant_dias];
    return array_dias;
}
public static string[] Cantidad_vacas(int c_vacas)//1.a
{
    string[] cantidad_vacas = new string[c_vacas];
    return cantidad_vacas;
}
 
static void Main(string[] args)
{
    int cant_Vacas = carga_cantidad("Ingrese cantidad de Vacas)");
    int cant_Dias = carga_cantidad("Ingrrese cantidad de Dias");
    string[] array_Vacas = Cantidad_vacas(cant_Vacas);
    string[,] array_Dias = Vacunas(cant_Dias, cant_Vacas);
    Boolean bandera = false;
    string Vacuna_a = "a";
    string Vacuna_b = "b";
    int[] cont_vacuna_a = new int[cant_Vacas];
    int[] cont_vacuna_b= new int[cant_Vacas];
    for (int i = 0; i < cant_Vacas; i++)
    {
        Console.WriteLine("Ingrese una letra para nombrar a la vaca (No puede ser la letra A, B):   Vaca N º" + i + ";");
        array_Vacas[i] = Console.ReadLine();
        for (int s = 0; s < cant_Dias; s++)
        {
            try
            {
                do
                {
                    Console.WriteLine("Ingreso Vacuna: (A) o (B) :  Vacuna Nº " + s + "; ");
                    array_Dias[i, s] = Console.ReadLine();
                    if (array_Dias[i, s].Equals(Vacuna_a) || array_Dias[i, s].Equals(Vacuna_b))
                    {
                        if (array_Dias[i, s].Equals(Vacuna_a))
                        {
                            cont_vacuna_a[i] += 1;
                        }
                        if (array_Dias[i, s].Equals(Vacuna_b))
                        {
                            cont_vacuna_b[i] += 1;
                        }
                        bandera = true;
                    }
                    else
                    {
                        Console.WriteLine("Error");
                        bandera = false;
                    }
                } while (!bandera);
            }
            catch (Exception e)
            {
                Console.WriteLine("Error");
                Console.WriteLine(e.Message);
                bandera = false;
            }
        }
        Console.WriteLine();
   }
    //muestra
    for (int i = 0; i < cant_Vacas; i++)
    {
        Console.WriteLine(" " + array_Vacas[i] + " Nº: " + i);
        for (int s = 0; s < cant_Dias; s++)
        {
            Console.WriteLine("Vacuna: " + array_Dias[i, s] + " Dia: " + s);
            Console.WriteLine("Vaca: " + array_Vacas[i] + " Nº: " + i + " Cantidad Vacuna (A): " + cont_vacuna_a[i] + " Cantidad Vacuna (B)" + cont_vacuna_b[i]);
        }
    }
}
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