Ir ao conteúdo

Posts recomendados

Postado

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
Postado

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!

 

 

  • Curtir 1
Postado

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
Postado

@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

Postado
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 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!