Przykład znalezienia wszystkich liczb Armstronga między dwiema liczbami całkowitymi (wprowadzonymi przez użytkownika) przy użyciu pętli i instrukcji if… else.
Aby zrozumieć ten przykład, powinieneś znać następujące tematy programowania w języku C ++:
- C ++ if, if… else i Nested if… else
- C ++ dla pętli
Ten program prosi użytkownika o wprowadzenie dwóch liczb całkowitych i wyświetla wszystkie liczby Armstronga w podanym przedziale.
Jeśli nie wiesz, jak sprawdzić, czy liczba jest Armstrongiem, czy nie w programowaniu, ten program może wydawać się mało złożony.
Odwiedź tę stronę, aby dowiedzieć się więcej o numerze Armstronga i jak go sprawdzić w programowaniu C ++.
Przykład: Wyświetl numer Armstronga między przedziałami
#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; )
Wynik
Wpisz pierwszą liczbę: 100 Wpisz drugą liczbę: 400 Numery Armstronga od 100 do 400 to: 153370 371
W tym programie zakłada się, że użytkownik zawsze najpierw wprowadza mniejszą liczbę.
Ten program nie wykona zamierzonego zadania, jeśli użytkownik wpisze najpierw większą liczbę.
Możesz dodać kod, aby zamienić dwie liczby wprowadzone przez użytkownika, jeśli użytkownik wpisze najpierw większą liczbę, aby program działał poprawnie.
W tym programie każda liczba między interwałem jest pobierana i zapisywana w zmiennej num. Następnie każda cyfra liczby jest pobierana jako cyfra i dzielona na kostkę (3).
Wynik w postaci kostki jest dodawany do wyniku w postaci ostatniej cyfry sumy.
Wreszcie, po przekroczeniu każdej cyfry, suma jest porównywana z pierwotną liczbą i. Jeśli są równe, liczba jest liczbą Armstronga.