Tuesday, April 14, 2020

Prvi razred - Lekcija 3 - Celi i realni brojevi

Час 8 - Цели и реални бројеви, дељење

Цели и реални бројеви

До сада смо у задацима користили само природне бројеве. Језик Python подржава и рад са целим бројевима (који укључују и негативне вредности) и они се записују на исти начин као у математици. На пример, вредност израза 3 - 8 је -5 док је вредност израза (-3) - (-8) број 5. На енглеском се цели бројеви називају integers, па се за променљиве и изразе чија је вредност целобројна каже да су типа int.
Реалне бројеве је такође веома једноставно користити, једино што се уместо децималног зареза на који смо навикли у математици мора користити децимална тачка. Тако се, на пример, број 2,5 записује као 2.5. За реалне бројеве у рачунару се кажу да су записани у облику покретног зареза (енгл. floating point), па се за променљиве и изразе чија је вредност реалне кажу да су вредност типа float.
Решимо сада и неколико задатака који укључују и рад са бројевима који нису природни.

Бајкалско језеро

Бајкалско језеро у Русији је најдубље језеро на свету. Оно је криптодепресија јер се његово дно (најнижа тачка) налази на 1,181 километара испод нивоа мора, а површина му се налази на 456 метара надморске висине. Израчунај његову највећу дубину у метрима.
../_images/kriptodepresije.png
1
nivo_povrsine = 456
2
nivo_dna = -1.181 * 1000
3
dubina = nivo_povrsine - nivo_dna
4
print(dubina)
5
(бајкалско_језеро)
Криптодепресија је удубљење испуњено водом, чија је површина изнад нивоа мора, а дно испод нивоа мора. Потиче од грчке речи крипто, што значи скривен или тајан, и речи депресија, што у географији представља израз за предео нижи од нивоа површине мора. Криптодепресије су углавном језера. Највећа криптодепресија на свету је управо Бајкалско језеро, а у Европи је то језеро Ладога. На Балканском полуострву највећа криптодепресија је Скадарско језеро на граници Црне Горе и Албаније. Криптодепресије обично настају када се раседи и расцепи у земљиној кори испуне водом.

Куповина намирница

Марко је купио 0,45 kg саламе, 0,25 kg сира и два паковања од по 0,3 kg шунке. Колико је тешка кеса коју носи кући?
1
salama = 0.45
2
sir = 0.25
3
sunka = 0.3
4
print(salama + sir + 2 * sunka)
5
(маса_производа)

Банковни рачун

Ђура је уплатио летовање пре него што је добио плату и ушао је у тзв. дозвољени минус тј. након те уплате дуговао је банци 12.376,5 динара. Три дана касније на рачун му је уплаћена плата од 43.386,9 динара. Колико му је тада било стање на рачуну.
Допуни наредни програм тако да коректно решава тражени задатак
1
stanje_pre =
2
uplata =
3
stanje_posle =
4
print(stanje_posle)
5
(банковни_рачун)
Након покретања, програм треба да испише вредност 31010.4.
Исправи сада програм тако да се почетно стање и износ уплате учитава на почетку рада програма. Подсетимо се, учитавање реалног броја може се извршити помоћу float(input("...")).

Реално дељење

У наставку ћемо се посветити операцији дељења. У већини програмских језика разликују се два облика дељења: реално и целобројно. Резултат (количник) реалног дељења је реалан број (на пример, када се 13 реално дели са 4, добија се количник 3,25), док је код целобројног дељења количник увек цео број, при чему је могуће да постоји и целобројни остатак (на пример, када се 13 целобројно дели са 4, добија се количник 3 и остатак 1).
Реалним дељењем се могу делити и реални и цели бројеви, а резултат је реалан број. На пример, ако се користи реално дељење тада је 7,5 : 2,5 једнако 3 док је 5 : 2 једнако 2,5. Реално дељење се у језику Python3 обележава знаком /. Тако је вредност израза 7.5 / 2.5 једнака 3.0.
Провери своје знање наредним питањем.
Вредност израза 4.5 / 5 је 



Посматрајмо наредни једноставан задатак у којем ћемо употребити реално дељење.

Просек скокова у даљ

