Boas!
Será que alguém me pode ajudar?!?
Necessito que o meu código imprima quantos números pares existem entre 1 e 50, mas dá sempre erros…
package domain;
public class Pares {
public static void main(String[] args) {
n = 1;
P = 0;
while (n <= 50) {
int a;
n = n + 1;
if (a % 2 == 0) {
a = P;
P = P + 1;
}
}
print("A quantidade de números pares é: ", P);
}
}
A lógica mais fácil é essa:
int pares = 50 / 2;
System.out.print("A quantidade de números pares é: " + pares);
Mas se realmente precisa fazer um laço, é só fazer assim:
int pares = 0;
int de = 1;
int ate = 50;
for (int numero = de; numero <= ate; numero++) {
if (numero % 2 == 0) {
pares++;
}
}
System.out.print("A quantidade de números pares é: " + pares);
1 curtida
Muito Obrigada!! Funcionou perfeitamente <3
Se for um exercício - que geralmente possuem restrições artificiais como “não pode” ou “deve” usar X - então pode ser que “exijam” que se use o operador %
dentro do for
.
Mas na verdade você pode fazer o seguinte: ajustar o valor inicial para garantir que ele seja um número par, e depois fazer o for
de 2 em 2:
int pares = 0;
int inicio = 1, fim = 50;
// se início é ímpar, ajusta para o próximo número par
if (inicio % 2 != 0) {
inicio++;
}
// aqui eu tenho certeza que inicio é par, então posso fazer o loop de 2 em 2
for (int i = inicio; i <= fim; i += 2) {
pares++;
}
System.out.println("A quantidade de números pares é: " + pares);
Ou seja, eu só faço o if
usando o %
uma única vez antes do for
. Depois, como agora eu tenho certeza que inicio
é par, eu posso fazer o for
de 2 em 2 (assim eu não preciso testar vários números durante o for
, e no final eu faço metade das iterações).
Se bem que não precisa de um loop, basta um cálculo simples:
int inicio = 1, fim = 50;
// se início é ímpar, ajusta para o próximo número par
if (inicio % 2 != 0) {
inicio++;
}
// se fim é ímpar, ajusta para o número par anterior
if (fim % 2 != 0) {
fim--;
}
int pares = ((fim - inicio) / 2) + 1;
System.out.println("A quantidade de números pares é: " + pares);
Ou seja, primeiro eu ajusto os valores inicial e final para serem números pares (o início eu ajusto para o próximo, e o final eu ajusto para o anterior). Depois basta fazer uma conta simples para saber a quantidade.
2 curtidas