Calculate the product within a for loop

Asked

Viewed 39 times

-2

I need to calculate the product of 3 numbers inside a loop for, but the code I made is going wrong, multiplying something bizarre that I couldn’t even understand, for example, if I input 1, 1, 1, it returns 16. How to calculate a product within a C for loop? Follows the code:

int main()
{
    setlocale(LC_ALL, "Portuguese");

    int num, soma, produto, menor, maior = 1;

    for(int n = 0; n < 3; n++){
        printf("Digite o número %i: ", n + 1);
        scanf("%i", &num);
        soma = soma + num;
        produto = produto * num;


    }
printf("Soma: %i\n", soma);
printf("Produto: %i", produto);
    return 0;
}

1 answer

2


The sum variable must be initialized soma = 0 and also the variable produto = 1. Otherwise they’ll be getting garbage and the calculations go wrong.

#include <stdio.h>
int main()
{

  int num, soma=0, produto=1, menor, maior = 1;

  for(int n = 0; n < 3; n++){
      printf("Digite o número %i: ", n + 1);
      scanf("%i", &num);
      soma = soma + num;
      produto = produto * num;
  }
  printf("Soma: %i\n", soma);
  printf("Produto: %i", produto);
  return 0;
 }

Browser other questions tagged

You are not signed in. Login or sign up in order to post.