Faça um algoritmo em C++ que calcule o quadrado dos números pares digitados pelo usuário até ele digitar um número menor que 1.
OBS: Se o usuário digitar um número impar você deve informa-lo que não irá calcular o quadrado deste número pois ele é ímpar.
OBS: Se o usuário digitar um número impar você deve informa-lo que não irá calcular o quadrado deste número pois ele é ímpar.
Passo 1
Vamos entender o que o exercício pede. Precisamos criar um programa em C++ que:
- Receba números digitados pelo usuário.
- Calcule o quadrado desses números se eles forem pares.
- Informe ao usuário que não irá calcular o quadrado se o número for ímpar.
- O programa deve continuar recebendo números até que o usuário digite um número menor que 1.
Para resolver isso, vamos precisar saber:
- Como receber entradas do usuário em C++ (
cin
). - Como verificar se um número é par ou ímpar usando operadores matemáticos.
- Como calcular o quadrado de um número.
- Como usar estruturas de repetição (
while
oudo-while
) para continuar recebendo números até a condição de parada.
Passo 2
Primeiro, vamos configurar o nosso programa em C++ incluindo as bibliotecas necessárias e a função principal
main
. As bibliotecas básicas como iostream
serão usadas para entrada e saída de dados.Passo 3
Dentro da função
main
, vamos declarar uma variável para armazenar o número digitado pelo usuário. Por exemplo:int numero;
Passo 4
Agora, queremos que o programa continue pedindo números até que o usuário digite um número menor que 1. Para isso, usaremos um laço de repetição
while
. A condição será que o número seja maior ou igual a 1:while (numero >= 1) {
// código para processar o número
}
Passo 5
Antes do laço, precisamos inicializar a variável
numero
para que o laço possa começar. Podemos fazer isso pedindo ao usuário para digitar o primeiro número antes do laço:cout << "Digite um número (menor que 1 para sair): ";
cin >> numero;
Passo 6
Dentro do laço, vamos verificar se o número é par ou ímpar. Para isso, usamos o operador módulo
%
, que nos dá o resto da divisão do número por 2. Se o resto for 0, o número é par:if (numero % 2 == 0) {
// calcular o quadrado
} else {
cout << "O número " << numero << " é ímpar. Não será calculado o quadrado.\n";
}
Passo 7
Se o número for par, vamos calcular o quadrado dele. O quadrado de um número é o próprio número multiplicado por ele mesmo. Em C++, isso pode ser feito facilmente:
int quadrado = numero * numero;
cout << "O quadrado de " << numero << " é " << quadrado << ".\n";
Passo 8
Após processar o número, precisamos pedir ao usuário para digitar o próximo n��mero dentro do laço, para que a condição seja reavaliada. Então, adicionamos:
cout << "Digite um número (menor que 1 para sair): ";
cin >> numero;
Passo 9
Por fim, vamos juntar tudo e finalizar o programa. Lembre-se de retornar 0 no final da função
main
para indicar que o programa terminou corretamente.Resposta
O programa completo em C++ ficará assim:
#include <iostream>
using namespace std;
int main() {
int numero;
cout << "Digite um número (menor que 1 para sair): ";
cin >> numero;
while (numero >= 1) {
if (numero % 2 == 0) {
int quadrado = numero * numero;
cout << "O quadrado de " << numero << " é " << quadrado << ".\n";
} else {
cout << "O número " << numero << " é ímpar. Não será calculado o quadrado.\n";
}
cout << "Digite um número (menor que 1 para sair): ";
cin >> numero;
}
cout << "Programa encerrado.\n";
return 0;
}
Esse programa continuará solicitando números ao usuário, calculará o quadrado se o número for par, informará se for ímpar, e encerrará quando um número menor que 1 for digitado.
Exercícios relacionados
Faça um algoritmo em C++ que calcule e imprima a metade do número digitado pelo usuário até ele digitar um número negativo.
Elabore um algoritmo em C++ que solicite o tamanho de uma barra de metal e calcule quantos pedaços de 3,5 metros podemos partir o tamanho digitado. Imprima também o tamanho que sobrará da barra.
Elabore uma função em
que receba 3 números reais e retorne a média destes números.
Elabore uma função em C++ que receba 2 números inteiros e retorne o resto da divisão do maior pelo menor.