1
resposta

diferença de resultados entre códigos (C)

O primeiro código está em português feito pelo professor, o segunda está em inglês feito por mim, ambos com objetivo de mostrar a soma entre os numeros por exemplo : 1 + 1 = 2 +2 = 4 + 3 = 7..., chegando assim no ultimo número, porém o resultado final do professor fica diferente do meu, gostaria de saber onde foi meu erro.

Código do professor :

#include <stdio.h>

int main() {
  int soma = 0;
  for(int i = 1; i <= 100; i++) {
    soma = soma + i;
  }

  printf("A soma eh %d", soma);
}

meu código :


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

int sum = 0;
    for (int i = 1; i<100 ; i++) {
 sum = sum + i ;
   // printf ("%d + %d = %d\n",beggining,end,sum);

 }
 printf ("the result is %d\n", sum);
}
1 resposta

Olá, Gabriel!

O problema no seu código está na condição do loop "for". No código do professor, a condição é "i <= 100", o que significa que o loop irá incluir o número 100 na soma. No seu código, a condição é "i < 100", o que significa que o loop irá parar no número 99, não incluindo o 100 na soma.

Espero ter ajudado e bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software