Programa C ++ para exibir o número Armstrong entre dois intervalos

Exemplo para encontrar todos os números Armstrong entre dois inteiros (inseridos pelo usuário) usando loops e instrução if… else.

Para entender este exemplo, você deve ter conhecimento dos seguintes tópicos de programação C ++:

  • C ++ if, if … else e aninhado if … else
  • C ++ para Loop

Este programa pede ao usuário para inserir dois inteiros e exibe todos os números Armstrong entre o intervalo dado.

Se você não sabe como verificar se um número é Armstrong ou não na programação, este programa pode parecer um pouco complexo.

Visite esta página para saber mais sobre o número Armstrong e como verificá-lo na programação C ++.

Exemplo: Exibir o número Armstrong entre os intervalos

 #include using namespace std; int main() ( int num1, num2, i, num, digit, sum; cout <> num1; cout <> num2; cout << "Armstrong numbers between " << num1 << " and " << num2 << " are: " << endl; for(i = num1; i 0; num /= 10) ( digit = num % 10; sum = sum + digit * digit * digit; ) if(sum == i) ( cout << i << endl; ) ) return 0; ) 

Resultado

 Insira o primeiro número: 100 Insira o segundo número: 400 Os números Armstrong entre 100 e 400 são: 153 370 371 

Neste programa, presume-se que o usuário sempre insere o número menor primeiro.

Este programa não executará a tarefa pretendida se o usuário inserir um número maior primeiro.

Você pode adicionar o código para trocar dois números inseridos pelo usuário se o usuário inserir um número maior primeiro para fazer este programa funcionar corretamente.

Neste programa, cada número entre o intervalo é obtido e armazenado na variável num. Em seguida, cada dígito do número é recuperado em dígitos e em cubos (3).

O resultado ao cubo é adicionado ao resultado ao cubo da soma do último dígito.

Finalmente, quando cada dígito é percorrido, a soma é comparada com o número original i. Se eles forem iguais, o número é um número armstrong.

Artigos interessantes...