Ir ao conteúdo
  • Cadastre-se

Exercício estrutura de repetição c++


William Grando

Posts recomendados

Bom dia pessoal!

 

Segue abaixo um exercício que já achei a resposta na internet porém não consegui entender a lógica por trás do código, como ele faz que o programa entenda que tem que somar todos os numeros até ele? Fiquei mais de hora lendo e não consegui entender a lógica. Parece bobagem por eu já ter a resposta mas preciso entender, porque tenho prova agora na quarta-feira. Preciso entender 100% estruturas de repetição, pois é o único conteúdo passado que tenho dificuldade na lógica. Valeu pessoal!

 

Faça um programa que pegue um número do teclado e calcule a soma de todos os números de 1 até ele. 
Ex: o usuário entra 7, o programa vai mostrar 28, pois 1+2+3+4+5+6+7=28

 

CÓDIGO:

 

#include <stdio.h> 
 

main(){ 

int numero=0, resultado=0; 

printf ("Digite o numero: \n"); 
scanf ("%d", &numero); 

    do{ 
    
    resultado=resultado+numero; 
    numero=numero-1; 
    
    }while(numero>=0); 
    printf("%d", resultado); 
         
}

Link para o comentário
Compartilhar em outros sites

Dentro do laço, resultado é um acumulador que recebe 0(pois voce declarou resultado=0)+7(numero digitado)=7(valor de resultado) na primiera vez, depois resultado recebe ele mesmo + numero-1 (7=7-1), ou seja resultado recebe 7+6 e assim vai até a condição ser falsa. A variável numero é sua variavel de controle e está sendo decrementada , ou seja, vai do 7( numero que o usuario digitou até 0) quando chega no 0 sai do laço pois a condição é falsa , no final imprime o resultado acumulado dentro do laço.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...