Python-program for å finne Armstrong-nummer i et intervall

Eksempel for å finne alle Armstrong-tallene mellom to heltall. For å løse dette problemet har vi brukt nestet loop og if-setning.

For å forstå dette eksemplet, bør du ha kunnskap om følgende Python-programmeringsemner:

  • Python hvis … annet uttalelse
  • Python mens Loop

Et positivt heltall kalles et Armstrong antall ordre n hvis

abcd … = a n + b n + c n + d n + …

For eksempel,

 153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 // 153 er et Armstrong-tall. 

Besøk denne siden for å lære hvordan du kan sjekke om et nummer er et Armstrong-nummer eller ikke i Python.

Kildekode

 # 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) 

Produksjon

 153 370 371 407 1634 

Her har vi satt nedre grense 100 i variabel nedre og øvre grense 2000 i variabel øvre. Vi har brukt for loop for å gjenta fra variabel nedre til øvre. I iterasjon økes verdien av lavere med 1 og sjekkes om det er et Armstrong-nummer eller ikke.

Du kan endre rekkevidden og teste ved å endre variablene nedre og øvre. Merk at den variable variabelen skal være lavere enn den øvre for at dette programmet skal fungere skikkelig.

Interessante artikler...