1 00:00:00,000 --> 00:00:00,285 2 00:00:00,285 --> 00:00:03,030 >> DAVID J. Malan: Gadewch i ni ddechrau ysgrifennu rhai cyflyrau mwy cymhleth. 3 00:00:03,030 --> 00:00:06,530 Yn arbennig, gadewch i ni ysgrifennu rhaglen sy'n annog y defnyddiwr ar gyfer cyfanrif, 4 00:00:06,530 --> 00:00:09,460 dweud, rhwng 1 a 10, ac yna yn gwneud ychydig o ddadansoddi. 5 00:00:09,460 --> 00:00:14,530 Ond y tro hwn yn adrodd a yw hynny'n nifer yn fach neu'n ganolig neu fawr yn 6 00:00:14,530 --> 00:00:17,480 maint, gan dynnu gwahaniaethau hynny weddol fympwyol. 7 00:00:17,480 --> 00:00:21,040 >> I wneud hyn, yr wyf i'n mynd i ddibynnu ar get int, y swyddogaeth honno o'r CS50 8 00:00:21,040 --> 00:00:22,860 llyfrgell sy'n gwneud yn union hynny. 9 00:00:22,860 --> 00:00:24,350 Ac yr wyf hefyd yn ddim yn mynd i trosoledd print f. 10 00:00:24,350 --> 00:00:28,530 Felly, yr wyf i'n mynd i ddechrau arni trwy gynnwys cs50.h fel 11 00:00:28,530 --> 00:00:31,880 ogystal io.h. safonol 12 00:00:31,880 --> 00:00:36,460 >> Ac yn mynd wedyn i ddatgan phrif yn y ffordd arferol, prif ddi-rym int, cyrliog agored 13 00:00:36,460 --> 00:00:38,440 Brace, Brace cyrliog yn agos. 14 00:00:38,440 --> 00:00:41,240 A dwi'n wedyn yn mynd i ysgogi y defnyddiwr ar gyfer cyfanrif. 15 00:00:41,240 --> 00:00:48,340 Print f, os gwelwch yn dda roi i mi yn int rhwng 1 a 10. 16 00:00:48,340 --> 00:00:52,640 >> Nawr, gadewch i ni gael y int drwy ddatgan amrywiol o'r enw, dyweder, n ac yn neilltuo 17 00:00:52,640 --> 00:00:55,520 mae'n werth dychwelyd int get. 18 00:00:55,520 --> 00:00:57,300 Gadewch i ni yn awr yn gwneud ychydig o ddadansoddi. 19 00:00:57,300 --> 00:01:04,500 >> Os yw n yn fwy na neu'n hafal i 0 a n yn llai na neu'n hafal i, dyweder, 3, 20 00:01:04,500 --> 00:01:12,560 yna rydym yn mynd i fynd yn ei flaen ac argraffu gwybod eich dewis yn int bach. 21 00:01:12,560 --> 00:01:15,730 >> Arall, os yw'r defnyddiwr yn dewis, dyweder, gwerth o faint canolig, gadewch i ni 22 00:01:15,730 --> 00:01:16,960 gwirio ar gyfer hynny fel a ganlyn. 23 00:01:16,960 --> 00:01:23,360 Arall os n yn fwy na neu'n hafal i, dyweder, 4 ac n yn llai na neu'n hafal i, 24 00:01:23,360 --> 00:01:31,850 dyweder, 7, yna dwi'n mynd i argraffu gwybod eich dewis yn int canolig. 25 00:01:31,850 --> 00:01:36,490 >> Yn olaf, dwi'n mynd i gymryd yn ganiataol bod os gwerth rhwng 8 a 10, maent yn 26 00:01:36,490 --> 00:01:37,550 dewis yn int mawr. 27 00:01:37,550 --> 00:01:44,140 Felly, i fynegi hynny, byddaf yn teipio, arall os n yn fwy na neu'n hafal i 8 a n 28 00:01:44,140 --> 00:01:53,590 yn llai na neu'n hafal i 10, mynd yn ei flaen ac argraffu i chi dewis yn int mawr. 29 00:01:53,590 --> 00:01:55,720 >> Else, mae 'na pedwerydd amod yma. 30 00:01:55,720 --> 00:01:59,520 Os nad yw'r defnyddiwr yn cydweithredu ac yn lle hynny deipio gwerth sy'n llai na 31 00:01:59,520 --> 00:02:04,430 0 neu fwy na 10, yr wyf am i cerydd syml iddynt. 32 00:02:04,430 --> 00:02:12,490 Arall argraffu, rydych dewis yn int annilys. 33 00:02:12,490 --> 00:02:13,950 >> Gadewch i arbed y ffeil. 34 00:02:13,950 --> 00:02:17,580 Llunio â gwneud nad ydynt yn newid. 35 00:02:17,580 --> 00:02:21,650 Yn ôl yn fy brydlon, dw i'n mynd i redeg gyda dot slaes nad ydynt yn-switsh. 36 00:02:21,650 --> 00:02:23,320 A gadewch i ni roi cynnig ar ambell gwerthoedd. 37 00:02:23,320 --> 00:02:26,110 >> Yn gyntaf, gadewch i ni fod gwrthod cydweithredu a theipiwch yn negyddol 1. 38 00:02:26,110 --> 00:02:30,970 Yn ffodus, a gafodd ei ganfod gan ein gangen terfynol yn y cyflwr hwnnw. 39 00:02:30,970 --> 00:02:36,530 Gadewch i ni geisio eto gyda dot slaes nad ydynt yn newid, y tro hwn gan roi 1. 40 00:02:36,530 --> 00:02:37,900 Yr wyf yn wir dewis yn int bach. 41 00:02:37,900 --> 00:02:43,250 >> Gadewch i ni ei wneud eto gyda dot slaes nad ydynt yn newid, y tro hwn pigo, dyweder, 5. 42 00:02:43,250 --> 00:02:44,590 Ac mae hynny'n int canolig. 43 00:02:44,590 --> 00:02:48,200 Gadewch i ni yn awr unwaith eto yn dot slaes nad ydynt yn-switsh. 44 00:02:48,200 --> 00:02:52,650 A rhoi gwerth o 10, sy'n yn wir yn int mawr. 45 00:02:52,650 --> 00:02:55,310 >> Nawr mae'n werth nodi bod y rhaglen hon gellid bod wedi rhoi ar waith yn 46 00:02:55,310 --> 00:02:56,840 unrhyw nifer o ffyrdd. 47 00:02:56,840 --> 00:03:00,160 Yn gyntaf oll, yn gwbl fympwyol fy mod tynnodd y llinellau yr wyf 48 00:03:00,160 --> 00:03:03,290 wnaeth ymhlith bach, canolig, a ints mawr. 49 00:03:03,290 --> 00:03:05,230 Gallem fod wedi tynnu rhai ffiniau yn unrhyw le. 50 00:03:05,230 --> 00:03:08,930 >> Ond yn fwy diddorol, doedd gen i ddim i fynegi fy hun gyda phob un o'r rhain 51 00:03:08,930 --> 00:03:13,440 fwy na neu'n hafal i neu'n llai na neu'n hafal i arwyddion. 52 00:03:13,440 --> 00:03:18,880 Allwn fod wedi, er enghraifft, hailysgrifennu os n yn fwy na neu'n hafal i 4 ac 53 00:03:18,880 --> 00:03:24,760 n yn llai na neu'n hafal i 7, yn lle hynny os n yn fwy na 3 ac n 54 00:03:24,760 --> 00:03:29,130 yn llai nag 8, yna argraffu chi dewis yn int canolig. 55 00:03:29,130 --> 00:03:33,360 >> Wedi'r cyfan, os fewnbwn y defnyddiwr, gan natur int get, yn gyfanrif, rydym yn 56 00:03:33,360 --> 00:03:37,580 naill ai prawf os yw'r gwerth yn fwy na 3 neu fwy na neu'n 57 00:03:37,580 --> 00:03:38,740 gyfartal i 4. 58 00:03:38,740 --> 00:03:43,130 A gallai rydym hefyd yn gwirio os yw hynny'n gwerth llai na 8 neu lai 59 00:03:43,130 --> 00:03:44,590 na neu'n hafal i 7. 60 00:03:44,590 --> 00:03:45,860