Elabore um algoritmo em
que solicite um número para o usuário e diminua
deste número até que ele fique menor que 2 . Imprima o valor final e a quantidade de vezes que teve que fazer a operação.
Passo 1
Beleza, vamos ver o que você precisa fazer aqui! O exercício pede para criar um algoritmo em C++ que:
- Solicite um número para o usuário.
- Diminua 10% desse número repetidamente até que ele fique menor que 2.
- Imprima o valor final e a quantidade de vezes que a operação foi realizada.
Para resolver isso, vamos precisar entender conceitos básicos de programação como entrada de dados, variáveis, loops (laços de repetição) e operações matemáticas. Vamos usar um loop
while
para continuar diminuindo o número até que a condição seja atendida.Passo 2
Primeiro, vamos solicitar um número do usuário e armazená-lo em uma variável. Em C++, usamos
std::cin
para ler a entrada do usuário.double numero;
std::cout << "Digite um número: ";
std::cin >> numero;
Aqui,
double
é usado para permitir números com casas decimais, já que vamos trabalhar com porcentagens.Passo 3
Agora, precisamos diminuir 10% do número até que ele fique menor que 2. Para isso, vamos usar um loop
while
que continua executando enquanto o número for maior ou igual a 2.Dentro do loop, vamos calcular 10% do número e subtrair esse valor dele.
A fórmula para calcular 10% de um número
n
é:Então, a cada iteração, fazemos:
Passo 4
Além de diminuir o número, precisamos contar quantas vezes a operação foi executada. Para isso, vamos usar uma variável contador que começa em zero e aumenta a cada iteração do loop.
int contador = 0;
while (numero >= 2) {
double dez_porcento = 0.10 * numero;
numero -= dez_porcento;
contador++;
}
Aqui,
contador++
aumenta o valor de contador
em 1 a cada vez que o loop é executado.Passo 5
Depois que o loop termina, significa que o número ficou menor que 2. Agora, vamos imprimir o valor final do número e a quantidade de vezes que diminuímos 10% dele.
std::cout << "Valor final: " << numero << std::endl;
std::cout << "Quantidade de vezes que diminuiu 10%: " << contador << std::endl;
Resposta
Aqui está o código completo em C++ que resolve o exercício:
#include <iostream>
int main() {
double numero;
int contador = 0;
std::cout << "Digite um número: ";
std::cin >> numero;
while (numero >= 2) {
double dez_porcento = 0.10 * numero;
numero -= dez_porcento;
contador++;
}
std::cout << "Valor final: " << numero << std::endl;
std::cout << "Quantidade de vezes que diminuiu 10%: " << contador << std::endl;
return 0;
}
Explicação rápida:
- Entrada de Dados: O programa pede para o usuário digitar um número.
- Loop
while
: Enquanto o número for maior ou igual a 2, calcula 10% desse número e subtrai do valor atual. - Contador: Conta quantas vezes a operação de diminuir 10% foi realizada.
- Saída: Mostra o valor final do número após as subtrações e quantas vezes foi feito isso.
Exemplo de Funcionamento:
- Se o usuário digitar
100
, o programa vai diminuir 10% (10) resultando em90
, depois81
,72.9
, e assim por diante, até que o número fique menor que2
. Ele então imprimirá o valor final e quantas vezes a operação foi feita.
Exercícios relacionados
Elabore um programa em
que preencha um vetor de 5 posições somente com números pares e inteiros.
Elabore uma função em C++ que receba 2 números inteiros e retorne o resto da divisão do maior pelo menor.
Faça um algoritmo em
que calcule a soma dos números digitados pelo usuário até ele digitar o número 0 .
Faça um algoritmo em
que calcule a média de 12 números digitados pelo usuário.