Cita:
Iniciado por loncho_rojas Profesor_Falken No se quien te enseñó lógica programática, y quien te dio ese título de Profesor, pero si no lo pruebas, como lo vas a saber.. se supone que VALOR es un dato dinámico... yo lo hago con SWITCH CASE, pero igual funciona con if else.. no lo van a inventar en vano.... PRUEBALO Y LUEGO DI SI ES O NO FACTIBLE.. AH, y cambia el valor de la propiedad VALOR para comprobar... obvio que si es 90 nunca va a variar, pero deberías enteder el espíritu del problema... el problema ni siquiera es de JAVA es de pseudocódigo nada mas.
Código Java:
Ver originalpublic static void main
(String[] args
) { //declaramos la variable a hacerle el calculo de utilidad... luego cambialo por 153, y luego por 112, verás que si funciona
int valor = 35;
//declaramos la variable del IVA
float iva =1.16f;
if (valor > 0 && valor<=100){
// cambio la palabra PRODUCTO con un indice para ver en cual ha entrado
System.
out.
println("El costo del producto-caso1 es de: "+(valor
*iva
*1.05)); }
else if (valor > 101 && valor<=150)
{
System.
out.
println("El costo del producto-caso2 es de: "+(valor
*iva
*1.17)); }
else if (valor > 151 && valor<=200)
{
System.
out.
println("El costo del producto-caso3 es de: "+(valor
*iva
*1.18)); }else{
System.
out.
println("Los valores no pueden ser evaluados"); }
}
Antes de dar una contestación tan chulesca deberías haberte parado a ver lo que has escrito y lo que te han contestado.
Profesor_Falken no ha dicho que tu código no funcione, sólo que lo que has puesto es exactamente lo mismo que ha puesto la persona que abrió el hilo pero añadiéndole unos límites inferiores que no tienen ningún efecto.
else if (valor > 101 &&
valor<=150)
{
System.out.println("El costo del producto-caso2 es de: "+(valor*iva*1.17));
}
else if
(valor > 151 && valor<=200)
{
System.out.println("El costo del producto-caso3 es de: "+(valor*iva*1.18));
}
Si valor está entre 100 y 150 siempre entrará por ese else if y nunca llegará al siguiente, así que ¿de qué te sirve la condición valor > 151? Hará lo mismo con ella o sin ella.
El problema es que no está clara cuál es la duda del primer post, Profesor_Falken (y yo) entiende que lo que pregunta es cómo hacer que cada valor haga lo mismo que los tramos anteriores más una cosa nueva. Y eso no lo hace ni tu código ni el suyo.