Autor
|
Tema: Duda de programa en java :( condicional simple. (Leído 7,980 veces)
|
rub'n
Desconectado
Mensajes: 1.217
(e -> λ("live now")); tatuar -> λ("α");
|
//Un postulante a un empleo, realiza un test de capacitación, se obtuvo la siguiente información: cantidad //total de preguntas que se le realizaron y la cantidad de preguntas que contestó correctamente. //Se pide confeccionar un programa que ingrese los dos datos por teclado e informe el nivel del mismo según el //porcentaje de respuestas correctas que ha obtenido, y sabiendo que: //Nivel máximo: Porcentaje>=90%. //Nivel medio: Porcentaje>=75% y <90%. //Nivel regular: Porcentaje>=50% y <75%. //Fuera de nivel: Porcentaje<50%. import java.util.Scanner; public class Postulanteaempleo { public static void main (String[] args ) { Scanner teclado = new Scanner (System. in); int preguntotal; int preguntascorrectas; int porcentaje; System. out. println("Introduce cantidad total de preguntas que se le realizaron: "); preguntotal=teclado.nextInt(); System. out. println("Cantidad de preguntas que contestó correctamente: "); preguntascorrectas=teclado.nextInt(); porcentaje= preguntascorrectas*100/preguntotal; if(porcentaje >= 90 ) { System. out. println("Nivel máximo"); } else { if(porcentaje >= 75 && porcentaje < 90) { System. out. println("Nivel medio"); } else { if(porcentaje >= 50 && porcentaje < 75) { System. out. println("Nivel regular"); } else { System. out. println("Fuera de nivel"); } } } } }
en el proceso de hallar el porcentaje de preguntas correctas porcentaje= preguntascorrectas*100/preguntotal; si introducimos primero asi, Introduce cantidad total de preguntas que se le realizaron: 20 Cantidad de preguntas que contestó correctamente: 15 Nivel medio pero si matematicamente al dividir 15/20= 0.75 *100 = 75 que seria nivel medio entonces al yo hacer porcentaje = preguntascorrectas / preguntotal*100;Introduce cantidad total de preguntas que se le realizaron: 20 Cantidad de preguntas que contestó correctamente: 15 Fuera de nivel no entiendo aqui la prioridad de operador ,,, xq sera ???
|
|
« Última modificación: 30 Septiembre 2010, 08:18 am por LEYER »
|
En línea
|
If you don't have time to read, you don't have the time (or the tools) to write, Simple as that. Stephen king
|
|
|
Shell Root
|
Así, <Tienes que hacer que ingrese los números desde la consola>, public class PoC { public static void main (String[] args ){ int sTotalPreguntas; int sPreguntasCorrectas; double sPorcentaje; sTotalPreguntas = 20; sPreguntasCorrectas = 10; sPorcentaje = sPreguntasCorrectas * 100 / sTotalPreguntas; System. out. println(sPorcentaje + "\n"); if(sPorcentaje >= 90){ System. out. println("Nivel máximo"); }else if((sPorcentaje >= 75) && (sPorcentaje < 90)){ System. out. println("Nivel medio"); }else if((sPorcentaje >= 50) && (sPorcentaje < 75)){ System. out. println("Nivel regular"); }else{ System. out. println("Fuera de nivel"); } } }
|
|
|
En línea
|
Te vendería mi talento por poder dormir tranquilo.
|
|
|
Debci
Wiki
Desconectado
Mensajes: 2.021
Actualizate o muere!
|
sabes que puedes usar parentesis para forzar la priorizacion de calculos?
Saludos
|
|
|
En línea
|
|
|
|
Shell Root
|
Simon. Como en matemáticas, verdad? sPorcentaje = (sPreguntasCorrectas * 100) / sTotalPreguntas;
|
|
|
En línea
|
Te vendería mi talento por poder dormir tranquilo.
|
|
|
Debci
Wiki
Desconectado
Mensajes: 2.021
Actualizate o muere!
|
Mmm no entiendo tu primera respuesta :S
Saludos
|
|
|
En línea
|
|
|
|
rub'n
Desconectado
Mensajes: 1.217
(e -> λ("live now")); tatuar -> λ("α");
|
Así, <Tienes que hacer que ingrese los números desde la consola>, public class PoC { public static void main (String[] args ){ int sTotalPreguntas; int sPreguntasCorrectas; double sPorcentaje; sTotalPreguntas = 20; sPreguntasCorrectas = 10; sPorcentaje = sPreguntasCorrectas * 100 / sTotalPreguntas; System. out. println(sPorcentaje + "\n"); if(sPorcentaje >= 90){ System. out. println("Nivel máximo"); }else if((sPorcentaje >= 75) && (sPorcentaje < 90)){ System. out. println("Nivel medio"); }else if((sPorcentaje >= 50) && (sPorcentaje < 75)){ System. out. println("Nivel regular"); }else{ System. out. println("Fuera de nivel"); } } }
gracias por la respuesta shell root , pero es que osea asi como lo tienes,,tambien con todas la variables de tipo int da correcto todo... debe ser que me explique mal... entonces en lo que tienes hay el resultado seria verdad, 50 que segun la condicion es NIVEL REGULAR pero si hacemos lo siguente CON lavariables de tipo intponemos porcentaje = preguntascorrectas / preguntotal*100; el resultado da Introduce cantidad total de preguntas que se le realizaron: 20 Cantidad de preguntas que contestó correctamente: 10 Fuera de nivel 0 entonces hay era lo que decia YO EL ERROr fetido ese que me daba y hay lo que hize fue poner todas las variables float y ahora da bien... es mas puse solo int preguntotal; float preguntascorrectas; float porcentaje; con eso me daba bien igual ... mira dudilla es ,,,hay que controlar ajuro ,,todos los resultados de salida de todas la variables de salida ? cierto para estar mejor ? y ver posibles errores ?creditos también Javier Salcedo coder and desing.
|
|
|
En línea
|
If you don't have time to read, you don't have the time (or the tools) to write, Simple as that. Stephen king
|
|
|
Shell Root
|
Cómo?, No entendí, hice esto, [SNIP] sTotalPreguntas = 20; sPreguntasCorrectas = 10; [/SNIP]
y me dio como resultado lo siguiente, shellroot@alex-laptop:~/Escritorio$ java PoC 50.0 Nivel regular
|
|
|
En línea
|
Te vendería mi talento por poder dormir tranquilo.
|
|
|
rub'n
Desconectado
Mensajes: 1.217
(e -> λ("live now")); tatuar -> λ("α");
|
disculpa si estoy hablando mal o algo ,,,osea si te entiendo tu codigo esta perfecto me ayudo del todo ,,,pero es que ve desde un principio ,,el codigo que puse estaba bien ves, con la variables de tipo intpero con las variables de tipo int si ponia sPorcentaje = sPreguntasCorrectas / sTotalPreguntas *100 ; pero con la variables tipo inthay da error ves,,, si ponemos las variables a float no da error.o double; gracias por la ayuda... pana
|
|
« Última modificación: 25 Octubre 2010, 08:30 am por RuB'n. »
|
En línea
|
If you don't have time to read, you don't have the time (or the tools) to write, Simple as that. Stephen king
|
|
|
Shell Root
|
jajajjaa pero entonces, cual es tú pregunta! public class PoC { public static void main (String[] args ){ int sTotalPreguntas; int sPreguntasCorrectas; int sPorcentaje; sTotalPreguntas = 20; sPreguntasCorrectas = 2; sPorcentaje = sPreguntasCorrectas * 100 / sTotalPreguntas; System. out. println(sPorcentaje + "\n"); if(sPorcentaje >= 90){ System. out. println("Nivel máximo"); }else if((sPorcentaje >= 75) && (sPorcentaje < 90)){ System. out. println("Nivel medio"); }else if((sPorcentaje >= 50) && (sPorcentaje < 75)){ System. out. println("Nivel regular"); }else{ System. out. println("Fuera de nivel"); } } }
Resultado, shellroot@alex-laptop:~/Escritorio$ javac PoC.java shellroot@alex-laptop:~/Escritorio$ java PoC 10 Fuera de nivel
|
|
|
En línea
|
Te vendería mi talento por poder dormir tranquilo.
|
|
|
1mpuls0
Desconectado
Mensajes: 1.186
|
hay da error ves,,, si ponemos las variables a float no da error.o double; Es qué no se trata de solo corregir para solucionar el problema, recuerda que Java es un lenguaje Orientado a Objetos y como tal una de sus caracteristicas es la Abstracción de la información, por ejemplo como mencionas de colocar las variables tipo float; sTotalPreguntas, no te pueden hacer 1.25 preguntas. Pero si tú maestro (o a quien vayas a entregar tu trabajo) no te dice nada pues vale. jajajjaa pero entonces, cual es tú pregunta!
+1
|
|
|
En línea
|
abc
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Duda con programa java
Java
|
Gm3z
|
1
|
3,210
|
4 Diciembre 2012, 14:00 pm
por Gm3z
|
|
|
Duda sobre cómo estructurar un programa con el paradigma POO en java? (Solución)
Java
|
ralymontes
|
9
|
6,006
|
29 Agosto 2013, 17:17 pm
por ralymontes
|
|
|
Operador condicional ?: (Duda)
Programación C/C++
|
mort
|
1
|
1,816
|
31 Enero 2015, 21:56 pm
por engel lex
|
|
|
Duda simple, mi programa se salta una línea. C++
Programación C/C++
|
pablovg9
|
3
|
7,283
|
21 Julio 2015, 01:40 am
por pablovg9
|
|
|
(C++) Condicional if, seguir ejecutando, o cerrar programa
Programación C/C++
|
poma52
|
1
|
1,746
|
1 Marzo 2018, 20:05 pm
por srWhiteSkull
|
|