O maior de tres numeros

2 respostas
R

Esta-ma dar erros nos IF, sabem explicar o porque?

import java.util.Scanner;


public class Programa_15 
{

  
    public static void main(String[] args) 
    {
        Scanner input = new Scanner(System.in);
        
        System.out.print("Introduzir primeiro numero ");
        int numero1 = input.nextInt();
        
        System.out.print("Introduzir segundo numero ");
        int numero2 = input.nextInt();
        
        System.out.print("Introduzir terceiro numero ");
        int numero3 = input.nextInt();
        
        
         if((numero1>numero2) and (numero1>numero3))
         {
         System.out.print("O maior é: "+numero1);
         }
         if ((numero2>numero3) and (numero2>numero1))
         {
         System.out.print("O maior é: "+numero2);
         }
          if ((numero3>numero1) and (numero3>numero2))
          {
          System.out.print("O maior é: "+numero3);
          }
          
          System.out.print("Entre: "+numero1+numero2+numero3);
        
        
        
        
    }

    
    
}

2 Respostas

A

and no java é && ou simplesmente & . && é short-circuit , ou seja, se um for falso o outro teste nem será feito . O & é feito os dois mesmo que o primeiro nao seja verdadeiro .

A

Como o exemplo é simples, você poderia estar utilizando também o Operador Ternário… ao invés
dos ifs…

public static void main(String[] args) {
  int i = 1;
  double result;
  double[] numero = new double[3];
  do{
       System.out.print("Introduzir o número " + i + ": ");
       numero[i - 1] = new Scanner(System.in).nextDouble();
       i++;
  }while(i < 4);
  result = numero[0] > numero[1] && numero[0] > numero[2] ? numero[0] : 
           numero[1] > numero[0] && numero[1] > numero[2] ? numero[1] : numero[2];        
  System.out.println("\nO Maior número é o: " + result);      
}
Criado 27 de abril de 2014
Ultima resposta 27 de abr. de 2014
Respostas 2
Participantes 3