36_OSSZEADAS_1.py

36_OSSZEADAS_1.py

n = 8 

a = [1, 2, 4, 6, 2, 3, 0] 

b = [6, 9, 8, 3, 8, 0, 0] 

c = [0] * n 

t = 0 

for i in range(6, -1, -1): 

     osszeg = a[i] + b[i] + t 

     c[i+1] = osszeg % 10 

      t = osszeg // 10 

c[0]=t

print(*c) 


Az összeadás hősei: A számok kalandja

Egyszer volt, hol nem volt, volt egyszer egy kisváros, ahol a számok különleges életet éltek. Az 1-es, 2-es, 4-es, 6-os, 2-es, 3-as és 0-s számok egy varázslatos sorozat részei voltak, akárcsak a 6-os, 9-es, 8-as, 3-as, 8-as, 0-s és 0-s számok. Egy nap a számok rájöttek, hogy szükségük van egy tervre, hogy együttműködve valami nagyobbat alkossanak. Ekkor érkezett Liza, a város fiatal programozója, aki vállalta, hogy megoldja a problémát a segítségükkel. "Megoldjuk ezt egy kis programmal!" – mondta Liza, és elővette laptopját, hogy megírja az "OSSZEADAS_1.py" nevű programot. Először meghatározta a számok hosszát: 

n = 8 

"Mivel mindkét sorozat 7 számjegyből áll, n értékét 8-ra állítjuk" – magyarázta. Ezután beírta az első és a második számjegysorozatot:

a = [1, 2, 4, 6, 2, 3, 0] 

b = [6, 9, 8, 3, 8, 0, 0] 

"Ezek a sorozatok képviselik az összeadandó számokat!" – tette hozzá izgatottan. "Most készítünk egy helyet az eredménynek" – folytatta, és megírta a következő sort: 

c = [0] * n 

"Ez a lista tele lesz nullákkal, amíg ki nem számítjuk az összeget." Ezután beállította a kezdeti átvitel értékét: 

t = 0 

"Az t változó az átvitel tárolására szolgál, ha két számjegy összege meghaladja a 10-et." Liza ezután megírta a ciklust, amely végighalad a számjegyeken: 

for i in range(6, -1, -1):

"Ez a ciklus biztosítja, hogy minden számjeggyel foglalkozzunk" – magyarázta. A belső számításokat így végezte el:

      osszeg = a[i] + b[i] + t 

"Összeadjuk az aktuális számjegyeket és az esetleges átvitel értékét." A maradékot az aktuális számjegy helyére írta: 

      c[i+1] = osszeg % 10 

"Az osszeg % 10 biztosítja, hogy csak a maradékot kapjuk meg, ami az adott helyértékre kerül." 

Végül frissítette az átvitel értékét:

      t = osszeg // 10 

"Ez az osszeg // 10 kiszámítja, hogy mekkora az átvitel a következő helyértékre." 

c[0]=t

print(*c) 

Kiírja az eredménylistát szóközökkel elválasztva.