Скакач у даљ је у квалификацијама у првој серији скочио 8,12, у другој 8,23, а у трећој 8,17 метара. Колико је износио његов просечни скок?
../_images/skok_u_dalj.jpg
Просек (каже се и аритметичка средина) неколико бројева једнак је количнику њиховог збира и њиховог броја. Са просеком сте се сигурно већ срели када сте рачунали просек својих оцена. Дакле, да бисмо решили овај задатак потребно је сабрати дужине сва три скока и поделити са три.
1
skok1 = 8.12
2
skok2 = 8.23
3
skok3 = 8.17
4
prosek = (skok1 + skok2 + skok3) / 3
5
print(prosek)
6
(Просек_скокова)

Сложени израз из збирке из математике

У једној збирици из математике за шести разред јавља се задатак у коме се тражи да се израчуна вредност израза 1 + (3 - (-4)) : 2 + 0,7. Израчунај ту вредност у Python-у.
1
print(1 + (3 - (-4)) / 2 + 0.7)
2
(Сложени_израз_са_дељењем)

Израчунај вредност израза 7+4(5)(3)27 у Python-у.
1
print()  # popravi ovaj red
2
(Сложени_израз_са_дељењем_1)
Ако урадиш све како треба, добићеш резултат 6.3076923076923075.

Полице са књигама

На првој полици има 150 књига. На другој има дупло мање него на првој, а на трећој три пута мање него на другој. Колико је укупно књига на полицама.
1
polica1 = 150
2
polica2 = polica1 / 2
3
polica3 = polica2 / 3
4
ukupno = polica1 + polica2 + polica3
5
print(ukupno)
6
(Полице_са_књигама)
Приметимо да се као резултат добија број 250.0 уместо 250. То је због тога што се након примене операције реалног дељења (операције /) добије увек резултат у облику реалног броја. Пошто је број књига цео број и пошто је број 150 дељив и са 2, а број 75 са 3 (иначе задатак не би имао смисла) на овом месту је било могуће употребити и операцију целобројног дељења о којој ће више речи бити у наставку.

Поскупљења и појефтињења

Цена хлеба је била 35 динара, затим је поскупела 10%. Млеко је коштало 100 динара, али је сада на снижењу и продаје се по 20% нижој цени. Колико коштају три хлеба и два млека?
../_images/procenti.jpg
Проценат (каже се и посто) се у математици обележава знаком % и означава стоти део нечега. На пример, када напишемо 10% броја 200, мислимо заправо на десет стотих делова броја 200, што знамо да је заправо 10100200 тј. 20. Дакле, запамтимо, запис p% је просто скраћеница за запис p100. Провери да ли ово разумеш.
20% броја 80 је број 



Ако је цена c, тада је p процената те цене једнако p стотих делова те цене тј. p100c. Када се каже да је производ поскупео p процената, то значи да му је цена порасла за p процената, тј. да је она увећана за p својих стотих делова. Ако је цена пре поскупљења била c, тада је након поскупљења она једнака c+p100c тј. c(1+p100). Слично, ако је производ појефтинио p процената, то значи да му је цена снижена за p процената, тј. да је почетна цена умањена за p својих стотина и једнака је cp100c тј. c(1p100). На основу овога, задатак се лако може решити.
1
hleb_pre = 35
2
hleb_posle = hleb_pre + (10 / 100) * hleb_pre
3
mleko_pre = 100
4
mleko_posle = mleko_pre - (20 / 100) * mleko_pre
5
racun = 3 * hleb_posle + 2 * mleko_posle
6
print(racun)
7
(поскупљење_и_појефтињење)
Приметимо и да ако је неки производ поскупео 10%, тада је његова нова цена једнака старој цени помноженој бројем 1+10100=1,1, а да ако је појефтинио 20%, тада је његова нова цена једнака старој цени помноженој бројем 120100=0,8.

Група радника

n радника уради посао за s сати. Написати програм којим се одређује за колико сати ће посао бити завршен ако се прикључи још m радника?
Један начин да се задатак реши је да се прво израчуна колико је радник-сати потребно да се заврши цео посао. Пошто сваки од n радника ради s сати, за завршетак посла потребно је ns радник-сати (један радник би сам посао радио ns сати). Ако посао треба да заврши n+m радника, тада ће се посао завршити n+m пута брже него када радни један радник, тј. посао ће бити завршен за nsn+m сати.
Други начин да се задатак реши је да се примени пропорција. Уколико ради више радника потребно је мање дана, па је потребно применити обрнуту пропорцију. Ако са x обележимо број сати за које посао уради већа група радника, тада важи да је n:(n+m)=x:s (са обе стране једнакости вредности су поређане од мање ка већој). Одатле опет закључујемо да је x=nsn+m.
1
# unosimo podatke
2
n = int(input("Koliko radnika radi:"))
3
s = float(input("Za koliko sati bi završili posao da rade sami:"))
4
m = int(input("Koliko će im se radnika pridružiti:"))
5
# izračunavamo rezultat
6
s1 = ???   # ispravi ovaj red
7
# prikazujemo rezultat
8
print(s1)
9
(група_радника)
Провери свој програм тако што провериш да ли за улазе 242 исписује 2.0, док за улазе 353 исписује 2.5.

