Dúvida! Estou aprendendo a programar, usar o Java e o netBeans, porém sei de algumas coisas. Minha maior dúvida esta sendo como criar o código para descobrir se um numero é maior ou menor, e ainda aparecer uma mensagem do JOptionPane mostrando se é maior ou menor, sendo que também tem que ter o botão de opção para selecionar entre maior e menor e no final clicar em calcular para saber.
Ou seja, tudo?
O que você já fez?
fiz uns códigos loucos aqui, mas não conseguir rsrs
int numero1;
int numero2;
int numero3;
numero1 = Integer.parseInt(jTNumero1.getText());
numero2 = Integer.parseInt(jTNumero2.getText());
numero3 = Integer.parseInt(jTNumero3.getText());
int maior = (numero1=numero2=numero3);
int menor = (numero1=numero2=numero3);
if(numero3>numero2 && numero3>numero1){
JOptionPane.showMessageDialog(null, maior + " é o maior número");
}else if(numero2>numero1 && numero2>numero3){
JOptionPane.showMessageDialog(null, maior + " é o maior número");
}else{
JOptionPane.showMessageDialog(null, maior + " é o maior número");
}
if(numero3<numero2 && numero3<numero1){
JOptionPane.showMessageDialog(null, menor + " é o menor número");
}else if(numero2<numero1 && numero2<numero3){
JOptionPane.showMessageDialog(null, menor + " é o menor número");
}else{
JOptionPane.showMessageDialog(null, menor + " é o menor número");
}
if(jRMaiorNumero.isSelected()){
JOptionPane.showMessageDialog(null, maior + " é o maior número");}
if(jRMenorNumero.isSelected()){
JOptionPane.showMessageDialog(null, menor + " é o menor número");}
Acha que isso funciona? Se funciona, por que você tem as comparações?
Então, pra dá uma variável pra o JOptionPane. Mas depois tirei, e mesmo assim não deu certo! Estou perdido.
Eu não abro imagens.
Então, veja, você precisa fazer as comparações. Senão, não tem como descobrir qual é maior.
Pode me dar exemplo? Essa imagem que te mandei é do exercício.
A comparação pode ser feita desta forma:
int maior = numero1;
int menor = numero1;
//Verifica qual o maior número
if (numero2 > maior) {
maior = numero2;
} else if (numero3 > maior) {
maior = numero3;
}
//Verifica qual o menor número
if (numero2 < menor) {
menor = numero2;
} else if (numero3 < menor) {
menor = numero3;
}
Ué, simples, pega as comparações que vocês faz e adapta para descobrir qual o maior e qual o menor:
Você fez quase certo:
int maior = (numero1=numero2=numero3);
int menor = (numero1=numero2=numero3);
if(numero3>numero2 && numero3>numero1){
JOptionPane.showMessageDialog(null, maior + " é o maior número");
}else if(numero2>numero1 && numero2>numero3){
JOptionPane.showMessageDialog(null, maior + " é o maior número");
}else{
JOptionPane.showMessageDialog(null, maior + " é o maior número");
}
Mas deveria fazer assim
int maior, menor;
if(numero1 > numero2 && numero1 > numero3) {
maior = numero1;
}
//Continua com as validações do maior
if(numero1 < numero2 && numero1 < numero3) {
menor = numero1;
}
//Continua com as validações do menor
JOptionPane.showMessageDialog(null, "O maior número é: " + maior);
JOptionPane.showMessageDialog(null, "O menor número é: " + menor);
Entendeu?
Aqui você está atribuindo às variáveis maior
, numero1
e numero2
o valor da variável numero3
, está errado.
Exemplo bem simples de como verificar: qual é o maior dos três números:
int maior = numero1;
if (numero2 > maior) {
maior = numero2;
}
if (numero3 > maior) {
maior = numero3;
}
Também pode criar um método pra isso:
int maior(int a, int b) {
return a > b ? a : b;
}
Daí basta fazer assim:
int maior = maior(numero1, maior(numero2, numero3));
Usa a função : Math.max(a,b); retorna apenas o maior valor.
O cara tá aprendendo estruturas de desvio condicional (if e else) e você quer que ele já use coisas como esta?
Existe uma razão para tais exercícios e o objetivo é entendimento e análise das possíveis situações em que será utilizado.
Me ajudou bastante, consegui!
no lugar do: JOptionPane.showMessageDialog(null, "O maior número é: " + maior);
JOptionPane.showMessageDialog(null, "O menor número é: " + menor);
eu coloquei: if(jRMaiorNumero.isSelected()){
JOptionPane.showMessageDialog(null, maior + " é o maior número");}
if(jRMenorNumero.isSelected()){
JOptionPane.showMessageDialog(null, menor + " é o menor número");}
e toda vez que coloco os três números e seleciono a opção de número maior ou número menor ele da a opção certa. Muito obrigado cara, me ajudou muito.
int numero1;
int numero2;
int numero3;
numero1 = Integer.parseInt(jTNumero1.getText());
numero2 = Integer.parseInt(jTNumero2.getText());
numero3 = Integer.parseInt(jTNumero3.getText());
int maior,menor;
if(numero3>numero2 && numero3>numero1){
maior = numero3;
}else if(numero2>numero1 && numero2>numero3){
maior = numero2;
}else{
maior = numero1;
}
if(numero3<numero2 && numero3<numero1){
menor = numero3;
}else if(numero2<numero1 && numero2<numero3){
menor = numero2;
}else{
menor = numero1;
}
if(jRMaiorNumero.isSelected()){
JOptionPane.showMessageDialog(null, maior + " é o maior número");}
if(jRMenorNumero.isSelected()){
JOptionPane.showMessageDialog(null, menor + " é o menor número");}