GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Como faço para saber qual é o maior numero


#1

tenho que desenvolver uma rotina com o comando while.
lê dez numeros e depois dizer qual é o maior deles...
eu usei o if mas não deu certo a minha logica...
alguem tem alguma sugestão? o Mais simples possivel...
grato...


#2

opa!
ta ai!
, mas tenta entender o funcionamento da classe caso, haja duvida poste ai que a gente ajuda blz?!..
Ah!, esse programinha calcula os dois maiores ok?!
Falou!

import javax.swing.JOptionPane;
public class MaiorNumero {
   // inicia o método main para execução da aplicação
   public static void main ( String args []) {
       int maior = 0; // Armazena o maior numero dos digitados pelo usuário
       int contador = 1; // contador de controle
       int number;
       int segundomaior = 0;// Armazena o número digitado pelo usuario
       String numero; // String digitada pelo usuário
       // Inicia a fase de processamento da aplicação
       while ( contador <= 10) {
       // Inicia o contador de controle da aplicação
          contador ++;
       // Solicita a entrada do usuário
          numero = JOptionPane.showInputDialog ( "Digite o número no campo:");
          System.out.println("Valor digitado é:" + numero);
       // Converte a entrada do usuário para um tipo inteiro
          number = Integer.parseInt (numero);
        if ( number > maior ) {
           segundomaior = maior;       
           maior = number;
        }   // Fim da estrutura de controle   if    
        if(number < maior && number > segundomaior){
        	segundomaior = number;
        }
       } // Fim da estrutura while
      JOptionPane.showMessageDialog (null, "O Maior dos números digitados é: " + maior, "Resultado", JOptionPane.INFORMATION_MESSAGE);
      JOptionPane.showMessageDialog (null, "O segundo maior é:" + segundomaior, "Resultado", JOptionPane.INFORMATION_MESSAGE);
   } // Fim do método main
} // Fim da classe MaiorNUmero

#3

Uma opção é usar um array para armazenar a coleção.
Você define uma variável dentro do loop while que recebe o primeiro elemento da coleção.
Aí você compara os outros elementos com esta variável e coloca uma condição que determina que quando houver um elemento maior que o valor atual será será substituído por este no valor da variável criada.
Acho que assim funciona.
Abraço.
Charles


#4

Cara, é uma questão de logica!
Pensa comigo!
Vc pega uma variavel para armazenar o maior numero, e vc começa ela com 0, ai o numero que entrar e for maior do que esta variavel, A variavel passa a assumir este valor!
Ai no final vc tera o maior!!
Para descobrir o menor é quase a mesma coisa!
Vc escolhe uma variavel para ser menor e começa ela com um numero muito grande 100000000000000000000000 ai se o numero que vc entrar for menor do que o valor da variavel do menor numero, A variavel recebe este valor!!!
Fixou??


#5
  • Recebe a primeira e assume ela como maior (ou menor, se quiser achar o menor).
  • Recebe a segunda e compara com a sua variável "maior". Se ela for maior então a variável "maior" recebe esse valor, senão continua como está.
  • ... // repete até o fim do while
  • System.out.println("O maior valor eh " + maior);

#6

Esse é um prog. bem simples , mais que faz exatamente oq vc deseja.

import javax.swing.JOptionPane;

public class Maior {

public static void main(String args[]){

int valor,
    maior = 0,
    cont = 1;

String number;

while(cont &lt;= 10){

  number = JOptionPane.showInputDialog("Entre com o valor");

  valor = Integer.parseInt(number);

  if (valor &gt; maior)
    maior = valor;

  ++cont;

}

JOptionPane.showMessageDialog(null, "O maior valor e " + maior);

System.exit(0);

}

}

espero ter ajudado.

Um abraço!!


#7