Целобројно дељење

Целобројно дељење обично подразумева дељење целих бројева и као резултат се одређују целобројни количник и остатак при дељењу. На пример, ако се целобројно деле бројеви 14 и 3 тада се добија целобројни количник 4 и остатак 2.
У општем случају, целобројни количник и остатак при дељењу бројева a и b су бројеви q и r такви да је a=qb+r и 0r<b. Приметимо да ова веза важи у примеру дељења 14 и 3 важи управо ова веза тј. важи да је 14=43+2, при чему је 02<3. Други услов каже да остатак мора бити мањи од делиоца тј. да количник мора бити што је могуће већи. Тај услов је веома важан (на пример, важи да је 14=33+5, међутим, нећемо рећи да је целобројни количник 3 а остатак 5 јер број 5 није мањи од делиоца).
Кроз наредно питање провери колико разумеш операције целобројног дељења и остатка при дељењу.
При дељењу бројева 13 и 5 целобројни количник је  а остатак је 



У језику Python3 операција целобројног дељења се означава са //, а операција израчунавања остатка при дељењу се означава са %.
У математици се знак % користи да означи проценат (стоти део нечега). Коришћење истог знака за остатак при дељењу је заправо несрећна околност и треба бити обазрив да се та два заправо неповезана појма случајно не помешају.
Дакле, оператором / се израчунава реални, оператором // целобројни количник, а оператором % остатак при дељењу. Провери колико ово разумеш.
Превлачењем упари изразе са њиховим вредностима.
27 // 1027 % 1027 / 10
2.772

Упари изразе са њиховим вредностима.
43 / 843 % 843 // 8
5.37553

Покажимо једноставну примену израчунавања целобројног количника и остатка на следећем задатку.

Подела чоколадних бананица

У школи се организује новогодишња приредба за децу. Од пара које су зарадили тако што су организовали сајам својих рукотворина купили су неколико крем бананица које желе да равномерно поделе свој деци (тако да свако дете добије исти број бананица). Ако се зна колико ће деце доћи на приредбу, колико ће свако дете добити бананица и колико ће бананица остати нерасподењено.
1
broj_dece = int(input("Koliko će dece doći na priredbu: "))
2
ukupno_bananica = int(input("Koliko ukupno ima bananica: "))
3
bananica_po_detetu = ukupno_bananica // broj_dece
4
ostalo_bananica = ukupno_bananica % broj_dece
5
print("Svako će dete dobiti", bananica_po_detetu, "bananica.")
6
print("Ostaće", ostalo_bananica, "bananica.")
7
(чоколадне_бананице)
Приметимо и да смо број преосталих бананица могли израчунати и тако што од укупног броја бананица одузмемо број бананица које су подељене деци (а то је производ броја деце и броја бананица које је свако дете добило) тј. помоћу израза ukupno_bananica - broj_dece * bananica_po_detetu. Ипак, коришћење оператора % којим се израчунава остатак је једноставније решење.
Ево једног сличног задатка, за вежбу.

Разломак у мешовити број

Бројилац разломка је 37, а именилац је 12. Преведи овај разломак у мешовит број.
Важи да је 37=312+1, па је 3712=312+112=3112. У општем случају када разломак ab преводимо у мешовит број потребно је да бројилац напишемо у облику a=qb+r, при чему мора да важи да је 0r<b и тада се добија межовити број qrb. Број q је целобројни количник бројева a и b, док је r остатак при њиховом дељењу.
1
brojilac = 37
2
imenilac = 12
3
mesoviti_ceo_deo = 0  # ispravi ovaj red
4
mesoviti_brojilac = 0 # ispravi ovaj red
5
mesoviti_imenilac = 0 # ispravi ovaj red
6
print(mesoviti_ceo_deo, "celih i", mesoviti_brojilac, "/", mesoviti_imenilac)
7
(Мешовит_број)
Наравно, резултат треба да буде 3 celih i 1 / 12.

