1 00:00:00,000 --> 00:00:00,285 2 00:00:00,285 --> 00:00:03,030 >> დევიდ ჯ Malan: დავიწყოთ წერა ზოგიერთი უფრო რთული პირობები. 3 00:00:03,030 --> 00:00:06,530 კერძოდ, მოდით დაწეროთ პროგრამა რომ თხოვს მომხმარებელს განთავსების რიცხვი, 4 00:00:06,530 --> 00:00:09,460 ამბობენ, რომ 1 და 10 შორის და შემდეგ აკეთებს ცოტა ანალიზი. 5 00:00:09,460 --> 00:00:14,530 მაგრამ ამ დროს საანგარიშო თუ არა, რომ ნომერი არის მცირე ან საშუალო ან დიდი 6 00:00:14,530 --> 00:00:17,480 ზომა, ხატვის იმ განსხვავებებს საკმაოდ თვითნებურად. 7 00:00:17,480 --> 00:00:21,040 >> ამის გაკეთება, მე ვაპირებ, რომ დაეყრდნოს მისაღებად int, რომ ფუნქცია CS50 8 00:00:21,040 --> 00:00:22,860 ბიბლიოთეკა, რომელიც აკეთებს ზუსტად რომ. 9 00:00:22,860 --> 00:00:24,350 და მე ასევე აპირებს ბერკეტები ბეჭდვითი ვ. 10 00:00:24,350 --> 00:00:28,530 ამიტომ მე ვაპირებ უნდა დავიწყოთ მათ შორის cs50.h როგორც 11 00:00:28,530 --> 00:00:31,880 ისევე როგორც სტანდარტული io.h. 12 00:00:31,880 --> 00:00:36,460 >> და აპირებს შემდეგ აცხადებენ, მთავარია ჩვეულ რეჟიმში, int ძირითადი ბათილად, ღია curly 13 00:00:36,460 --> 00:00:38,440 გაუწიოს, მჭიდრო Curly გაუწიოს. 14 00:00:38,440 --> 00:00:41,240 და მე მაშინ აპირებს უბიძგონ მომხმარებელს რიცხვი. 15 00:00:41,240 --> 00:00:48,340 Print f, გთხოვთ, მომეცი int შორის 1 და 10. 16 00:00:48,340 --> 00:00:52,640 >> ახლა მოდით მიიღოს, რომ int მიერ გამოცხადების ცვლადში, ვთქვათ, n და იმის 17 00:00:52,640 --> 00:00:55,520 ის დაბრუნების ღირებულება მისაღებად int. 18 00:00:55,520 --> 00:00:57,300 მოდით ახლა გავაკეთოთ ცოტა ანალიზი. 19 00:00:57,300 --> 00:01:04,500 >> თუ n მეტია ან ტოლია 0 n ნაკლებია ან ტოლი, ვთქვათ, 3, 20 00:01:04,500 --> 00:01:12,560 მაშინ ჩვენ ვაპირებთ წავიდეთ წინ და ბეჭდვითი out თქვენ აიყვანეს მცირე int. 21 00:01:12,560 --> 00:01:15,730 >> სხვაგან, თუ მომხმარებელს მწვერვალებით, ვთქვათ, საშუალო ღირებულება, მოდით 22 00:01:15,730 --> 00:01:16,960 შემოწმება, რომ ასეთია. 23 00:01:16,960 --> 00:01:23,360 სხვაგან, თუ n მეტია ან ტოლია, ვთქვათ, 4 და n ნაკლებია ან ტოლია, 24 00:01:23,360 --> 00:01:31,850 ვთქვათ, 7, მაშინ მე ვაპირებ ბეჭდვა out თქვენ აიყვანეს საშუალო int. 25 00:01:31,850 --> 00:01:36,490 >> და ბოლოს, მე ვაპირებ ვივარაუდოთ, რომ თუ ღირებულება არის შორის 8 და 10, მათ 26 00:01:36,490 --> 00:01:37,550 აიღო დიდი int. 27 00:01:37,550 --> 00:01:44,140 ასე რომ გამოხატოს, რომ, მე აკრიფოთ სხვაგან, თუ n მეტია ან ტოლია 8 და n 28 00:01:44,140 --> 00:01:53,590 ნაკლებია ან ტოლი 10, წავიდეთ წინ და ამობეჭდოთ თქვენ აიყვანეს დიდი int. 29 00:01:53,590 --> 00:01:55,720 >> სხვაგან, არის მეოთხე მდგომარეობა აქ. 30 00:01:55,720 --> 00:01:59,520 თუ მომხმარებელს არ ითანამშრომლონ და ნაცვლად აკრეფილი ღირებულება, რომელიც ნაკლები 31 00:01:59,520 --> 00:02:04,430 0 ან მეტი 10, მინდა უბრალოდ საყვედური მათ. 32 00:02:04,430 --> 00:02:12,490 Else ამობეჭდოთ, თქვენ აიყვანეს არასწორი int. 33 00:02:12,490 --> 00:02:13,950 >> გადავარჩინოთ ფაილი. 34 00:02:13,950 --> 00:02:17,580 კომპილირდება ერთად, რათა არასამთავრობო შეცვლა. 35 00:02:17,580 --> 00:02:21,650 უკან სწრაფი, მე ვაპირებ, რომ აწარმოებს იგი dot slash არასამთავრობო შეცვლა. 36 00:02:21,650 --> 00:02:23,320 და მოდით ცდილობენ რამდენიმე ღირებულებებს. 37 00:02:23,320 --> 00:02:26,110 >> პირველ რიგში, მოდით იყოს uncooperative და ტიპის უარყოფითი 1. 38 00:02:26,110 --> 00:02:30,970 საბედნიეროდ, რომ აღენიშნებოდა ჩვენს მიერ საბოლოო ფილიალის რომ მდგომარეობა. 39 00:02:30,970 --> 00:02:36,530 მოდით ცდილობენ კვლავ dot slash არასამთავრობო switch, ამ დროს ვაძლევთ მას 1. 40 00:02:36,530 --> 00:02:37,900 მე მართლაც აიყვანეს მცირე int. 41 00:02:37,900 --> 00:02:43,250 >> მოდით ეს კიდევ ერთხელ dot slash არასამთავრობო switch, ამ დროს კრეფა, ვთქვათ, 5. 42 00:02:43,250 --> 00:02:44,590 და ეს საშუალო int. 43 00:02:44,590 --> 00:02:48,200 მოდით ახლა ნუ ერთხელ dot slash არასამთავრობო შეცვლა. 44 00:02:48,200 --> 00:02:52,650 და მისცეს მას ღირებულება 10, რომელიც მართლაც დიდი int. 45 00:02:52,650 --> 00:02:55,310 >> ახლა ის უნდა აღინიშნოს, რომ ამ პროგრამის ვერ განხორციელდა 46 00:02:55,310 --> 00:02:56,840 ნებისმიერი რაოდენობის გზები. 47 00:02:56,840 --> 00:03:00,160 პირველ რიგში, ეს იყო სრულიად თვითნებური რომ მე მიიპყრო ხაზი, რომ მე 48 00:03:00,160 --> 00:03:03,290 გააკეთა შორის მცირე, საშუალო დიდი და ints. 49 00:03:03,290 --> 00:03:05,230 ჩვენ შეგვეძლო შედგენილი იმ საზღვრების სადმე. 50 00:03:05,230 --> 00:03:08,930 >> მაგრამ კიდევ უფრო საინტერესოა, მე არ მაქვს გამოხატოს თავს ერთად ყველა ეს 51 00:03:08,930 --> 00:03:13,440 მეტია ან ტოლია ან ნაკლები მეტი ან ტოლია ნიშნები. 52 00:03:13,440 --> 00:03:18,880 მე შეეძლო, მაგალითად, გადაწერილი, თუ n მეტია ან ტოლია 4 და 53 00:03:18,880 --> 00:03:24,760 n ნაკლები ან ტოლია 7, რადგან ნაცვლად თუ n მეტია 3 და n 54 00:03:24,760 --> 00:03:29,130 ნაკლებია 8, შემდეგ ამობეჭდოთ თქვენ აიყვანეს საშუალო int. 55 00:03:29,130 --> 00:03:33,360 >> ყოველივე ამის შემდეგ, თუ მომხმარებლის input, რომელსაც ბუნების კიდევ int, არის მთელი რიცხვი, ჩვენ 56 00:03:33,360 --> 00:03:37,580 შეგიძლიათ გამოცდა, თუ ეს მნიშვნელობა არის დიდი მეტი 3 ან მეტი ან 57 00:03:37,580 --> 00:03:38,740 ტოლი 4. 58 00:03:38,740 --> 00:03:43,130 და ჩვენ შეგვიძლია ასევე შეამოწმოს, თუ ეს ღირებულება არანაკლებ 8 ან ნაკლები 59 00:03:43,130 --> 00:03:44,590 მეტი ან ტოლია 7. 60 00:03:44,590 --> 00:03:45,860