Problema: 1150
Enunciado:
Faça um programa que leia dois inteiros: X e Z (devem ser lidos tantos valores para Z quantos necessários, até que seja digitado um valor maior do que X para ele). Conte quantos números inteiros devem ser somados em sequência (considerando o X nesta soma) para que a soma ultrapasse a Z o mínimo possível.
Escreva o valor final da contagem. A entrada pode conter, por exemplo, os valores 21 21 15 30. Neste caso, é então assumido o valor 21 para X enquanto os valores 21 e 15 devem ser desconsiderados pois são menores ou iguais a X. Como o valor 30 está dentro da especificação (maior do que X) ele será válido e então deve-se processar os cálculos para apresentar na saída o valor 2, pois é a quantidade de valores somados para se produzir um valor maior do que 30 (21 + 22).
Neste problema é feito a leitura de um valor z e verificado quando valores tem que ser somados até chegar no valor z, começando em x e incrementando de 1 em 1. A variável num é responsável por verificar quantos números precisaram ser somados.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | #include <iostream> using namespace std; int main() { int x,z; cin >> x >> z; while(z<=x){ cin >> z; } int soma = 0; int num = 0; while(soma <= z){ soma = soma+x; x++; num++; } cout << num << endl; return 0; } |
Nenhum comentário:
Postar um comentário