Java - Ayuda con vectores y matrices

 
Vista:
sin imagen de perfil

Ayuda con vectores y matrices

Publicado por Leo Leonardo (5 intervenciones) el 22/11/2020 19:15:26
Una compañía productora de pasteles tiene N pastelerías ubicadas en M departamentos. Hacer un algoritmo que permita almacenar en dos arreglos unidimensional los nombres de cada pastelería y los nombres de cada departamento. La producción (en unidades) es almacenada en un arreglo bidimensional de N x M.

1.El promedio de producciones por cada pastelería.
2.El nombre de la pastelería con la menor cantidad de unidades producidas.
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
Imágen de perfil de Billy Joel
Val: 2.665
Oro
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Ayuda con vectores y matrices

Publicado por Billy Joel (876 intervenciones) el 22/11/2020 20:28:53
¿Cúal es el problema que tienes?
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

Ayuda con vectores y matrices

Publicado por Danilo (5 intervenciones) el 22/11/2020 22:25:59
No se como almacenar dos arreglos unidimensionales en un arreglo bidimensional de N x M, siendo asi, N las pastelerias y M los departamentos, en un arreglo bidimensional
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
Imágen de perfil de Billy Joel
Val: 2.665
Oro
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Ayuda con vectores y matrices

Publicado por Billy Joel (876 intervenciones) el 22/11/2020 22:33:36
Ok empieza por crear y almacenar los vectores de las pastelerías y departamentos y muestras el código.

Por ejemplo:
1
2
3
4
5
6
String[] pastelerias = new String[N];
System.out.println("Introduce los nombres de las pastelerías");
for (int i = 0; i < pastelerias.length; i++) {
    System.out.print(i + ": ");
    pastelerias[i] = teclado.nextLine();
}
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

Ayuda con vectores y matrices

Publicado por Danilo (5 intervenciones) el 22/11/2020 23:38:24
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
Scanner leer = new Scanner(System.in);
System.out.println("Ingrese tamaño del vector pasteleria");
int n = leer.nextInt();
System.out.println("Ingrese tamaño del vector departamento");
int m = leer.nextInt();
 
String past[]= new String[n];
 
for(int i=0;i<past.length;i++)
{
    System.out.println("Ingrese el dato en la posicion "+i+" del vector pasteleria");
    past[i] = leer.nextLine();
}
 
for(int i=0;i<past.length;i++)
{
    System.out.println(past[i]);
}
 
String depa[]= new String[m];
 
for(int j=0;j<depa.length;j++)
{
 System.out.println("Ingrese el dato en la posicion "+j+" del vector departamento");
    depa[j] = leer.nextLine();
}
for(int j=0;j<depa.length;j++)
{
    System.out.println(depa[j]);
}
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

Ayuda con vectores y matrices

Publicado por Danilo (5 intervenciones) el 22/11/2020 23:39:57
Es este el codigo con el que comenzé
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
Imágen de perfil de Billy Joel
Val: 2.665
Oro
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Ayuda con vectores y matrices

Publicado por Billy Joel (876 intervenciones) el 23/11/2020 14:32:07
Lo resolví 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
import java.util.Scanner;
 
public class Pasteles {
 
    /**
     * Cantidad de pastelerías
     */
    public static final int N = 4;
 
    /**
     * Cantidad de departamentos
     */
    public static final int M = 5;
 
    public static void main(String[] args) {
        Scanner teclado = new Scanner(System.in);
        String[] pastelerias = new String[N];
        String[] departamentos = new String[M];
        int[][] produccion = new int[N][M];
        double[] promedioPasteleria = new double[pastelerias.length];
        Double p;
        int menorIndex = 0;
        System.out.println("Introduce los nombres de las pastelerías");
        for (int i = 0; i < pastelerias.length; i++) {
            System.out.print(i + ": ");
            pastelerias[i] = teclado.nextLine();
        }
        System.out.println("Introduce los nombres de los departamentos");
        for (int i = 0; i < departamentos.length; i++) {
            System.out.print(i + ": ");
            departamentos[i] = teclado.nextLine();
        }
        for (int i = 0; i < N; i++) {
            System.out.println("Pastelería " + pastelerias[i]);
            promedioPasteleria[i] = 0;
            for (int j = 0; j < M; j++) {
                System.out.print("Producción de " + departamentos[j] + ": ");
                p = teclado.nextDouble();
                produccion[i][j] = p.intValue();
                promedioPasteleria[i] += p;
            }
            System.out.println();
            promedioPasteleria[i] = promedioPasteleria[i] / M;
            if (getProduccionPasteleria(produccion, i) < getProduccionPasteleria(produccion, menorIndex)) {
                menorIndex = i;
            }
        }
        System.out.println("Promedio de las pastelerias");
        for (int i = 0; i < promedioPasteleria.length; i++) {
            System.out.println(pastelerias[i] + ": " + promedioPasteleria[i]);
        }
 
        System.out.println("La pastelería con menor producción fue " + pastelerias[menorIndex] + " con una producción de " + getProduccionPasteleria(produccion, menorIndex));
    }
 
    public static int getProduccionPasteleria(int[][] produccion, int indexPasteleria) {
        int total = 0;
        for (int j = 0; j < M; j++) {
            total += produccion[indexPasteleria][j];
        }
        return total;
    }
}

Saludos,
Billy Joel
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