Целобројно дељење - конверзија јединица

Целобројни количник и остатак често користимо када желимо да прерачунавамо јединице. Размотримо следећих неколико задатака.

Конверзија центиметара у метре и центиметре

Напиши програм који на основу дате дужине у центиметрима израчунава исту дужину у метрима и центиметрима. На пример, ако је дужина 178 центиметара, програм израчунава да је то 1 метар и 78 центиметара.
Пошто у једном метру има 100 центиметара, задатак се своди на израчунавање целобројног количника и остатка при дељењу са 100. Заиста, ако имамо m метара и c центиметара, тада је укупан број центиметара једнак m100+c, при чему је 0c<100.
1
ukupno_centimetara = int(input("Unesi dužinu u centimetrima: "))
2
metara = ukupno_centimetara // 100
3
centimetara = ukupno_centimetara % 100
4
print("Dužina je", metara, "m", centimetara, "cm")
5
(центиметри_у_метре_и_центиметре)
Рецимо поново да је често решење до којег ученици самостално долазе и оно у којем се преостали број центиметара рачуна као centimetara = ukupno_centimetara - metara * 100. Иако је ово решење исправно, на располагању нам је оператор израчунавања остатака % и требало би да се навикнемо да га користимо.

Конверзија милиметара у метре, дециметре, центиметре и милиметре

