Foro de elhacker.net

Programación => Java => Mensaje iniciado por: razor47 en 21 Marzo 2012, 06:43 am



Título: ayuda con este codigo en net beans
Publicado por: razor47 en 21 Marzo 2012, 06:43 am
me dijeron que le faltaba algo sobre acumuladores o algo asi.

pedir las horas de 6 trabajadores con joption pane, el pago de las horas es de $30, si las horas son mayor o igual a 40, se le paga el doble, si las horas son menor que 40 el pago de horas es de $30. cual es el pago total de los 6 empleados.




package ejercicio;
import javax.swing.*;
public class ejercicio {

public static void main(String[] args) {
int trabajadores=1;
double pagohrs=30;
double total=0;
int hras;
double totalhrs;

while (trabajadores<=6)
{
hras=Integer.parseInt(JOptionPane.showInputDialog("INGRESE SU CANTIDAD DE HORAS"));
if (hras>=40)
{
    total = pagohrs * 2;
 total=total*6;
    }
else
    total = pagohrs*hras;
    trabajadores=trabajadores+1;
   total=total*6;
        }
 JOptionPane.showMessageDialog(null,"el pago total es de: "+total);
        }
    }


ahi que me falta, es que cada que ingreso un valor al final solo me muestra el total de un solo trabajador. otra cosa, si no es mucho pedir, me podria explicar como individualizar los valores con este tipo de ciclos como por ejemplo con while


Título: Re: ayuda con este codigo en net beans
Publicado por: goll9d en 22 Marzo 2012, 01:29 am
Bueno a primera vista, parece que te hacen falta cerrar unas llaves ( } ) pero el codigo diría yo que lo veo bien intenta con las llaves si eso no funka, entonces   :-\ :-\ No Se  :xD y tu segunda pregunta no la entendí.


Título: Re: ayuda con este codigo en net beans
Publicado por: visualfree en 22 Marzo 2012, 06:42 am
Te hice 2 respuesta una usando un for y la otra creando otra clase y empleando el while...
mmm lo otro yo use la clase Scanner para leer por teclado eso lo cambias a tu gusto...

Código:
import java.util.*;
class Prueba{
        public static void main(String[] args)
        {
                int pagoHoras=30;
                int cantHoras;
                Scanner in=new Scanner(System.in);
                int pagoTotal=0;;
                for(int i=1;i<=6;i++)
                {
                        System.out.println("Ingrese cantidad de trabajador"+i);
                        cantHoras=in.nextInt();
                        if(cantHoras>40)
                        {
                                pagoHoras=pagoHoras*2;
                                pagoTotal=pagoTotal+pagoHoras;
                        }
                        else
                        {
                                pagoTotal=pagoTotal+pagoHoras;
                        }
                }
                System.out.println("El pago total es de:"+pagoTotal);
        }
}



Código:
import java.util.*;
class Prueba{
public static void main(String[] args)
{
Trabajador trabajador=new Trabajador();
trabajador.setPagoHoras(30);
Scanner in=new Scanner(System.in);
int pagoTotal=0;
int i=1;
while(i<=6)
{
System.out.println("Ingrese cantidad de trabajador"+i);
int cantHoras=in.nextInt();
trabajador.setCantHoras(cantHoras);
i=i+1;
}
System.out.println("El pago total es de:"+trabajador.getPagoTotal());
}
}
class Trabajador{
int pagoHoras;
int cantHoras;
int pagoTotal;
public void setPagoHoras(int pagoHoras)
{
this.pagoHoras=pagoHoras;
}
public void setCantHoras(int cantHoras)
{
this.cantHoras=cantHoras;
if(cantHoras>40)
                {
                    pagoHoras=pagoHoras*2;
                    pagoTotal=pagoTotal+pagoHoras;
                }
                else
                {
                    pagoTotal=pagoTotal+pagoHoras;
                }
}
public void setPagoTotal(int pagoTotal)
{
this.pagoTotal=pagoTotal;
}
public int getPagoHoras()
{
return pagoHoras;
}
public int getCantHoras()
{
return cantHoras;
}
public int getPagoTotal()
{
return pagoTotal;
}

}