1 00:00:00,000 --> 00:00:00,285 2 00:00:00,285 --> 00:00:03,030 >> DAVID J. MALAN: Lad os begynde at skrive nogle mere komplekse forhold. 3 00:00:03,030 --> 00:00:06,530 I særdeleshed, lad os skrive et program der beder brugeren om et heltal, 4 00:00:06,530 --> 00:00:09,460 sige, mellem 1 og 10, og derefter gør en smule analyse. 5 00:00:09,460 --> 00:00:14,530 Men denne gang rapporterer om, at Antallet er lille eller mellemstor eller stor i 6 00:00:14,530 --> 00:00:17,480 størrelse, tegne disse sondringer temmelig vilkårligt. 7 00:00:17,480 --> 00:00:21,040 >> For at gøre dette, vil jeg til at stole på get int, at funktion fra CS50 8 00:00:21,040 --> 00:00:22,860 bibliotek, der gør netop dette. 9 00:00:22,860 --> 00:00:24,350 Og jeg vil også gearing print f.. 10 00:00:24,350 --> 00:00:28,530 Så jeg har tænkt mig at komme i gang ved at inkludere cs50.h som 11 00:00:28,530 --> 00:00:31,880 samt standard io.h. 12 00:00:31,880 --> 00:00:36,460 >> Og vil derefter erklære main i sædvanlig måde, int main tomrum, åben krøllet 13 00:00:36,460 --> 00:00:38,440 klampe tæt klammeparentes. 14 00:00:38,440 --> 00:00:41,240 Og jeg så kommer til at bede brugeren om et heltal. 15 00:00:41,240 --> 00:00:48,340 Print f, bedes du give mig en int mellem 1 og 10. 16 00:00:48,340 --> 00:00:52,640 >> Lad os nu få det int ved at erklære en variabel kaldet, siger, n og tildele 17 00:00:52,640 --> 00:00:55,520 det returværdien af ​​get int. 18 00:00:55,520 --> 00:00:57,300 Lad os nu gøre en smule analyse. 19 00:00:57,300 --> 00:01:04,500 >> Hvis n er større end eller lig med 0 og n er mindre end eller lig med, siger, 3, 20 00:01:04,500 --> 00:01:12,560 så vi kommer til at gå videre og udskrive ud af du plukket en lille int. 21 00:01:12,560 --> 00:01:15,730 >> Else, hvis brugeren picks, siger, en mellemstor værdi, lad os 22 00:01:15,730 --> 00:01:16,960 kontrollere for, som følger. 23 00:01:16,960 --> 00:01:23,360 Else hvis n er større end eller lig med sige, 4 og n er mindre end eller lig med 24 00:01:23,360 --> 00:01:31,850 sige, 7, så jeg har tænkt mig at udskrive ud du valgte en medium int. 25 00:01:31,850 --> 00:01:36,490 >> Endelig vil jeg antage, at hvis værdien er mellem 8 og 10, 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 at udtrykke, at jeg skriver, ellers hvis n er større end eller lig med 8 og n 28 00:01:44,140 --> 00:01:53,590 er mindre end eller lig med 10, gå videre og udskrive du valgte en stor int. 29 00:01:53,590 --> 00:01:55,720 >> Else, der er en fjerde betingelse her. 30 00:01:55,720 --> 00:01:59,520 Hvis brugeren ikke samarbejdede, og i stedet indtastet en værdi, der er mindre end 31 00:01:59,520 --> 00:02:04,430 0 eller større end 10, vil jeg simpelthen at irettesætte dem. 32 00:02:04,430 --> 00:02:12,490 Else udskrive, du valgte en ugyldig int. 33 00:02:12,490 --> 00:02:13,950 >> Lad os gemme filen. 34 00:02:13,950 --> 00:02:17,580 Kompiler det med at gøre ikke-switch. 35 00:02:17,580 --> 00:02:21,650 Tilbage på min prompt, jeg kommer til at køre det med prik skråstreg ikke-switch. 36 00:02:21,650 --> 00:02:23,320 Og lad os prøve nogle værdier. 37 00:02:23,320 --> 00:02:26,110 >> Først, lad os være usamarbejdsvillig og skriv negativ 1. 38 00:02:26,110 --> 00:02:30,970 Heldigvis der blev påvist ved vores sidste gren i denne tilstand. 39 00:02:30,970 --> 00:02:36,530 Lad os prøve igen med dot skråstreg non-switch, denne gang giver det 1. 40 00:02:36,530 --> 00:02:37,900 Jeg faktisk plukket en lille int. 41 00:02:37,900 --> 00:02:43,250 >> Lad os gøre det igen med prik skråstreg non-switch, denne gang plukke, siger, 5.. 42 00:02:43,250 --> 00:02:44,590 Og det er en medium int. 43 00:02:44,590 --> 00:02:48,200 Lad os nu gøre igen dot slash non-switch. 44 00:02:48,200 --> 00:02:52,650 Og give det en værdi på 10, som er faktisk en stor int. 45 00:02:52,650 --> 00:02:55,310 >> Nu er det værd at bemærke, at dette program kunne have været gennemført i 46 00:02:55,310 --> 00:02:56,840 en række forskellige måder. 47 00:02:56,840 --> 00:03:00,160 Først og fremmest, det var helt vilkårligt at jeg trak de linjer, jeg 48 00:03:00,160 --> 00:03:03,290 gjorde blandt små, mellemstore, og store ints. 49 00:03:03,290 --> 00:03:05,230 Vi kunne have trukket dem grænser overalt. 50 00:03:05,230 --> 00:03:08,930 >> Men mere interessant, havde jeg ikke at udtrykke mig med alle disse 51 00:03:08,930 --> 00:03:13,440 større end eller lig med eller mindre end eller lig med skilte. 52 00:03:13,440 --> 00:03:18,880 Jeg kunne have, for eksempel, omskrevet hvis n er større end eller lig med 4, og 53 00:03:18,880 --> 00:03:24,760 n er mindre end eller lig med 7, som i stedet hvis n er større end 3 og n 54 00:03:24,760 --> 00:03:29,130 er mindre end 8, så udskrive du valgte en medium int. 55 00:03:29,130 --> 00:03:33,360 >> Efter alt, hvis brugerens indlæsning ved karakter get int, er et helt tal, vi 56 00:03:33,360 --> 00:03:37,580 kan enten test, hvis denne værdi er større end 3 eller større end eller 57 00:03:37,580 --> 00:03:38,740 svarende til 4. 58 00:03:38,740 --> 00:03:43,130 Og vi kunne også kontrollere, om der værdi mindre end 8 eller mindre 59 00:03:43,130 --> 00:03:44,590 end eller lig med 7. 60 00:03:44,590 --> 00:03:45,860