Напиши програм који на основу дате дужине у милиметрима израчунава исту дужину у метрима, дециметрима, центиметрима и милиметрима. На пример, ако је дужина 1789 милиметара, програм израчунава да је то 1 метар и 7 дециметара и 8 центиметара и 9 милиметара.
Један од начина је да прво, слично решењу претходног задатка одредимо број метара и преосталих милиметара. Пошто у једном метру има 1000 милиметара, то можемо урадити израчунавањем целобројног количника и остатка при дељењу са 1000. Тиме добијамо број метара и имамо даље задатак да преостали број милиметара разложимо на дециметре, центиметре и милиметре. Њега прво можемо разложити на дециметре и преостале милиметре израчунавањем целобројног количника и остатка при дељењу са 100 (јер у једном дециметру има 100 милиметара). На крају, преостале милиметре можемо разложити на центиметре и милиметре израчунавање целобројног количника и остатка при дељењу са 10 (јер у једном центиметру има 10 милиметара).
1
duzina = int(input("Unesi dužinu u milimetrima: "))
2
m = duzina // 1000
3
ostalo_mm_1 = duzina % 1000
4
dm = ostalo_mm_1 // 100
5
ostalo_mm_2 = ostalo_mm_1 % 100
6
cm = ostalo_mm_2 // 10
7
mm = ostalo_mm_2 // 10
8
print("Dužina je", m, "m", dm, "dm", cm, "cm", mm, "mm")
9
(центиметри_у_метре_дециметре_центиметре_и_милиметре)
Ипак, задатак можемо решити и на мало систематичнији начин. Ако са mmcd и m означимо редом број милиметара, центиметара, дециметара и метара, тада је укупан број милиметара једнак m1000+d100+c10+mm. Пошто су прва три сабирка дељива са 10, важи да се mm moже израчунати као остатак при дељењу укупног броја милиметара са 10. Целобројни количник укупног броја милиметара са 10 је m100+d10+c, па се зато број центиметара може израчунати тако што се пронађе целобројни количник укупног броја милиметара са 10, а затим остатак при дељењу тог броја са 10. Слично, целобројни количник укупног броја милиметара са 100 једнак је m10+d, па се број дециметара може израчунати као остатак при дељењу тог количника са 10. На крају, број метара једнак је целобројном количнику укупног броја дециметара са 1000.
1
duzina = int(input("Unesi dužinu u milimetrima: "))
2
mm = duzina % 10
3
cm = (duzina // 10) % 10
4
dm = (duzina // 100) % 10
5
m  = duzina // 1000
6
print("Dužina je", m, "m", dm, "dm", cm, "cm", mm, "mm")
7
(центиметри_у_метре_дециметре_и_центиметре_1)

Целобројно дељење - позициони запис броја

Ако је укупан број центиметара био 123, тада је број метара 1, број дециметара 2 и број центиметара 3. Решавањем претходног задатка смо заправо одређивали појединачне цифре коришћене у запису тог троцифреног броја. Приказана техника може бити уопштена тако да се одређују све цифре и у запису дужих бројева.

Цифре броја

Чест начин откривања грешака при слању података је да се уз податке које треба послати, пошаљу и одређени контролни подаци, израчунати на основу самих података. Када прималац прими податке, он на основу примљених података поново израчунава контролне податке и упоређује их са контролним подацима које је примио. Ако се приликом преноса података, услед неких сметњи, подаци случајно измене, прималац ће то приметити тако што ће видети да се контролни подаци које је он израчунао неће поклопити са онима које је примио. Сви подаци се у рачунарима представљају помоћу бројева, а још од најранијег доба рачунарства као метода контроле коришћен је збир цифара. На пример, ако би податак који се шаље био број 12345, онда би се уз њега слао и контролни број 15 (збир 1 + 2 + 3 + 4 + 5). Ако би приликом слања нека цифра била случајно промењена (на пример, ако би прималац грешком примио број 12335) тада би се и контролни број највероватније разликовао (контролни број би у нашем примеру био 14). Напиши програм који за дати петоцифрени број одређује његов контролни број (збир његових цифара).
1
broj = 12345
2
c0 = (broj // 1) % 10
3
c1 = (broj // 10) % 10
4
c2 = 0 # ispravi ovaj red
5
c3 = (broj // 1000) % 10
6
c4 = 0 # ispravi ovaj red
7
kontrolni_broj = c0 + c1 + c2 + c3 + c4
8
print(kontrolni_broj)
9
(цифре_броја)
Приметимо да смо цифре броја одређивали веома слично као у претходном задатку. Цифре одређујемо сдесна налево, тако што делимо број са тежином цифре (за цифру јединица број делимо са 1, десетица са 10, стотина са 100 итд.) и проналазимо остатак при дељењу са 10.
Људи су контролу података примењивали и ручно, а сада рачунари обављају такве контроле у овиру прецизно задатих поступака – протокола за размену података. Иако је контролни збир најједноставнији начин контроле, он не може да открије грешке до којих може доћи услед случајне размене редоследа цифара (на пример, ако се уместо броја 12345 грешком пошаље број 12435, контролни збир оба броја ће бити исти и грешка неће бити примећена). Зато се уместо збира понекад користе изрази облика c0+2c1+3c2+4c3+5c4. Покушај да измениш претходни програм тако да израчунава контролни број на овај начин.

Целобројно дељење - време и углови

За разлику од бројева и јединица мере које записујемо у систему чија је основа 10, при раду са временом и угловима користимо систем чија је основа број 60. Тако један сат има 60 минута, а један минут 60 секунди. Слично један степен има 60 угаоних минута, а један угаони минут има 60 угаоних секунди. Прикажимо сада кроз неколико задатака како можемо у програмима вршити израчунавања у којима учествују време и углови.

Конверзија сати и минута у минуте и обратно

Ако се зна колико је тренутно сати и минута, израчунај колико је минута протекло од претходне поноћи.
Пошто у једном сату има 60 минута, довољно је да помоножиш број сати са 60 и на то да додаш број минута.
1
sati = 2
2
minuta = 60
3
minuta_od_ponoci = 0 # ispravi ovaj red
4
print(minuta_od_ponoci)
5
(сати_и_минути_у_минуте)

Ако се зна колико је минута протекло од претходне поноћи, израчунај колико је тренутно сати и минута.
Ако са s обележимо тренутни број сати, са m тренутни број минута, а са M број минута протеклих од поноћи, тада важи да је M=s60+m, при чему за m важи да је број између 0 и 59, што јасно указује на то да се тражене вредности могу израчунати применом целобројног дељења.
1
minuta_od_ponoci = 125
2
sati = 0     # ispravi ovaj red
3
minuta = 0   # ispravi ovaj red
4
print(sati, minuta)
5
(минути_у_сате_и_минуте)

Аутобус

Aутобус је кренуо са станице у 6 часова и 17 минута и путовао је 2 сата и 55 минута. У колико сати и минута је стигао?
1
# sat i munut kada je autobus krenuo
2
krenuo_sat = 6
3
krenuo_min = 17
4
# broj sati i minuta koliko je autobus putovao
5
putovao_sat = 2
6
putovao_min = 55
7
# sabiramo minute i prenosimo sate ako je potrebno (ako su minuti bar 60)
8
stigao_min = (krenuo_min + putovao_min) % 60;
9
prenos = (krenuo_min + putovao_min) // 60;
10
# sabiramo sate dodajuci prenos minuta
11
stigao_sat = krenuo_sat + putovao_sat + prenos;
12
print(stigao_sat, stigao_min)
13
(време_путовања)
Други начин да се реши задатак је да се прво све прерачуна у минуте, да се сабирање изврши у минутима, а да се затим добијени минути претворе назад у сате и минуте. Приликом превођења неког временског тренутка у минуте израчунавамо заправо број минута протеклих од претходне поноћи (или поднева, ако се сати рачунају само до 12). Тај број минута се може добити тако што се број сати помножи бројем 60 (јер у једном сату има 60 минута) и на то дода број минута.
1
# sat i minut kada je autobus krenuo
2
krenuo_sat = 6
3
krenuo_min = 17
4
# broj sati i minuta koliko je autobus putovao
5
putovao_sat = 2
6
putovao_min = 55
7
# trenutak polaska u minutima
8
krenuo_u_minutima = krenuo_sat * 60 + krenuo_min
9
# trajanje putovanja u minutima
10
putovao_u_minutima = putovao_sat * 60 + putovao_min
11
# trenutak dolaska u minutima
12
stigao_u_minutima = krenuo_u_minutima + putovao_u_minutima
13
# sat i minut dolaska
14
stigao_sat = stigao_u_minutima // 60
15
stigao_min = stigao_u_minutima % 60
16
print(stigao_sat, stigao_min)
17
(време_путовања_1)

Криви торањ у Пизи

Криви торањ у Пизи је нагнут и са земљом заклапа угао од 86 степени и 3 минута. Колико степени и минута је торањ нагнут, то јест, колико одступа од усправног положаја.
../_images/krivi_toranj.jpg
Прав угао има 90 степени тј. 90·60 минута. Ако угао од 86 степени и 3 минута преведемо у минуте и одузмемо га од правог угла добићемо тражени угао у минутима. На крају ћемо израчунати целобројни количник и остатак и тако добити тражени угао у степенима и минутама. Рецимо још да смо у овом задатку заправо одређивали комплемент датог угла, што је операција о којој је сигурно било речи на часовима математике. Пошто се торањ с временом криви, твој програм треба исправно да ради и ако је угао мало другачји.
1
# ugao pod kojim je nagnut toranj u stepenima i minutima
2
alfa_stepeni = 86
3
alfa_minuti = 3
4
# prevodimo taj ugao u minute
5
alfa_u_minutima = 0      # ispravi ovaj red
6
# prav ugao u minutima
7
prav_u_minutima = 90 * 60
8
# komplement ugla u minutima
9
beta_u_minutima = prav_u_minutima - alfa_u_minutima
10
# komplement ugla u stepenima i minutima
11
beta_stepeni = 0         # ispravi ovaj red
12
beta_minuti = 0          # ispravi ovaj red
13
print(beta_stepeni, "stepenа i", beta_minuti, "minuta")
14
(криви_торањ)

Домаћи задатак

Ако на часу нисте стигли да урадите све задатке, уради их сада, у склопу домаћег задатка. Након тога покушај да урадиш и наредних неколико задатака.

Прочитане стране књиге

Књига има 282 стране. Марко је првог дана прочитао трећину, другог дана половину остатка, а трећег књигу прочитао до краја. Колико страна је прочитао ког дана? Напиши програм тако да исправно ради и ако је број страна првог дана другачији.
1
broj_strana = 282
2
prvi_dan = 0      # ispravi ovaj red
3
drugi_dan = 0     # ispravi ovaj red
4
treci_dan = 0     # ispravi ovaj red
5
print(prvi_dan, drugi_dan, treci_dan)
6
(Читање)

Повећање и смањење плата

Ево опет једног сличног задатка за вежбу.

Плате су прво смањене за десет процената, а онда су после неколико месеци те смањене плате повећане за 10 процената. Ако је у почетку плата била 50,000 динара, колика је она после смањења и повећања?
1
plata = 50000
2
smanjena_plata = 0  # popravi ovaj red
3
povecana_plata = 0  # popravi ovaj red
4
print(povecana_plata)
5
(плате)
Ако добијеш решење 49,500 значи да је све како треба, иако је тај резултат мало неочекиван. Често се помисли да ће смањење и повећање за по 10% да се пониште и да ће се плата вратити на полазну вредност. Међутим, смањење је било 10% полазне величине од 50,000 динара тј. за 5,000 динара, док је повећање за 10% од смањене величине од 45,000 динара тј. повећање је за 450 динара.

No comments:

Post a Comment

Prvi Razred                                               Drugi razred