como você colocou o i++ antes, você acrescentou +1 a variável de controle no caso o "i", então por conta disso sua contagem começou no 2 então ficou: 2+3+4+5+6+7+8+9+10+11, sendo assim fez as mesmas 10 repetições porém iniciando do valor incorreto.
Minha Solução #include #include int main(void){ setlocale(LC_ALL, "Portuguese"); int i = 0, f = 0, soma = 0; printf("Digite o número do inicial: "); scanf("%d", &i); printf("Digite o número do final: "); scanf("%d", &f); if (i < f) { for (;i 0) printf("+"); printf("%d ", i); soma += i; } printf(" Soma: %d ", soma); } else if (i > f) { for (;i >= f; i--){ if (i > 0) printf("+"); printf("%d ", i); soma += i; } printf(" Soma: %d ", soma); } else { printf("O número inicial é final são iguais. "); } return 0; }
Obrigado pelas excelente aula professor
Professor excelente.
Top Professor Pietro .....
professor, o codigo com o while ficou:
while(1
como você colocou o i++ antes, você acrescentou +1 a variável de controle no caso o "i", então por conta disso sua contagem começou no 2 então ficou:
2+3+4+5+6+7+8+9+10+11, sendo assim fez as mesmas 10 repetições porém iniciando do valor incorreto.
Excelente professor, mas trabalhar com o "if" dentro do "else" fica meio confuso... muitas chaves pra fechar!!!
Minha Solução
#include
#include
int main(void){
setlocale(LC_ALL, "Portuguese");
int i = 0, f = 0, soma = 0;
printf("Digite o número do inicial: ");
scanf("%d", &i);
printf("Digite o número do final: ");
scanf("%d", &f);
if (i < f) {
for (;i 0) printf("+");
printf("%d ", i);
soma += i;
}
printf("
Soma: %d
", soma);
} else if (i > f) {
for (;i >= f; i--){
if (i > 0) printf("+");
printf("%d ", i);
soma += i;
}
printf("
Soma: %d
", soma);
} else {
printf("O número inicial é final são iguais.
");
}
return 0;
}