Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Francine Guimarães

Java problemas com laço while

Recommended Posts

Eu preciso criar um programa, usando o while e if, que receba um inteiro do usuário e mostre, separadamente, todos os números pares e ímpares, do 0 até o número que a pessoa digitou, ma não consigo entender de jeito nenhum como eu faço isso. 

Da maneira que estou fazendo, cria um loop infinito com "true"

O código está assim no momento:

 

  Scanner entrada = new Scanner (System.in);

	  int num;

	   System.out.println("Digite um número: ");

	   num = entrada.nextInt();

	   while(num>0){

	       System.out.println("Números pares: "+(num++%2==0));

	       num++;

	      

	      }

	   while(num>0){

	       System.out.println("Números ímpares: "+(num++%2!=0));

	   }

	  }   

	 

	      }
  • Amei 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, tudo bem?

Captei sua sinapse, mas existe maneira bem melhore de se fazer isso; 

começando com while, if-else e somente um de cada.

  • [N1] Enquanto numero é maior (e igual) a 0 faça
  • [N2] Se numero mod 2 é diferente de 0 é ímpar, senão é par.
  • [N3] repete. 

 

Ok tchau!

 

 

Editado por AnsiC
Correção
  • Curtir 2

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mude o seu laço while coloque algo assim

int result, num, i = 0;

 System.out.println("Digite um número: ");

 num = entrada.nextInt();


 while(num>i){
	 result = i%2;
	 if (result == 1) 
	 	{
		 	System.out.println("Números pares: "+i);
	 	}
	 i++;
    }

Vai funcionar, testa ai e poste o resultado. Abraços

  • Curtir 2

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Francine Guimarães Olá. Se a resposta pode ser apresentada fazendo uso de dois whiles uma forma de resolver o exercício seria essa:

import java.util.Scanner;

public class Aplicacao {

    public static void main(String[] args) {

        Scanner entrada = new Scanner(System.in);
        int num;
        int i;
		
        System.out.print("Digite um número: ");
        num = entrada.nextInt();		
		
        System.out.print("Números pares: ");
        i = 0;
        while (i <= num) {
            if (i % 2 == 0 && i != 0) {
                System.out.print(i + " ");
            }
            i++;
        }
		
        System.out.println();
		
        System.out.print("Números ímpares: ");
        i = 0;
        while (i <= num) {
            if (i % 2 != 0) {
                System.out.print(i + " ");
            }
            i++;
        }
    }
}

 É apenas uma sugestão

  • Curtir 3

Compartilhar este post


Link para o post
Compartilhar em outros sites

@edifesf10 eu nunca entendo o que é aquele i no código 

adicionado 2 minutos depois

eu já consegui resolver o problema galera, obrigada mesmo

  • Curtir 2
  • Obrigado 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
25 minutos atrás, Francine Guimarães disse:

@edifesf10 eu nunca entendo o que é aquele i no código 

adicionado 2 minutos depois

eu já consegui resolver o problema galera, obrigada mesmo

O i é uma variável do tipo inteiro que geralmente usamos nos laços if, while, for, etc. Mas você pode usar qualquer outra variável do tipo inteiro sem problemas.

  • Curtir 2

Compartilhar este post


Link para o post
Compartilhar em outros sites

@edifesf10 ah sim, entendi, muito obrigada!

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário






Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×