Você está aqui: C ::: Dicas & Truques ::: Laços de Repetição |
Como somar os dígitos de um número em C usando o laço while - Solução para número inteiro de qualquer tamanhoQuantidade de visualizações: 407 vezes |
Em algumas situações nós precisamos obter e retornar a soma dos dígitos de um número inteiro positivo. Em nosso site você encontra alguns exemplos de como isso pode ser feito. No entanto, ao contrário das outras dicas, aqui eu mostro como somar os dígitos de um número informado pelo usuário sem fixar o seu tamanho, ou seja, não há limites para a quantidade de dígitos. Veja o código C completo para o exemplo: #include <stdio.h> #include <stdlib.h> // função principal do programa int main(int argc, char *argv[]){ // variáveis usadas na resolução do problema int numero, soma = 0; // vamos pedir um número inteiro positivo printf("Informe um número inteiro positivo: "); // lê o número informado scanf("%d", &numero); // enquanto o número for diferente de 0 while (numero != 0) { // adiciona à soma o resultado da divisão do número por 10 soma = soma + (numero % 10); // agora dividimos os número por 10 (divisão inteira) e continuamos numero = numero / 10; } // e mostramos o resultado printf("A soma dos dígitos é: %d", soma); printf("\n\n"); system("PAUSE"); return 0; } Ao executar este código C nós teremos o seguinte resultado: Informe um número inteiro positivo: 1273 A soma dos dígitos é: 13 |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de C |
Veja mais Dicas e truques de C |
Dicas e truques de outras linguagens |
wxWidgets - Como usar a classe wxFrame para criar a janela principal de suas aplicações C++ wxWidgets |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |