Ajuda em um exercício  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
el_loko
JavaEvangelist

Membro desde: 30/10/2007 12:09:43
Mensagens: 357
Offline

Olá Galera boa noite...

Estou estudando Java e fazendo alguns exercícios de uma apostila, em um dos exercícios me deparei com um problema que não consigo resolver. (Trata-se talvez mais de Lógica).
O enunciado pede para que o usuário entre com 4 números e que eu os coloque na ordem lida (até aqui eu fiz)



Depois o programa pede para que eu coloque os números dados pelo usuário de forma crescente e decrescente, mais sem usar vetor, apenas usando o If-Else...
Comecei a fazer o seguinte:



Mais não sei se estou fazendo a coisa certa nessa parte do If-Else...
Será que alguém podia me ajudar com essa parte?

desde já agradeço...
caiortp
JavaBaby

Membro desde: 31/08/2006 14:42:27
Mensagens: 77
Localização: Santa Rita do Sapucaí - MG
Offline


if (num1>num2 & num1>num3 & num1>num4){
System.out.println (num1); }
else if (num2>num3 & num2>num4){
System.out.println (num2);}
else if (num3>num2 & num3>num4){
System.out.println (num3);}
else
System.out.println (num4);}


deve estar dando problema na comparação

mfjeng
JavaChild

Membro desde: 31/03/2006 14:01:52
Mensagens: 141
Offline

Procure por BubbleSort( Ordenação pelo método da bolha ). Utilize operadores de curto-circuito nas suas operações condicionais (&& ou ||), caso não saiba o porquê, dê uma pesquisada no google para ver a diferença entre eles.







el_loko
JavaEvangelist

Membro desde: 30/10/2007 12:09:43
Mensagens: 357
Offline

Na realidade faltou mesmo o outro operador &

Mais a minha dúvida não é essa na verdade...

gostaria de saber como eu faço para colocar os números digitados em ordem crescente e decrescente usando o If-Else.

Isso que eu coloquei ai foi apenas um esboço do que eu estava pensando...Mais não sei se essa Lógica esta certa.


el_loko
JavaEvangelist

Membro desde: 30/10/2007 12:09:43
Mensagens: 357
Offline

mfjeng
Eu até já ouvi falar desse método, mais como eu falei no enunciado não posso usar vetor para resolver essa questão, tenho que usar apenas o If-Else.

Mais agradeço a sua ajuda.
mpereira
HelloWorld
[Avatar]

Membro desde: 12/03/2008 18:22:01
Mensagens: 13
Localização: Jacareí - SP
Offline

Fala Loko!

Carinha tu é loko querendo um código desses, mas topei o desafio!

O caminho creio que é este, mas me enrrolei no final.
Os 3 primeiros ele ordena mas repete o terceiro no quarto; agora eu que te peço ajuda. Você consegue descobrir onde errei? Creio que é nos "else's".

Lá vai:



Um abraço!!!

Marcelo
[Email] [MSN]
el_loko
JavaEvangelist

Membro desde: 30/10/2007 12:09:43
Mensagens: 357
Offline

É verdade Marcelo é coisa de louco mesmo, to fazendo jus ao apelido...


No código que você postou realmente tem um esse problema da repetição dos números. Eu não identifiquei o erro no código, mais ele nunca retorna o menor valor digitado e sim repete o segundo menor.

Eu to tentando entender a lógica que você usou pra fazer isso. Acho que tenho que ler um pouco mais sobre o uso do "If". Eu pensei que se usar o "Else-If" ficaria mais fácil nesse código.

De qualquer forma muito obrigado pela paciência
fico agradecido...

abraço
sephct
JavaTeenager

Membro desde: 17/09/2007 20:23:40
Mensagens: 177
Offline

Em vez de colocar tantos If's e else's tente se informar sobre recursividade, creio que da pra resolver dessa forma.
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team