Príklad na nájdenie všetkých čísel Armstronga medzi dvoma celými číslami (zadaných používateľom) pomocou slučiek a príkazu if … else.
Aby ste pochopili tento príklad, mali by ste mať znalosti nasledujúcich programovacích tém C ++:
- C ++ ak, ak … inak a Vnorené, ak … inak
- C ++ pre slučku
Tento program požiada používateľa o zadanie dvoch celých čísel a zobrazí všetky Armstrongove čísla medzi daným intervalom.
Ak neviete, ako skontrolovať, či je číslo v programovaní Armstrongom alebo nie, potom sa tento program môže javiť ako málo zložitý.
Na tejto stránke nájdete informácie o čísle Armstronga a o tom, ako to skontrolovať v programovaní v C ++.
Príklad: Zobraziť Armstrongovo číslo medzi intervalmi
#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; )
Výkon
Zadajte prvé číslo: 100 Zadajte druhé číslo: 400 Armstrongove čísla medzi 100 a 400 sú: 153 370 371
V tomto programe sa predpokladá, že používateľ vždy najskôr zadá menšie číslo.
Tento program nebude vykonávať zamýšľanú úlohu, ak užívateľ najskôr zadá väčšie číslo.
Ak chcete, aby tento program fungoval správne, môžete pridať kód na výmenu dvoch čísel zadaných používateľom, ak používateľ najskôr zadá väčšie číslo.
V tomto programe je každé číslo medzi intervalmi brané a uložené v premennej num. Potom sa každá číslica čísla získa v číslici a kockuje sa (3).
Výsledok v kockách sa pripočíta k výsledku v kockách poslednej súčty číslic.
Nakoniec, keď sa prejde každou číslicou, porovná sa súčet s pôvodným číslom i. Ak sú rovnaké, číslo je ozbrojené číslo.