1 00:00:00,000 --> 00:00:00,285 2 00:00:00,285 --> 00:00:03,030 >> DAVID J. MALAN: La oss begynne å skrive noen mer komplekse forhold. 3 00:00:03,030 --> 00:00:06,530 Spesielt, la oss å skrive et program som ber brukeren om et heltall, 4 00:00:06,530 --> 00:00:09,460 si, mellom 1 og 10, og deretter gjør litt av analyse. 5 00:00:09,460 --> 00:00:14,530 Men denne gangen rapporterer om at nummer er liten eller mellomstor eller stor i 6 00:00:14,530 --> 00:00:17,480 størrelse, tegne slike distinksjoner ganske vilkårlig. 7 00:00:17,480 --> 00:00:21,040 >> For å gjøre dette, kommer jeg til å stole på get int, som funksjon fra CS50 8 00:00:21,040 --> 00:00:22,860 bibliotek som gjør nettopp det. 9 00:00:22,860 --> 00:00:24,350 Og jeg også kommer til å utnytte print f. 10 00:00:24,350 --> 00:00:28,530 Så jeg kommer til å komme i gang ved å inkludere cs50.h som 11 00:00:28,530 --> 00:00:31,880 vel som standard io.h. 12 00:00:31,880 --> 00:00:36,460 >> Og skal deretter erklære viktigste i vanlig måte, int main ugyldig, åpen krøllete 13 00:00:36,460 --> 00:00:38,440 brace, nær klammeparentes. 14 00:00:38,440 --> 00:00:41,240 Og jeg da kommer til å be brukeren for et heltall. 15 00:00:41,240 --> 00:00:48,340 Skriv ut f, vennligst gi meg en int mellom en og ti. 16 00:00:48,340 --> 00:00:52,640 >> Nå la oss få det int ved å erklære en variabel kalt, sier, n og tildele 17 00:00:52,640 --> 00:00:55,520 det returverdien av get int. 18 00:00:55,520 --> 00:00:57,300 La oss nå gjøre litt analyse. 19 00:00:57,300 --> 00:01:04,500 >> Hvis n er større enn eller lik 0 og n er mindre enn eller lik til, si, 3, 20 00:01:04,500 --> 00:01:12,560 så vi kommer til å gå videre og print ut du plukket en liten int. 21 00:01:12,560 --> 00:01:15,730 >> Else, hvis brukeren plukker, sier, en mellomstor verdi, la oss 22 00:01:15,730 --> 00:01:16,960 check for det som følger. 23 00:01:16,960 --> 00:01:23,360 Ellers dersom n er større enn eller lik med, eksempel 4, og n er mindre enn eller lik med, 24 00:01:23,360 --> 00:01:31,850 si, 7, så jeg kommer til å skrive ut ut du plukket en middels int. 25 00:01:31,850 --> 00:01:36,490 >> Til slutt kommer jeg til å anta at dersom verdien er mellom 8 og 10, er de 26 00:01:36,490 --> 00:01:37,550 plukket en stor int. 27 00:01:37,550 --> 00:01:44,140 Så for å uttrykke det, vil jeg skrive, annet hvis n er større enn eller lik 8 og n 28 00:01:44,140 --> 00:01:53,590 er mindre enn eller lik 10, gå videre og skrive du plukket en stor int. 29 00:01:53,590 --> 00:01:55,720 >> Else, det er en fjerde tilstand her. 30 00:01:55,720 --> 00:01:59,520 Hvis brukeren ikke samarbeide og i stedet skrevet en verdi som er mindre enn 31 00:01:59,520 --> 00:02:04,430 0 eller større enn 10, jeg vil å bare reprimande dem. 32 00:02:04,430 --> 00:02:12,490 Else skrive ut, plukket deg en ugyldig int. 33 00:02:12,490 --> 00:02:13,950 >> La oss lagre filen. 34 00:02:13,950 --> 00:02:17,580 Kompilere den med gjøre ikke-bryteren. 35 00:02:17,580 --> 00:02:21,650 Tilbake på mitt spørsmål, jeg kommer til å kjøre det med dot slash ikke-bryteren. 36 00:02:21,650 --> 00:02:23,320 Og la oss prøve noen verdier. 37 00:02:23,320 --> 00:02:26,110 >> Først, la oss være lite samarbeidsvillig og skriver i negativ en. 38 00:02:26,110 --> 00:02:30,970 Heldigvis, som ble påvist ved vår endelige avslaget i den tilstanden. 39 00:02:30,970 --> 00:02:36,530 La oss prøve igjen med dot slash non-switch, denne gangen gir det en. 40 00:02:36,530 --> 00:02:37,900 Jeg faktisk plukket en liten int. 41 00:02:37,900 --> 00:02:43,250 >> La oss gjøre det igjen med dot slash non-switch, denne gangen plukke, si, 5. 42 00:02:43,250 --> 00:02:44,590 Og det er en middels int. 43 00:02:44,590 --> 00:02:48,200 La oss nå ikke igjen dot slash ikke-bryteren. 44 00:02:48,200 --> 00:02:52,650 Og gi den en verdi på 10, som er faktisk en stor int. 45 00:02:52,650 --> 00:02:55,310 >> Nå er det verdt å merke seg at dette programmet kunne ha blitt implementert i 46 00:02:55,310 --> 00:02:56,840 en rekke måter. 47 00:02:56,840 --> 00:03:00,160 Først og fremst var det helt vilkårlig at jeg trakk linjene at jeg 48 00:03:00,160 --> 00:03:03,290 gjorde blant små, mellomstore, og store ints. 49 00:03:03,290 --> 00:03:05,230 Vi kunne ha trukket de grenser hvor som helst. 50 00:03:05,230 --> 00:03:08,930 >> Men mer interessant, hadde jeg ikke å uttrykke meg med alle disse 51 00:03:08,930 --> 00:03:13,440 større enn eller lik eller mindre enn eller lik skilt. 52 00:03:13,440 --> 00:03:18,880 Jeg kunne ha, for eksempel, omskrives hvis n er større enn eller lik 4, og 53 00:03:18,880 --> 00:03:24,760 n er mindre enn eller lik 7, som i stedet dersom n er større enn 3, og n 54 00:03:24,760 --> 00:03:29,130 er mindre enn 8, og deretter skrive ut du plukket en middels int. 55 00:03:29,130 --> 00:03:33,360 >> Tross alt, hvis brukerens input, etter natur get int, er et heltall, vi 56 00:03:33,360 --> 00:03:37,580 kan enten teste om at verdien er større enn 3 eller større enn eller 57 00:03:37,580 --> 00:03:38,740 lik 4. 58 00:03:38,740 --> 00:03:43,130 Og vi kan også sjekke om det verdi mindre enn åtte eller mindre 59 00:03:43,130 --> 00:03:44,590 enn eller lik 7. 60 00:03:44,590 --> 00:03:45,860