Java - Ayuda con este problema

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

Ayuda con este problema

Publicado por Emmanuel (5 intervenciones) el 10/10/2019 00:06:30
Una empresa de Córdoba necesita calcular el aumento de sueldos para sus empleados bajo el siguiente criterio:
Sueldo < $15000: Aumento 10%
Sueldo comprendido entre $15000 y $25000: Aumento 7%
Sueldo superior a $25000: Aumento 5%
Realiza un programa que permita ingresar el Nombre, el Sexo y el Sueldo de cada empleado y determine lo siguiente: el sueldo promedio de las femeninas, el sueldo promedio de los masculinos, los datos de la persona con mayor sueldo y el total a abonar con aumento por parte de la empresa.
Nota: Luego del ingreso de los datos del primer empleado, el programa debe preguntar para continuar con la carga de datos de otro empleado.

quisiera saber cuales es el error por el cual no esta dando los promedios de las mujeres y varones

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
import hsa.Console;
class actividad4
{
    static Console c;
    public static void main (String arg[])
    {
    c=new Console();
        int b,edad,sueldo,sx,cantidad,cantidad2,cantidad3,cantidad4,s;
        double sueldoACobrar2,sueldoACobrar3,sueldoACobrar4;
        float promedio,promedio2;
        promedio=0.0f;
promedio=0.0f;
        String nombre,nx;
            char opcion;
      b=0;sx =0;edad=0;s=0;cantidad=0;cantidad2=0;cantidad3=0;cantidad4=0;sueldoACobrar2=0;sueldoACobrar3=0;sueldoACobrar4=0;nx="";
        do
        {
            c.clear ();
            c.setCursor (3, 15);
            c.print ("carga de datos");
            c.setCursor (4, 15);
            c.print ("----------");
 
            c.setCursor(6,10);
            c.print("nombre del empleado:");
            nombre = c.readLine();
            cantidad3++;
            c.setCursor (7, 10);
            c.print ("suedo del empleado:");
            sueldo= c.readInt ();
            c.println();
            c.setCursor(8,10);
            c.println(" 1 (femenino) y 2 ( masculino)");
            c.print("ingrese sexo de la persona:");
            s= c.readInt();
            if(sueldo <15000)
            {
            sueldoACobrar2= sueldo + ( sueldo * 0.10);
            }
            else
            if(sueldo >15000 && sueldo <=25000)
            {
            sueldoACobrar4=sueldo + ( sueldo * 0.07);
            }
            else
            if(sueldo > 25000)
            {
            sueldoACobrar3 = sueldo +(sueldo * 0.05);
            }
            if (sueldo ==1)
            {
            cantidad++;
            promedio= sueldo/cantidad;
            }
            if (sueldo == 2)
            {
             cantidad2++;
             promedio2= sueldo/cantidad2;
            }
            if(b==0)
            {
            b=1;
            nx=nombre;
            sx=sueldo;
            }
            if(sueldo > sx)
            {
            nx = nombre;
            sx = sueldo;
            }
            c.setCursor (15, 10);
            c.print ("ingresa otro juego de datos (S/N):");
            opcion = c.readChar ();
        }
        while (opcion == 'S' || opcion == 's');
        c.setCursor(17,10);
        c.print("el sueldo promedio de las mujeres es:" + promedio);
        c.setCursor (18, 10);
        c.print ("el sueldo promedio de los varones es:" + cantidad2);
        c.setCursor (19,10);
        c.print ("la persona con mayor sueldo es :" + nx + " con " + sx);
 
    }
    }
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 Rodrigo
Val: 796
Plata
Ha aumentado 1 puesto en Java (en relación al último mes)
Gráfica de Java

Ayuda con este problema

Publicado por Rodrigo (203 intervenciones) el 10/10/2019 14:37:18
Te sugiero que elijas nombres de variables que ayuden a entender tu programa, especialmente si pides ayuda.

De acuerdo a los c.print que incluyes
El promedio de la mujeres se llama "promedio"
El promedio de los varones se llama "cantidad2"
La persona con mayor sueldo es "nx"
El sueldo mayor es "sx"

Hay variables que defines y no usas.

Si ordenas tu programa, usas nombres de variables que indiquen facilmente que es lo que guardan y no agregas varables que no usas, tu programa sera mas facil de entender para ti y para quien pueda ayudar.
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 Jaime
Val: 100
Ha disminuido 1 puesto en Java (en relación al último mes)
Gráfica de Java

Ayuda con este problema

Publicado por Jaime (34 intervenciones) el 11/10/2019 03:56:04
Es verdad lo q dice Rodrigo, debes ordenarte un poco, definir muy bien las variables y lo que quieres hacer.
No alcancé a terminar de leer el código pero te Vi 2 errores de ejecución:
1- Si yo ingreso un sueldo de 15000, q pasa?
2- En las condicionales, si sueldo =1 como quiere que te dé el promedio que usa la variable sueldo?
Para estos tipos de errores te recomiendo q uses el depurador, detener el proceso y analizar las variables.
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