4)Qual o resultado da execução do seguinte programa,supondo que o usuário digite os valores 3 e 4?De uma maneira geral,o que faz este programa?
#include <iostream>
using namespace std;
int main(void)
{
    int i1, i2, j, k;
    cout << "Informe dois números: ";
    cin >> i1;
    cin >> i2;
    j = 0;
    k = i2;
    while(k > 0) {
        j += i1;
        k--;
    }
    cout << "\nResultado: " << j << endl;
    return 0;
}

Passo 1

O programa lê dois números inteiros, armazena-os em i1 e i2, e depois executa um laço que soma i1 a uma variável acumuladora j exatamente i2 vezes. Ao final, imprime o valor de j.

Passo 2

Supondo que o usuário digite i1=3 e i2=4, o programa faz:
j = 0,\quad k = i2 = 4
e entra no laço while(k>0).

Passo 3

A cada iteração do laço:
  • Soma i1 a j: após cada passo j passa por 3,6,9,12.
  • Decrementa k: vai de 4 até 0.
Quando k chega a zero, o laço termina e o valor final de j é 12.

Passo 4

De maneira geral, o programa calcula o produto de i1 por i2 usando soma repetida, pois soma i1 a si próprio i2 vezes.

Resposta

Quando o usuário digita 3 e 4, o programa exibe:
Resultado: 12
De forma geral, o programa realiza a multiplicação de dois inteiros por soma repetida.

Exercícios relacionados