[MUSIC Playing] Rob Bowden: Hi. Unë jam Rob. Dhe le të marrë babëzitur. Pra, gjëja e parë që ne duhet të bëni është të kërkojë nga shfrytëzuesi saktësisht se si ndryshim shumë është borxh. Kështu që këtu, ne shohim ne kemi një për ta bërë / ndërsa loop. Dhe ne jemi vendosjen dollarë barabartë me GetFloat. Çfarë është GetFloat? Kjo është një nga funksionet në Biblioteka CS50 që merr një shket nga përdoruesit. Mos harroni, në mënyrë që të përdorni këtë funksion, ne duhet të përpunojnë të përfshirë CS50.h në krye. Pra, një herë ne kemi atë vlerë nga përdoruesit, ne gjithashtu duhet të jetë i sigurt se kjo është një vlerë e vlefshme. Ne nuk mund borxh të holla negative. Dhe kështu kjo është qëllimi i këtij bëjë / ndërsa loop. Ne vazhdojmë looping ndërsa dollarë është më pak se zero. Dhe një për ta bërë / ndërsa loop është gjëja e drejtë për të përdorur këtu, pasi ne duhet të pyesim përdorues të paktën një herë për mënyrën se si sa para është borxh. Pra, një herë ne kemi se numri i dollarë, ne shohim këtu kemi cent int është e barabartë me Raundi dollarë herë CENTS_PER_DOLLAR. Në krye, shohim se CENTS_PER_DOLLAR është përcaktuar ndjeshme si 100. Pra, çfarë është kjo linjë duke bërë? E pra, nëse ju kujtohet, pika lundrues Vlerat nuk janë mjaft të sakta. Ndryshe nga integers, ne nuk mund të përfaqësojnë Vlerat pikë lundrues saktësisht. Ka gjithmonë një lloj e pasaktësisë. Pra, ne preferojnë të punojnë me vetëm integers gjatë gjithë këtij problemi. Dhe këtu, në qoftë se përdoruesi ka hyrë $ 3,42, ne jemi duke konvertimin që të 342 cent dhe arrestimi, vetëm të shpëtoj prej ndonjë që pasaktësisë. Pra, një herë ne kemi numrin e cent në një numër i plotë, ne mund të vazhdojmë me Pjesa tjetër e programit. Ne shohim këtu se ne jemi deklaruar numër i plotë monedha të cilat ne jemi vetëm për të përdorur të mbajnë gjurmët e totalit Numri i monedhave. Këtu, ne kemi lak tonë të parë ndërsa. Ne e shohim duke cent është më e madhe se, ose të barabartë me tremujorin e, e cila mbi të, është i hash përcaktuar si 25, ndërsa ajo është e vërtetë, ne e duan të rritje të numrit tonë të monedhave dhe cent pakësim nga tremujori. Mos harroni se kjo sintakse është e barabartë me cent është e barabartë cent minus tremujorin. Ata janë të njëjta. Pra, çfarë është kjo lak duke bërë? Ideja këtu është se, në qoftë se unë e di $ 3,42 është borxh, unë mund të vazhdojë duke i dhënë katërtat deri sa unë nuk mund të jap katërtat asnjë më shumë. Unë nuk mund të japin lagjet më, një herë unë kam dhënë $ 3,25. Prandaj, pasi është kështu, ne do të thyer nga ky lak ndërsa. Cent do të mbetet në 17 cent. Dhe ne do të vazhdojmë poshtë për të ardhshëm ndërsa loop ku ne themi, ndërsa cent është më e madhe se ose e barabartë me monedhë. Dhe tani ne jemi duke bërë të njëjtën gjë e saktë gjë ne e bëmë në rastin tremujorit, përveç me dimes. Pra, me 0,17 $, ne do të lak derisa ne mund të jepni më një monedhë, e cila është pikërisht një herë. Dhe pastaj ne do të mbetet me 7 cent. Pastaj ne do të vazhdojmë për të nickels, të cilat do loop deri sa ne nuk mund të japim ndonjë nickels më shumë, e cila do të na lënë me dy cent. Dhe pastaj, poshtë në pjesën e poshtme, ne kemi pennies, e cila do të lak dhe do të më në fund të na lënë me zero cent. Pastaj në fund, ne vetëm duhet të shtypura nga numrin tonë të monedhave. Pra, ky program është krejtësisht e saktë. Por ne fakt mund të bëjmë pak më mirë. Tani, nëse unë them se kam borxh t'ju $ 10,000, ju nuk duhet të duhet të shkoni këtu është një e katërta, dy tremujorët, tri të katërtat. Ju duhet të dini menjëherë se Unë ju detyrohem 40.000 katërtat. Tani le të shohim një program që trajton atë pak më mirë. Në këtë version të gjërave, ne ende nevojë të kërkojë nga shfrytëzuesi për shumën e të ndryshojë që ata duan në pikërisht të njëjtën mënyrë ne e bëmë para. Ne duhet të rrumbullakët atë pikërisht mënyra se si e bëri para. Dhe ne ende kemi monedha tona numër i plotë deklaroi saktësisht e njëjtë si më parë. Kështu që këtu është ku gjërat merrni pak e ndryshme. Ne jemi duke bërë monedha plus është e barabartë me cent ndarë nga tremujori ku e katërta është 25. Çfarë është duke thënë kjo është, të marrë sa më shumë katërtat si mund të shkojnë në cent dhe shtoni që në monedha. Pra, nëse cent është 142, 142 e ndarë me 25 na jep 5. Mos harroni se ndarjen numër i plotë automatikisht truncates. Pra, ne jemi duke bërë monedha plus është e barabartë me 5. Menjëherë pas kësaj, ne jemi duke thënë cent cent barabarta tremujorit mod. Mos harroni se operatori mod jep na e mbetur pas ndarjes. Pra, 142 katërta mod, që do t'i japë është minus 142 125, i cili është 17. Kjo është pjesa e mbetur pas duke bërë 142 pjesëtuar me 25. Kështu tani cents është e barabartë me 17. Dhe ne bëjmë të njëjtën gjë e saktë gjë për dimes. 17 pjestuar me 10 do të na japë 1. Dhe ne të shtoj se në monedha. Dhe pastaj ne update cent për jetë 17 MOD 10, i cili është 7. Dhe pastaj të njëjtën gjë për nickels. 7 ndarë nga 5 është 1. Shtoje që në monedha. Dhe më pas 7 MOD 5 është 2. Dhe kjo është cent tona. Dhe pastaj, për pennies, nuk ka asnjë të vërtetë pikë në ndarjen ose modding, pasi, në qoftë se ne kemi 0,2 $ mbetura, ne mund të vetëm të menjëherë të shtoj se në Numri ynë i monedhave. Dhe së fundi, ne kemi nevojë për të shtypur jashtë tonë Numri i monedhave dhe, sipas dëshirës, 0 kthehen në fund të programit tonë për të ditur çdo gjë ka punuar. Emri im është Rob. Dhe kjo ishte e babëzitur. [MUSIC Playing]