>> [CHWARAE CERDDORIAETH]
>> ROB BOWDEN: Hi.
Rwy'n Rob.
A gadewch i ni gael Greedy.
>> Felly, y peth cyntaf mae angen i ni ei wneud yn gofyn i'r defnyddiwr yn union sut y
o newid yn ddyledus.
Felly dyma, gwelwn gennym a do / tra ddolen.
Ac rydym yn gosod ddoleri cyfartal i GetFloat.
Beth yw GetFloat?
Mae'n un o'r swyddogaethau yn y Llyfrgell CS50 sy'n cael
arnofio oddi wrth y defnyddiwr.
Cofiwch, er mwyn defnyddio'r swyddogaeth honno, mae angen i ni hash cynnwys
CS50.h ar y brig.
>> Felly, ar ôl i ni gael y gwerth o'r defnyddiwr, mae angen inni hefyd fod yn sicr bod
mae'n werth dilys.
Ni allwn arian yn ddyledus negyddol.
Ac felly dyna pwrpas o do hwn / tra ddolen.
Rydym yn parhau dolennu tra ddoleri yn llai na sero.
A do / tra ddolen yw'r peth iawn i ddefnyddio yma, gan fod angen i ni ofyn i'r
defnyddiwr o leiaf unwaith ar gyfer sut y o arian sy'n ddyledus.
>> Felly, ar ôl i ni gael y nifer o ddoleri, rydym yn gweld yma rydym wedi cents int
yn dychwelyd rownd ddoleri amseroedd CENTS_PER_DOLLAR.
Ar y brig, rydym yn gweld bod CENTS_PER_DOLLAR yn
a ddiffinnir yn synhwyrol fel 100.
Felly, beth mae hyn yn llinell yn ei wneud?
>> Wel, os ydych yn cofio, pwynt arnawf Nid yw gwerthoedd yn eithaf manwl.
Yn wahanol i cyfanrifau, ni allwn gynrychioli Gwerthoedd pwynt arnawf yn union.
Mae bob amser yn rhyw fath o anfanyldeb.
Felly, mae'n well gennym i weithio gyda dim ond cyfanrifau drwy gydol y broblem.
Ac yma, os bydd y defnyddiwr yn mynd i $ 3.42, rydym yn trosi hynny i 342 cents a
talgrynnu, dim ond cael gwared ar unrhyw ran o'r anfanyldeb.
>> Felly, ar ôl i ni gael y nifer o cents yn cyfanrif, gallwn barhau gyda'r
gweddill y rhaglen.
Rydym yn gweld yma ein bod yn datgan cyfanrif darnau arian yr ydym yn yn unig i ddefnyddio
i gadw golwg ar y cyfanswm nifer o ddarnau arian.
Yma, rydym wedi ein dolen tra'n cyntaf.
>> Rydym yn gweld wrth cents yn fwy na neu'n cyfartal i chwarter, sydd uchod, hash
a ddiffinnir fel 25, tra bod hynny'n wir, yr ydym yn eisiau cynyddiad ein nifer o ddarnau arian
a cents lleihau a gan chwarter.
Cofiwch fod cystrawen hwn yn cyfateb i cents
yn dychwelyd cents minws chwarter.
Mae'r rhai yr un fath.
>> Felly, beth mae hyn yn dolen wrth wneud?
Y syniad yma yw, os byddaf yn gwybod 3.42 $ yn ddyledus, gallaf barhau i roi
chwarter hyd nes nad wyf yn gallu rhoi chwarter mwyach.
Ni allaf roi unrhyw chwarter yn fwy, unwaith y byddaf wedi rhoi $ 3.25.
>> Felly, yna, unwaith y bydd hynny'n wir, byddwn ni dorri allan o hyn dolen amser.
Bydd Cents cael eu gadael yn 17 cents.
A byddwn yn parhau i lawr i'r nesaf tra bod dolen lle rydym yn ei ddweud, tra bod cents
yn fwy na neu'n hafal i dime.
>> Ac yn awr rydym yn ei wneud yr un peth union beth a wnaethom yn yr achos chwarter,
ac eithrio gyda dimes.
Felly, gyda $ 0.17, rydym yn annhymerus 'dolen nes y gallwn bellach yn rhoi dime, sy'n
yn union yr un pryd.
Ac yna byddwn yn gadael gyda 7 cents.
>> Yna, byddwn yn parhau ar i Nickels, a oedd yn Bydd dolen nes na allwn roi
unrhyw mwy Nickels, a fydd yn ein gadael gyda dau cents.
Ac yna, i lawr ar y gwaelod, rydym wedi ceiniogau, a fydd yn ddolen a bydd yn
yn olaf ein gadael gyda sero cents.
Yna, ar y diwedd, ond mae angen i ni argraffu ein nifer o ddarnau arian.
>> Felly, y rhaglen hon yn gwbl gywir.
Ond gallwn ei wneud mewn gwirionedd ychydig yn well.
Nawr, os wyf yn dweud fy mod yn ddyledus i chi $ 10,000, Ni ddylai fod angen i chi fynd dyma un
chwarter, dau chwarter, tri chwarter.
Dylech wybod ar unwaith bod Yr wyf yn ddyledus i chi 40,000 o chwarter.
>> Nawr, gadewch i ni edrych ar rhaglen sy'n drin yn ychydig yn well.
Yn y fersiwn hwn o bethau, mae angen i ni i ofyn i'r defnyddiwr ar gyfer y swm o
newid eu bod eisiau yn yr union yr un ffordd yr ydym o'r blaen.
Mae angen i ni orffen yn union y ffordd y gwnaeth gennym o'r blaen.
Ac rydym yn dal i gael ein darnau arian cyfanrifol datgan yn union yr un fath ag o'r blaen.
>> Felly dyma ble mae pethau cael ychydig yn wahanol.
Rydym yn gwneud darnau arian yn ogystal â hafal cents wedi'i rannu gan chwarter
lle mae chwarter yw 25.
Beth mae hyn yn ei ddweud yw, cymryd cymaint o Gall chwarter fel mynd i mewn cents ac ychwanegu
hynny i ddarnau arian.
>> Felly os cents yn 142, 142 rannu 25 yn rhoi i ni 5.
Cofiwch bod rhannu cyfanrif truncates yn awtomatig.
Felly rydym yn ei wneud darnau arian a mwy yn dychwelyd 5.
>> Yn syth ar ôl hyn, rydym yn dweud cents cents cyfartal chwarter mod.
Cofiwch bod y gweithredwr mod yn rhoi i ni y gweddill ar ôl rhannu.
Felly, 142 y chwarter mod, a fydd yn rhoi yw 142 minws 125, sef 17.
Dyna y gweddill ar ôl gwneud 142 wedi'i rannu â 25.
>> Felly nawr cents yn hafal i 17.
Ac rydym yn ei wneud yr un peth union beth am dimes.
17 wedi'i rannu â 10 yn rhoi i ni 1.
Ac rydym yn ychwanegu hynny at ddarnau arian.
Ac yna rydym yn diweddaru cents i fod yn 17 mod 10, sydd 7.
>> Ac yna yr un fath ar gyfer Nickels.
7 wedi'i rannu gan 5 yw 1.
Ychwanegu at ddarnau arian.
Ac yna 7 mod 5 yw 2.
A dyna ein cents.
>> Ac yna, ar gyfer ceiniogau, does dim go iawn pwynt yn rhannu neu modding, ers hynny,
os oes gennym $ 0.2 yn weddill, gallwn dim ond unwaith ei ychwanegu at
ein nifer o ddarnau arian.
Ac yn olaf, mae angen i ni argraffu ein nifer o ddarnau arian ac, yn ddewisol,
yn dychwelyd 0 ar ddiwedd ein rhaglen i ddynodi popeth yn gweithio.
>> Fy enw i yw Rob.
Ac roedd hyn yn Greedy.
>> [CHWARAE CERDDORIAETH]