Primer za iskanje vseh Armstrongovih števil med dvema celo številoma. Za rešitev te težave smo uporabili stavek ugnezdene zanke in if.
Če želite razumeti ta primer, morate poznati naslednje programske teme Python:
- Izjava Python, če … drugače
- Python, medtem ko Loop
Pozitivno celo število se imenuje Armstrongova številka reda n, če
abcd… = a n + b n + c n + d n +…
Na primer
153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 // 153 je Armstrongova številka.
Obiščite to stran, če želite izvedeti, kako lahko v Pythonu preverite, ali je številka Armstrongova številka ali ne.
Izvorna koda
# Program to check Armstrong numbers in a certain interval lower = 100 upper = 2000 for num in range(lower, upper + 1): # order of number order = len(str(num)) # initialize sum sum = 0 temp = num while temp> 0: digit = temp % 10 sum += digit ** order temp //= 10 if num == sum: print(num)
Izhod
153 370 371 407 1634
Tu smo nastavili spodnjo mejo 100 pri spremenljivi spodnji in zgornjo mejo 2000 pri spremenljivi zgornji. Zanko smo uporabili za iteracijo od spremenljivke spodnje do zgornje. V ponovitvi se vrednost nižjega poveča za 1 in preveri, ali gre za Armstrongovo število ali ne.
Razpon lahko spremenite in preizkusite s spreminjanjem spodnjih in zgornjih spremenljivk. Upoštevajte, da mora biti spremenljivka spodnja nižja od zgornje, da bo ta program pravilno deloval.