1 00:00:00,000 --> 00:00:00,720 2 00:00:00,720 --> 00:00:03,190 >> დევიდ ჯ Malan: ვარაუდობენ, რომ მინდა განახორციელოს პროგრამა, რომელიც თხოვს 3 00:00:03,190 --> 00:00:06,650 მომხმარებელს სიმებიანი და შემდეგ აგრძელებს ესარგებლა მათი შეყვანა, 4 00:00:06,650 --> 00:00:09,790 კონვერტაცია ნებისმიერ ამას წერილები რომ ტიპის ზედა. 5 00:00:09,790 --> 00:00:11,770 კარგად, მოდით წავიდეთ წინ და განახორციელოს, რომ პროგრამა. 6 00:00:11,770 --> 00:00:18,760 >> მოდით პირველ მოიცავს cs50.h მოჰყვა by მოიცავს stdio.h. 7 00:00:18,760 --> 00:00:23,990 და ისე, რომ ჩვენ შეგვიძლია გამოვიყენოთ strlen, მოდით მოიცავს string.h. 8 00:00:23,990 --> 00:00:29,860 >> მოდით მომდევნო აცხადებენ, მთავარი როგორც int ძირითადი void და მოდით ახლა გაგრძელება უბიძგონ 9 00:00:29,860 --> 00:00:31,600 მომხმარებელს სიმებიანი. 10 00:00:31,600 --> 00:00:34,840 Printf, მოდით შეგახსენებთ მათ ზოგიერთი შეყვანის. 11 00:00:34,840 --> 00:00:36,460 ახლა მოდით განაცხადოს string - 12 00:00:36,460 --> 00:00:37,630 ჩვენ მოვუწოდებთ მას s - 13 00:00:37,630 --> 00:00:44,010 და ვინახავთ ეს შედეგი მოუწოდებს CS50 ბიბლიოთეკა ფუნქცია GetString. 14 00:00:44,010 --> 00:00:48,850 >> მოდით ახლა გაგრძელება iterate მეტი თითოეული სიმბოლოების s, capitalizing 15 00:00:48,850 --> 00:00:50,650 ნებისმიერი მხედრულ ასოებით, რომ ჩვენ ვხედავთ. 16 00:00:50,650 --> 00:00:53,630 განთავსების int, მივიღებ 0. 17 00:00:53,630 --> 00:00:58,780 მოდით ასევე აცხადებენ, n, როგორც თანაბარი სიმებიანი სიგრძე s ასე რომ ჩვენ შეგვიძლია 18 00:00:58,780 --> 00:01:03,590 iterate საწყისი i წლამდე n, ხანგრძლივობა s, და ყოველი 19 00:01:03,590 --> 00:01:05,760 iteration ბიჯი i. 20 00:01:05,760 --> 00:01:09,970 >> და შემდეგ შიგნით ამ მარყუჟის, მოდით პირველი გამშვები მიმდინარე წერილი - 21 00:01:09,970 --> 00:01:12,270 i-th წერილი s, ასე ვთქვათ - 22 00:01:12,270 --> 00:01:14,170 ამას წერილში. 23 00:01:14,170 --> 00:01:23,090 თუ bracket i მეტია ან ტოლია to მხედრულ და ეს ნაკლებად 24 00:01:23,090 --> 00:01:26,900 მეტი ან ტოლია ამას z - 25 00:01:26,900 --> 00:01:30,860 ახლა თუ ჩვენ აკონვერტირებთ ამას წერილი ზედა, გავიხსენოთ, პირველი, 26 00:01:30,860 --> 00:01:35,810 in ASCII ამას 97 და ზედა არის 65. 27 00:01:35,810 --> 00:01:41,020 იმავდროულად, ამას ბ 98, და ზედა B არის 66. 28 00:01:41,020 --> 00:01:44,180 >> თუ ჩვენ გავაგრძელებთ შევხედოთ, რომ ნიმუში, ჩვენ დავინახავთ, რომ ამას 29 00:01:44,180 --> 00:01:49,240 წერილები ყოველთვის 32 ღირებულებების უმაღლესი ვიდრე ზედა წერილები. 30 00:01:49,240 --> 00:01:53,490 ასე რომ, თუ ჩვენ გვინდა, რომ გადაიყვანოთ ამას ზედა, იგი უნდა 31 00:01:53,490 --> 00:01:57,210 საკმარისია, მართლაც, გამოვაკლოთ 32 მომხმარებელს შეყვანის. 32 00:01:57,210 --> 00:02:01,330 ან უფრო ზოგადად, მხოლოდ სხვაობა, რომ განსხვავება ამას და 33 00:02:01,330 --> 00:02:02,310 კაპიტალური ა 34 00:02:02,310 --> 00:02:03,410 >> როგორ უნდა გამოხატოს, რომ? 35 00:02:03,410 --> 00:02:04,640 კარგად, მოდით გავაკეთოთ კოდი. 36 00:02:04,640 --> 00:02:09,960 Printf, გაცემა, unquote "% c" to print მიმდინარე ხასიათი, რასაც მოჰყვა 37 00:02:09,960 --> 00:02:18,500 ბეჭდვა, რაც არის ნანახია bracket i minus შედეგი აკეთებს ამას 38 00:02:18,500 --> 00:02:22,660 მინუს ზედა მძიმით. 39 00:02:22,660 --> 00:02:27,010 სხვა სიტყვებით, ეს ჩართული გამოხატვის, პატარა მინუს დიდი, არის 40 00:02:27,010 --> 00:02:29,360 დაბრუნებას აპირებს us at დღის ბოლოს 32. 41 00:02:29,360 --> 00:02:31,230 მაგრამ მე არ უნდა გვახსოვდეს, ის, რომ 32. 42 00:02:31,230 --> 00:02:34,150 შემიძლია დაუშვას კომპიუტერული გაერკვნენ რა განსხვავებაა ამას 43 00:02:34,150 --> 00:02:35,990 და კაპიტალის არის. 44 00:02:35,990 --> 00:02:39,610 >> ამასობაში, კიდევ ვიცი, რომ განსხვავება, შემიძლია გამოვაკლოთ ეს s 45 00:02:39,610 --> 00:02:43,710 bracket i, რომელიც მიიღებს რა სავარაუდოდ, ამას წერილი 46 00:02:43,710 --> 00:02:48,100 ქვედა ღირებულება, კერძოდ, ღირებულება, რომელიც რუკები გადატანა ზედა ექვივალენტი. 47 00:02:48,100 --> 00:02:51,240 მოდით ახლა გადარჩენა, კომპილაციის, და აწარმოებს ამ პროგრამის. 48 00:02:51,240 --> 00:02:57,760 რათა ესარგებლა dot slash კაპიტალიზაცია. 49 00:02:57,760 --> 00:03:01,290 და ჩემი შეყვანის იქნება hello. 50 00:03:01,290 --> 00:03:02,920 და არ გვაქვს, hello. 51 00:03:02,920 --> 00:03:05,570 >> ახლა ჩემი სწრაფი, მართლაც, არის ოდნავ მახინჯი, იმიტომ, რომ ჩვენ 52 00:03:05,570 --> 00:03:07,810 გამოტოვებული ერთი ცოტა ბეჭდვა. 53 00:03:07,810 --> 00:03:09,370 და მოდით დავუბრუნდეთ და დავამატო, რომ. 54 00:03:09,370 --> 00:03:12,890 ძალიან ბოლოში ამ პროგრამის მე ძალიან მარტივად, და ძირითადად 55 00:03:12,890 --> 00:03:18,440 ესთეტიკური მიზნით, აპირებს დაამატოთ printf, ციტირებით unquote backslash n. 56 00:03:18,440 --> 00:03:22,330 მოდით resave ფაილის recompile, გამეორება. 57 00:03:22,330 --> 00:03:28,090 >> რათა ესარგებლა, dot slash ესარგებლა. 58 00:03:28,090 --> 00:03:32,540 ერთხელ, შეყვანის მე გთავაზობთ "Hello" ყველა ქვედა და ახლა დააჭიროთ, 59 00:03:32,540 --> 00:03:34,550 და "Hello", ბევრად უფრო cleanly დაბეჭდილი. 60 00:03:34,550 --> 00:03:36,432