Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Duvida em fazer programa de outro modo

Esse programa aqui para fazer um programa para ler 3 números inteiros e dizer qual é o maior número,eu fiz dessa maneira,agora estou tentando fazer o menor numero de outro jeito Primeiro jeito

package Aula7e8;

import java.util.Scanner;

public class Ex4 {
    public static void main(String[] args) {


    Scanner ler=new Scanner(System.in);
    int n1,n2,n3;
    System.out.println("Digite o numero");
    n1=ler.nextInt();
    System.out.println("Digite o numero");
    n2=ler.nextInt();
    System.out.println("Digite o numero");
    n3=ler.nextInt();
    if(n1>=n3&&n1>n2) {
        System.out.println("é maior " + n1);

    }
    else if(n2 > n3) {
        System.out.println("é maior "+ n2);
    } else {
        System.out.println("é maior "+ n3);

    }
}}
Okay deu tudo certo
Agora com o menor desse jeito aqui estou fazendo algo errado só não sei o que é

public class Ex2 {
    public static void main(String[] args) {
        Scanner ler=new Scanner(System.in);
        int n1,n2,n3;
        System.out.println("Digite o numero");
        n1=ler.nextInt();
        System.out.println("Digite o numero");
        n2=ler.nextInt();
        System.out.println("Digite o numero");
        n3=ler.nextInt();
        if(n1<n2)
            System.out.println("O menor é" + n1);
        if(n1<n3)
            System.out.println("O menor é" +n1);
        else
        System.out.println("O menor  é" + n2);
        if(n1<n3)
            System.out.println("O menor é"+n1);
        else
            System.out.println("o menor é" + n3);
        else//está dando erro nesse else //
            if(n2<n3)
                System.out.println("O menor é"+ n2);
            else 
                System.out.println("O menor é " + n3);

}
}
4 respostas

Oi Vitor, me desculpa, mas eu não entendi qual é a sua dúvida :). O que você precisa da gente?

Acabei de ajeitar o código ,minha duvida é como eu faço com a estrutura de decisão encadeada. ( if – else – if) Fiz o código que pede pra ler 3 numeros e dizer qual é o menor,ajeitei e ficou assim,acho que não está certo pois o compilador está dando,dois numeros repetidos public class Ex2 { public static void main(String[] args) { Scanner ler=new Scanner(System.in); int n1,n2,n3; System.out.println("Digite o numero"); n1=ler.nextInt(); System.out.println("Digite o numero"); n2=ler.nextInt(); System.out.println("Digite o numero"); n3=ler.nextInt(); if(n1<n2) System.out.println("O menor é" + n1); if(n1<n3) System.out.println("O menor é" +n1); else System.out.println("o menor é" + n3); if(n2<n3) System.out.println("O menor é"+n2); else

System.out.println("O menor é"+ n3);

} }

Caro Vitor, acho que se enrolou na hora de encadear os if's, esqueceu o else no primeiro ramo e não colocou o seguinte dentro de chaves, assim o programa seguiu um fluxo errado de decisão.

import java.util.Scanner;

public class Ex2 {
    public static void main(String[] args) {
        Scanner ler = new Scanner(System.in);
        int n1, n2, n3;
        System.out.println("Digite o numero");
        n1 = ler.nextInt();
        System.out.println("Digite o numero");
        n2 = ler.nextInt();
        System.out.println("Digite o numero");
        n3 = ler.nextInt();

        if (n1 < n2) {
            if (n1 < n3)
                System.out.println("O menor é" + n1);
            else
                System.out.println("o menor é" + n3);
        } else if (n2 < n3)
            System.out.println("O menor é" + n2);
        else
            System.out.println("O menor é" + n3);
    }
}
solução!

Obrigado