Fiz este codigo, mas esta dando errado digitei 4 e só apareceu 0.
exemplo
>36
>23
>10
>1
Resposta 0
O correto seria:
maior numero encontrado foi 36. Mas nao da certo…
import javax.swing.JOptionPane.*;
public class Maior_num
{
public static void main(String args[])
{
String a;
int aux,maior,num,cont;
cont = 1;
while(cont<=4)
{
a = javax.swing.JOptionPane.showInputDialog("Digite 4 numeros : ");
num = Integer.parseInt(a);
maior = 0;
aux = 0;
if(num>maior)
{
num = aux;
aux = maior;
}
cont++;
}
System.out.println("O maior numero lido e: " + maior);
System.exit(0);
}
O Problema é que maior não recebe nenhum valor diferente de zero
public class oi
{
public static void main(String args[])
{
String a;
int num;
int cont;
int maior = 0;
cont = 1;
while(cont<=4)
{
a = javax.swing.JOptionPane.showInputDialog("Digite 4 numeros : ");
num = Integer.parseInt(a);
if(num>maior)
{
maior = num;
}
cont++;
}
System.out.println("O maior numero lido e: " + maior);
System.exit(0);
}
}
O aux você usa quando for ordenar uma sequência de números. Mas aí você tem que usar um array.
Para obter os n maiores números ordena os números em um array e pega o últimos n números (se você ordenou em ordem crescente).
Um exemplo de “ordenador”:
[code]class Exemplo0804
{
public static void main (String args[])
{
int N[]=new int[10]; //cria um array com 10 elementos
for (int i=0;i<10;i++)
{ // armazena os argumentos no array
System.out.println("Digite o numero " + (i+1));
N[i]=Diversos.leNumeroInt(0,1000);
if (N[i]==-1) // foi digitado um numero invalido
i–; // retorna o indice;
}
N=ordenaArrayInt(N); //ordena o array
System.out.println("Em ordem crescente: ");
mostraArray(N); //mostra o array
}
public static int[] ordenaArrayInt(int arr[])
{
int x,y,aux;
for(x=0;x<arr.length;x++)
for (y=0;y<arr.length;y++)
{
if(arr[x]<arr[y])
{
aux=arr[y];
arr[y]=arr[x];
arr[x]=aux;
}
}
return arr;
}
dê preferência a usar length nos seus “for”, como em:
x<arr.length
Se você mudar o tamanho do array não precisa ficar se preocupando em alterar cada “for” para o novo tamanho.
Diferenças entre length e length():
length é uma variável que todo array tem indicando o número de elementos do array
length() é um método da classe String que retorna o tamanho da string