Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Dúvida no Ex. 6 da Aula 2 - Condicionais e Loops com Ifs, Fors e Whiles

#include <stdio.h>
int main() {
  int soma = 0;
  for(int i = i; i <= 100; i++) {
    soma = soma + i;
  }
  printf("A soma eh %d", soma);
}

Não sei se essa é a área correta onde posso dar sugestões sobre os exercícios, mas se não for desculpem.

Seguinte, no exercício 6 - Aula 2, essa é a sugestão dada pelo instrutor. Mas podem ver que a solução está incorreta,

Uma vez que digo que "int i = i", estou pegando lixo de memória e também não sei qual o valor que contém dentro da variável.

Creio que a resposta dada pelo exercício esteja incorreta.

3 respostas
solução!

Luan , Bom dia !

acredito que esteja errado a resposta do instrutor e seria i = 0 .

Bem observado , Obrigado

Na verdade, acredito que seja int i = 1, já que a instrução seguinte trata-se de i <= 100. Seria int i = 0 caso i fosse somente menor que 100.

Estou com uma dúvida nessa questão também, visto que tive a mesma lógica mas, ao pensar demais sobre ela, me pareceu incorreta. Sigam meu raciocínio...

int soma = 0;

int i = 1 (que eu adotei)...

soma = soma + i;

Agora, vamos lá! A variável soma está com valor 0 no início e terá valor 1 após a iteração, visto que i é 1. Portanto, soma = 1. No próximo loop, com i = 2, já que i++ (i era 1 e passou a ser 2), a variável soma terá valor 3! soma (1) = soma (1) + i(2); Não é isso??

Acho que estou ficando doida... kkkk

Aff, abstraiam, está corretíssimo! kkkkk Obviamente segue o que se pede. É 3, já que 1+2 = 3. Dããã... kkkk Depois virá 3 (soma = 3) + 3, que será soma = 6 e assim sucessivamente...

Fiquei doida porque soma = 2 havia sumido, sendo que esse valor realmente não existe. :D

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