1 00:00:00,000 --> 00:00:03,290 >> [เล่นเพลง] 2 00:00:03,290 --> 00:00:04,989 3 00:00:04,989 --> 00:00:06,280 JASON Hirschhorn: OK ทุกคน 4 00:00:06,280 --> 00:00:07,460 ยินดีต้อนรับสู่มาตรา 5 00:00:07,460 --> 00:00:10,840 นี่คือ CS50 มากของเรา ส่วนแรกสุด 6 00:00:10,840 --> 00:00:13,700 ในขณะที่คุณทุกคนรู้ว่าในสัปดาห์หน้า ส่วนที่ปกติจะเริ่มต้น 7 00:00:13,700 --> 00:00:15,580 แต่ในสัปดาห์นี้เราทุกคนร่วมกัน 8 00:00:15,580 --> 00:00:17,730 >> มีตัวเองเป็น 9 00:00:17,730 --> 00:00:18,840 ชื่อของฉันคือเจสัน 10 00:00:18,840 --> 00:00:20,630 ฉันอาจารย์ในสาขาวิทยาศาสตร์คอมพิวเตอร์ 11 00:00:20,630 --> 00:00:23,910 เรามี Andi ที่หัวของ TA CS50 12 00:00:23,910 --> 00:00:27,630 และ Scaz ศาสตราจารย์ไบรอัน Scassellati, เขาเป็นศาสตราจารย์ในสาขาวิทยาศาสตร์คอมพิวเตอร์ 13 00:00:27,630 --> 00:00:30,970 >> เราเป็นหัว CS50 ที่มหาวิทยาลัยเยล 14 00:00:30,970 --> 00:00:34,992 คุณสามารถส่งอีเมล เรา heads@cs50.yale.edu 15 00:00:34,992 --> 00:00:35,950 เราจะอยู่ที่การบรรยาย 16 00:00:35,950 --> 00:00:37,547 เราจะอยู่ที่เวลาทำงาน 17 00:00:37,547 --> 00:00:40,130 ถ้ามีอะไรที่เราเคยสามารถ ทำเพื่อคุณสิ่งที่คุณต้องการ 18 00:00:40,130 --> 00:00:42,610 อย่าลังเลที่จะถึงออกมาให้เรา 19 00:00:42,610 --> 00:00:44,140 >> ดังนั้นสิ่งที่เราจะทำในวันนี้ 20 00:00:44,140 --> 00:00:47,790 หรือก่อนหน้านั้นมีอะไร ขึ้นมาในสัปดาห์นี้? 21 00:00:47,790 --> 00:00:52,620 ดังนั้นเวลาทำการคือวันจันทร์, วันอังคาร วันพุธและวันพฤหัสบดีที่ 8:00-11:00 22 00:00:52,620 --> 00:00:54,770 มีตารางเวลาที่อยู่บนเว็บไซต์ 23 00:00:54,770 --> 00:00:57,830 >> ส่วนเหมือนที่ผมกล่าวถึง จะเริ่มต้นในสัปดาห์หน้า 24 00:00:57,830 --> 00:01:01,390 และคุณจะพบว่าในสัปดาห์นี้สิ่งที่ ส่วนเวลาของคุณคือสิ่งที่วันที่มันเป็น 25 00:01:01,390 --> 00:01:03,350 และผู้ที่เป็น TA ของคุณ 26 00:01:03,350 --> 00:01:08,610 >> ปัญหาคือชุดที่ 1 ครบกำหนดเมื่อวันพฤหัสบดีเวลา เที่ยงวันศุกร์ตอนเที่ยงวันที่มีปลาย 27 00:01:08,610 --> 00:01:10,817 ใช่คุณมีเก้าวันปลาย 28 00:01:10,817 --> 00:01:12,150 และมีเก้าชุดปัญหา 29 00:01:12,150 --> 00:01:14,320 และสามารถใช้หนึ่ง วันต่อปัญหาที่เกิดขึ้นในช่วงปลายชุด 30 00:01:14,320 --> 00:01:17,930 ใช่ในผลทุกปัญหา ชุดเนื่องจากวันศุกร์เวลาเที่ยง 31 00:01:17,930 --> 00:01:18,550 นั้นคือทั้งหมด. 32 00:01:18,550 --> 00:01:20,400 ทั้งหมดที่มีรายละเอียดเกี่ยวกับหลักสูตร 33 00:01:20,400 --> 00:01:22,360 >> ทุกวันศุกร์เรามีอาหารกลางวัน 34 00:01:22,360 --> 00:01:25,230 เราต้องการที่จะให้มีขนาดใหญ่นี้ แน่นอนรู้สึกบิตขนาดเล็ก 35 00:01:25,230 --> 00:01:26,580 ดังนั้นคุณยินดีที่จะตอบรับคำเชิญ 36 00:01:26,580 --> 00:01:30,050 อาหารกลางวันฟรีกับเพื่อน เพื่อนร่วมชั้นและพนักงาน 37 00:01:30,050 --> 00:01:34,120 cs50.yale.edu/rsvp 38 00:01:34,120 --> 00:01:36,940 >> ทุกสิ่งเหล่านี้ว่า ฉันมีบนหน้าจอ 39 00:01:36,940 --> 00:01:43,330 และอื่น ๆ ที่คุณสามารถหา cs50.yale.edu หรือ cs50.harvard.edu ถ้าคุณไปที่ฮาร์วาร์ 40 00:01:43,330 --> 00:01:46,800 และกำลังรับชมออนไลน์นี้ 41 00:01:46,800 --> 00:01:50,240 >> นอกจากนี้ในเว็บไซต์เหล่านั้นมี ตันของทรัพยากรสำหรับคุณ 42 00:01:50,240 --> 00:01:54,610 ทุกบรรยายไม่เพียง แต่มีวิดีโอ ของการบรรยาย แต่ยังตั้งข้อสังเกต 43 00:01:54,610 --> 00:01:58,184 ใครบางคนที่จะดู บรรยายและจดบันทึกสำหรับคุณ 44 00:01:58,184 --> 00:02:00,100 ดังนั้นคุณก็สามารถชำระเงิน ความสนใจในระหว่างการบรรยาย 45 00:02:00,100 --> 00:02:03,970 หรือคุณสามารถใช้บันทึกของพวกเขา / ของเรา ตั้งข้อสังเกตในการเสริมบันทึกของคุณเอง 46 00:02:03,970 --> 00:02:04,987 >> มีภาพนิ่งออนไลน์ 47 00:02:04,987 --> 00:02:07,320 แหล่งที่มา code-- ทุกอย่าง เดวิดไปมากกว่าในการบรรยาย 48 00:02:07,320 --> 00:02:09,979 หรือ Scaz ไปมากกว่าการบรรยายว่า รหัสที่มาพร้อมใช้งานออนไลน์ 49 00:02:09,979 --> 00:02:11,750 เช่นกันเหมือนที่ผมกล่าวถึงวิดีโอ 50 00:02:11,750 --> 00:02:14,257 >> ส่วนเหมือนกันทั้งหมดจะถูกถ่ายทำ 51 00:02:14,257 --> 00:02:15,840 ทั้งหมดของภาพนิ่งเหล่านั้นจะสามารถใช้ได้ 52 00:02:15,840 --> 00:02:18,190 ทั้งหมดของรหัสที่จะ มีให้สำหรับคุณ 53 00:02:18,190 --> 00:02:22,440 มีกางเกงขาสั้นในเว็บไซต์ที่มี CS50 พนักงานใช้เวลาห้าถึง 10 54 00:02:22,440 --> 00:02:24,130 นาทีจะผ่านหัวข้อสำหรับคุณ 55 00:02:24,130 --> 00:02:26,750 บางส่วนของคนที่คุณได้อยู่แล้ว พบในชุดปัญหา 56 00:02:26,750 --> 00:02:30,430 >> สำนักงานชั่วโมงที่ผมกล่าวถึงวันจันทร์ ผ่านวันพฤหัสบดี 8:00-11:00 57 00:02:30,430 --> 00:02:32,600 การศึกษา CS50 เป็นทรัพยากรที่ยอดเยี่ยม 58 00:02:32,600 --> 00:02:37,100 มีปัญหาการปฏิบัติที่ สไลด์ตัวอย่างข้อบกพร่องที่รู้จักกัน 59 00:02:37,100 --> 00:02:40,920 ว่านักเรียนชอบที่จะวิ่งเข้ามา, สำหรับหลักทุกครั้งที่เราหัวข้อ 60 00:02:40,920 --> 00:02:42,650 จะครอบคลุมในหลักสูตรนี้ 61 00:02:42,650 --> 00:02:46,350 >> และสุดท้ายบนสไลด์นี้ อย่างน้อย Reference50 62 00:02:46,350 --> 00:02:49,690 ซึ่งจะช่วยให้ข้อมูล ในทุกฟังก์ชั่น C 63 00:02:49,690 --> 00:02:53,160 คุณอาจจะเคยหวังว่าอาจจะเป็น ที่จะใช้และหลายอื่น ๆ อีกมากมาย 64 00:02:53,160 --> 00:02:55,690 >> อีกครั้งที่จุดจุดจุดที่ ด้านล่างของหน้าจอ 65 00:02:55,690 --> 00:02:59,990 คือการแสดงให้เห็นว่ามีแม้กระทั่ง ทรัพยากรมากขึ้นในทั้งสองเว็บไซต์: 66 00:02:59,990 --> 00:03:04,270 cs50.yale.edu, cs50.harvard.edu 67 00:03:04,270 --> 00:03:05,840 >> ดังนั้นสิ่งที่เราทำในวันนี้? 68 00:03:05,840 --> 00:03:08,970 ดีแรกฉันจะให้ คุณมองไปที่ทรัพยากร 69 00:03:08,970 --> 00:03:10,010 แล้วไม่ว่าอย่างใดอย่างหนึ่ง 70 00:03:10,010 --> 00:03:11,590 มองที่พวกเรา. 71 00:03:11,590 --> 00:03:16,430 >> ตอนนี้เรากำลังจะไปมากกว่า ชนิดข้อมูลและผู้ประกอบการใน C. 72 00:03:16,430 --> 00:03:19,990 จากนั้นล่ะจะมาขึ้นที่นี่และ ไปกว่าห้องสมุดในซี printf () 73 00:03:19,990 --> 00:03:24,570 ฟังก์ชั่นที่คุณมีอยู่แล้ว คุ้นเคยหรือจะกลายเป็นได้อย่างรวดเร็วมาก 74 00:03:24,570 --> 00:03:25,530 คุ้นเคย 75 00:03:25,530 --> 00:03:27,810 และคุณยังจะไปกว่า เงื่อนไขและลูป 76 00:03:27,810 --> 00:03:30,900 >> และแล้วในที่สุด Scaz จะไปกว่า CS50 ID 77 00:03:30,900 --> 00:03:34,250 หากคุณไม่ได้ในนกพิราบ แล้วในปัญหาชุดที่ 1, 78 00:03:34,250 --> 00:03:37,060 เช่นเดียวกับวิธีการใช้ คำสั่งมินัลและมีประโยชน์ 79 00:03:37,060 --> 00:03:42,280 แล้วให้คุณสาธิตและ การเข้ารหัสการปฏิบัติใน CS50 ID 80 00:03:42,280 --> 00:03:45,130 >> ก่อนที่ผมจะกระโดดในนี้ เนื้อหาในด้านนี้ 81 00:03:45,130 --> 00:03:46,770 ไม่มีใครมีคำถามใด ๆ เพื่อให้ห่างไกล? 82 00:03:46,770 --> 00:03:53,190 83 00:03:53,190 --> 00:03:54,030 ที่ดี 84 00:03:54,030 --> 00:03:54,950 ตกลง. 85 00:03:54,950 --> 00:03:55,810 การเปลี่ยนเกียร์ 86 00:03:55,810 --> 00:03:58,760 >> [การเปลี่ยนเกียร์] 87 00:03:58,760 --> 00:04:03,070 >> นั่นคือผมขยับ เกียร์อยู่ในรถด้วยตนเอง 88 00:04:03,070 --> 00:04:10,920 ดังนั้นชนิดข้อมูลใน C คุณไม่สามารถเพียงแค่มี ตัวแปร x และมีมันจะอยู่ในบรรทัดที่ 10 89 00:04:10,920 --> 00:04:17,170 จำนวนเต็มอาจจะจำนวน 1, ในบรรทัดที่ 20 เลขทศนิยม 10.5 90 00:04:17,170 --> 00:04:20,500 แล้วเส้นคู่ ภายหลังสตริงฉันรัก CS50 91 00:04:20,500 --> 00:04:25,052 >> ใน C ตัวแปรจะไม่สามารถ สิ่งหนึ่งและสิ่งหนึ่งเท่านั้น 92 00:04:25,052 --> 00:04:26,510 และเพื่อให้คุณต้องให้พวกเขาชนิด 93 00:04:26,510 --> 00:04:28,780 และคณะกรรมการนี​​้เรา มีรายชื่อของประเภท 94 00:04:28,780 --> 00:04:32,000 มีตัวอักษรซึ่ง ยืนสำหรับตัวละคร 95 00:04:32,000 --> 00:04:36,850 เพื่อให้เป็นหนึ่งตัวอักษร A, B, C, ดีที่ยังสามารถเป็นช่องว่าง 96 00:04:36,850 --> 00:04:40,290 หรือที่ยังสามารถ ตัวอักษรบรรทัดใหม่ 97 00:04:40,290 --> 00:04:45,030 >> มีจำนวนเต็มซึ่งเป็นเพียง ตัวเลขทั้งเบอร์หรือจำนวนเต็ม 98 00:04:45,030 --> 00:04:47,130 rather-- แต่ไม่มีทศนิยม 99 00:04:47,130 --> 00:04:49,790 >> สำหรับทศนิยมเรามี จำนวนจุดลอยตัว 100 00:04:49,790 --> 00:04:53,200 จำนวนจุดลอยตัว เป็นตัวเลขที่มีทศนิยม 101 00:04:53,200 --> 00:04:58,160 >> จากนั้นก็มี longs ซึ่งเป็น จำนวนเต็มหลักอีกต่อไป 102 00:04:58,160 --> 00:05:01,160 คุณจะพบว่ายาว คือ 8 ขณะที่ int คือ 4 103 00:05:01,160 --> 00:05:02,640 ฉันจะไปที่ในครั้งที่สอง 104 00:05:02,640 --> 00:05:07,390 นั่นเป็นเพราะ longs สามารถเก็บแม้กระทั่ง จำนวนเต็มมากกว่า int สามารถจัดเก็บ 105 00:05:07,390 --> 00:05:10,100 คู่ลอยยาว 106 00:05:10,100 --> 00:05:12,460 >> และในที่สุดเรามี สตริงซึ่งเป็นชนิด 107 00:05:12,460 --> 00:05:14,430 ที่คุณอาจจะได้ใช้ก่อน 108 00:05:14,430 --> 00:05:21,100 หากคุณรวม hashtag # includeCS50.h ในแฟ้มแหล่งที่มาของคุณ 109 00:05:21,100 --> 00:05:23,170 แล้วคุณสามารถใช้ชนิดสตริง 110 00:05:23,170 --> 00:05:25,560 มันไม่ได้สร้างขึ้นจริงลงในซี 111 00:05:25,560 --> 00:05:27,760 >> มีชนิดอื่น ๆ คู่เช่นกัน 112 00:05:27,760 --> 00:05:32,900 แต่เหล่านี้เป็นคนที่มีหลัก ที่คุณจะใช้งานและการเผชิญหน้า 113 00:05:32,900 --> 00:05:36,210 C เป็นอีกครั้งที่ผมกล่าวถึง variable-- ทุกตัว 114 00:05:36,210 --> 00:05:38,620 เพียง แต่สามารถเป็นหนึ่งในชนิดและประเภทหนึ่งเท่านั้น 115 00:05:38,620 --> 00:05:42,890 นั่นเป็นเพราะซีเป็นแบบคงที่ ภาษาพิมพ์เมื่อเทียบ 116 00:05:42,890 --> 00:05:45,780 ภาษาพิมพ์แบบไดนามิก ซึ่งถ้าคุณสร้างตัวแปร 117 00:05:45,780 --> 00:05:50,081 คุณสามารถเปลี่ยนสิ่งที่เก็บไว้ใน ได้ตามที่คุณไปในในโปรแกรมของคุณ 118 00:05:50,081 --> 00:05:52,580 มากกว่าที่นี่ไปทางขวา ด้านผมมีขนาดที่แตกต่างกัน 119 00:05:52,580 --> 00:05:57,440 ประเภทนี้ของข้อมูลในไบต์ 120 00:05:57,440 --> 00:05:59,710 ดังนั้นตัวละครที่เป็น 1 ไบต์ 121 00:05:59,710 --> 00:06:01,250 นั่นเป็น 8 บิต 122 00:06:01,250 --> 00:06:05,530 และนั่นหมายความว่าเพราะ 8 บิตมีแปด 0s และ 1s 123 00:06:05,530 --> 00:06:08,280 เราเห็นการสาธิตในครั้งแรก สัปดาห์ร่วมกับหลอดไบนารีที่ 124 00:06:08,280 --> 00:06:15,680 >> ด้วย 8 บิตหรือ 1 ไบต์ที่เราสามารถทำได้ แสดงตัวเลข 0-255 125 00:06:15,680 --> 00:06:16,180 ขวา 126 00:06:16,180 --> 00:06:18,770 หากทุกอย่างเป็น 8 บิตที่ 0 0 127 00:06:18,770 --> 00:06:23,640 ถ้าบิตแรกคือ 1, ที่จำนวน หนึ่งและอื่น ๆ ตลอดทางถึง 255 128 00:06:23,640 --> 00:06:28,290 และที่ว่าทำไมตัวละครที่คุณสามารถ มีหลักถึง 255 ของพวกเขา 129 00:06:28,290 --> 00:06:31,210 แต่นั่นคือความอุดมสมบูรณ์เพื่อให้ครอบคลุมทั้งหมด ตัวอักษรที่เราจำเป็นต้องใช้ 130 00:06:31,210 --> 00:06:38,060 >> สำหรับจำนวนเต็มคุณสามารถมี 0 แล้วคุณมี 2 ถึง 32 ลบ 1 131 00:06:38,060 --> 00:06:40,340 เหล่านี้เป็นวิธีการที่หลายตัวเลือก คุณมีจำนวนเต็ม 132 00:06:40,340 --> 00:06:44,780 >> สำหรับระยะเวลานานคุณมี 0 2 ถึง 64 ลบ 1 133 00:06:44,780 --> 00:06:48,860 เพื่อให้คุณมีจำนวนมากหลาย ตัวเลือกเพิ่มเติมสำหรับ longs 134 00:06:48,860 --> 00:06:54,220 >> เงื่อนไขที่เป็นเครื่องหมายคำถาม เนื่องจากว่าเป็นที่น่าตื่นเต้นสำหรับในภายหลัง 135 00:06:54,220 --> 00:06:55,000 ใช่ 136 00:06:55,000 --> 00:06:56,350 ผมบอกได้ทุกคน บนขอบของที่นั่งของพวกเขา 137 00:06:56,350 --> 00:06:57,450 เหมือนสิ่งที่เป็นเครื่องหมายคำถามที่? 138 00:06:57,450 --> 00:06:58,390 มันเป็นเรื่องน่าตื่นเต้น 139 00:06:58,390 --> 00:07:02,340 ในที่สุดเราจะครอบคลุมขนาดของ สายและพูดคุยเกี่ยวกับสตริง 140 00:07:02,340 --> 00:07:04,692 เพราะสตริงเป็นจริง หนึ่งในล้อการฝึกอบรม 141 00:07:04,692 --> 00:07:06,400 เราใส่ในในครั้งนี้ แน่นอนที่จุดเริ่มต้น 142 00:07:06,400 --> 00:07:09,700 และจากนั้นจะออกในภายหลัง ในเพราะสตริงใน C 143 00:07:09,700 --> 00:07:13,320 ชี้เป็นจริง เพื่ออาร์เรย์ตัวอักษร 144 00:07:13,320 --> 00:07:15,810 แต่อีกครั้งที่เป็น ที่น่าตื่นเต้นในภายหลัง 145 00:07:15,810 --> 00:07:18,890 ก่อนที่ผมจะย้ายไปคำถามใด ๆ แสดงความคิดเห็นความกังวลเกี่ยวกับสไลด์นี้? 146 00:07:18,890 --> 00:07:25,800 147 00:07:25,800 --> 00:07:26,630 >> ตกลง. 148 00:07:26,630 --> 00:07:30,330 ฉันจะต้องเป็นคนอธิบายที่ยอดเยี่ยม 149 00:07:30,330 --> 00:07:33,210 นอกจากนี้เมื่อคุณกำลังเขียนโปรแกรม คุณกำลังจะใช้ประกอบการเหล่านี้ 150 00:07:33,210 --> 00:07:36,730 สัญญาณที่ง่ายมากที่สามารถทำง่าย การดำเนินงานที่คุณอาจ 151 00:07:36,730 --> 00:07:38,340 คุ้นเคยมาก 152 00:07:38,340 --> 00:07:42,580 >> ยกตัวอย่างเช่นที่อยู่ด้านขวา ด้านมือเราเห็นในการเพิ่ม 153 00:07:42,580 --> 00:07:44,640 ในการเพิ่มคุณเพียงแค่ทำเครื่องหมายบวก 154 00:07:44,640 --> 00:07:46,850 และอื่น ๆ ที่คุณอาจมี สองตัวแปร x และ y 155 00:07:46,850 --> 00:07:48,810 คุณสามารถทำเช่น x + y ที่ในรหัสของคุณ 156 00:07:48,810 --> 00:07:52,790 บางทีคุณอาจต้องการ to-- ว่าคุณ มีหมายเลข 7 และ 3 157 00:07:52,790 --> 00:07:55,780 คุณต้องการในการจัดเก็บที่ ในตัวแปรที่เรียกว่าผลรวม 158 00:07:55,780 --> 00:08:03,010 คุณสามารถทำเช่น int สำหรับประเภทพื้นที่ ผลรวมชื่อของตัวแปรที่ = 7 + 3; 159 00:08:03,010 --> 00:08:05,780 >> สิ่งที่จะร้านค้าที่อยู่ในผลรวม? 160 00:08:05,780 --> 00:08:07,190 ใคร? 161 00:08:07,190 --> 00:08:09,270 ถ้าฉันมีในผลรวม = 7 + 3 162 00:08:09,270 --> 00:08:10,437 สิ่งที่จะถูกเก็บไว้ในผลรวม? 163 00:08:10,437 --> 00:08:11,520 คุณก็สามารถตะโกนมันออก 164 00:08:11,520 --> 00:08:12,120 ผู้ชม: 10 165 00:08:12,120 --> 00:08:12,995 >> JASON Hirschhorn: 10! 166 00:08:12,995 --> 00:08:14,870 ที่เหมาะสมว่า 167 00:08:14,870 --> 00:08:19,520 สิ่งที่เกี่ยวกับในผลรวม = 7-3, ฉันเพียงแค่ใช้เครื่องหมายขีด 168 00:08:19,520 --> 00:08:20,871 สิ่งที่เกิดขึ้นจะถูกเก็บไว้? 169 00:08:20,871 --> 00:08:21,370 ผู้ชม: 4 170 00:08:21,370 --> 00:08:22,203 JASON Hirschhorn: 4 171 00:08:22,203 --> 00:08:25,770 ผลรวมอาจจะเป็นชื่อที่ผิด ตัวแปรที่ แต่ 4 จะถูกเก็บไว้ 172 00:08:25,770 --> 00:08:31,890 >> การคูณใน C ใช้เล็ก ๆ น้อย ๆ ตัวละครที่สตาร์, คุณไม่ได้ใช้ x 173 00:08:31,890 --> 00:08:35,990 จะแบ่งให้ใช้ไปข้างหน้า ไม่ Slash สัญลักษณ์ส่วน 174 00:08:35,990 --> 00:08:39,580 และเพื่อ modulo ใช้สัญลักษณ์เปอร์เซ็นต์ 175 00:08:39,580 --> 00:08:47,900 >> ดังนั้นขอบอกว่าผมต้องการที่จะเห็น int ซี = 7% 3 สิ่งที่จะถูกเก็บไว้ในซี? 176 00:08:47,900 --> 00:08:51,250 ดังนั้นที่เป็นหลัก ขอให้สิ่งที่ไม่โมดูโลทำอย่างไร 177 00:08:51,250 --> 00:08:52,750 ไม่มีใครรู้ว่าสิ่งที่โมดูโลไม่? 178 00:08:52,750 --> 00:08:53,940 ใช่ 179 00:08:53,940 --> 00:08:54,870 y ที่ 4 180 00:08:54,870 --> 00:08:56,120 ลำโพง 1: มันเป็นส่วนที่เหลือ 181 00:08:56,120 --> 00:08:58,369 JASON Hirschhorn: มันเป็น ที่เหลือเมื่อคุณแบ่ง 182 00:08:58,369 --> 00:09:02,790 ดังนั้น 7 โดยแบ่งออกเป็น 3 ส่วนที่เหลือคือ 2 1 183 00:09:02,790 --> 00:09:04,690 ดังนั้น 1 จะถูกเก็บไว้ 184 00:09:04,690 --> 00:09:06,970 >> คุณไม่ได้ลบ แต่นั่นคือวิธีการทำงาน 185 00:09:06,970 --> 00:09:09,140 นั่นคือสิ่งที่ผู้ประกอบการโมดูโลไม่ 186 00:09:09,140 --> 00:09:12,360 มันต้องใช้เวลาเป็นจำนวนมากแบ่งออกได้โดย อีกจำนวนและผลตอบแทนให้กับคุณ 187 00:09:12,360 --> 00:09:14,590 ส่วนที่เหลือ 188 00:09:14,590 --> 00:09:19,770 ดังนั้นอีกครั้ง 7% 3 จะช่วยให้คุณ 1 เพราะ 7 โดยแบ่งออกเป็น 3 ส่วนที่เหลือคือ 2 1, 189 00:09:19,770 --> 00:09:21,650 และผลตอบแทนที่เหลือ 190 00:09:21,650 --> 00:09:24,470 >> สิ่งที่เกี่ยวกับขอกลับไปขึ้น ขั้นตอนหนึ่งที่จะเข้าสู่ระบบส่วนที่ 191 00:09:24,470 --> 00:09:29,194 ถ้าฉันไม่ 7 / โดยแบ่งออกเป็น 3 ไม่ ใครจะรู้ว่าสิ่งที่จะกลับมา? 192 00:09:29,194 --> 00:09:30,090 >> ลำโพง 2: 2 193 00:09:30,090 --> 00:09:32,240 >> JASON Hirschhorn: ทำไมที่ 2 และไม่ได้ 2.333? 194 00:09:32,240 --> 00:09:34,560 >> ลำโพง 2: ฉันคิดว่ามันตัด หลังจากทั้งจำนวน 195 00:09:34,560 --> 00:09:36,310 JASON Hirschhorn: ดังนั้น ที่เหมาะสมว่า 196 00:09:36,310 --> 00:09:39,880 ใน C ถ้าคุณทำส่วนหนึ่งของ จำนวนเต็มสองจำนวน 7 โดยแบ่งออกเป็น 3 197 00:09:39,880 --> 00:09:43,430 คำตอบที่จะได้รับที่ ในกรณีนี้ 2.3333 ตลอดไป 198 00:09:43,430 --> 00:09:47,080 และพบจุดทศนิยมนั้นและ สับทุกอย่างออกหลังจุดทศนิยม 199 00:09:47,080 --> 00:09:49,240 และมันก็กลับ 2 200 00:09:49,240 --> 00:09:51,120 >> ดังนั้นถ้าฉันไม่ 8 โดยแบ่งออกเป็น 3 201 00:09:51,120 --> 00:09:54,010 ที่จริงเรารู้ ที่จะกลับ 2.666, 202 00:09:54,010 --> 00:09:57,050 แต่มันสับที่ทุกอย่างออก ทศนิยมตัดทอนมันทั้งหมด 203 00:09:57,050 --> 00:09:58,640 และเพียงแค่กลับไปที่คุณ 2 204 00:09:58,640 --> 00:10:02,090 ดังนั้น 6 โดยแบ่งออกเป็น 3, 7 แบ่ง โดย 3, 8 หารด้วย 3 205 00:10:02,090 --> 00:10:04,840 ทั้งหมดจะกลับไปที่คุณ 2 206 00:10:04,840 --> 00:10:08,770 >> ไม่มีใครรู้หรือมีการคาดเดาที่ เป็นวิธีที่จริงผมอาจจะได้รับ 207 00:10:08,770 --> 00:10:10,790 คำตอบที่เต็มรูปแบบถ้าผมต้องการทศนิยมที่? 208 00:10:10,790 --> 00:10:13,120 209 00:10:13,120 --> 00:10:13,620 ใช่ 210 00:10:13,620 --> 00:10:14,152 เอาเลย 211 00:10:14,152 --> 00:10:15,110 ลำโพงที่ 3: ใช้ลอยหรือไม่? 212 00:10:15,110 --> 00:10:16,942 JASON Hirschhorn: คุณหมายถึงอะไร? 213 00:10:16,942 --> 00:10:19,786 ลำโพงที่ 3: เพราะคุณกล่าวว่า ลอยเป็นหมายเลข [ไม่ได้ยิน] 214 00:10:19,786 --> 00:10:22,900 215 00:10:22,900 --> 00:10:23,900 JASON Hirschhorn: ขวา 216 00:10:23,900 --> 00:10:26,100 ดังนั้นที่ตรงขวา 217 00:10:26,100 --> 00:10:28,440 7 เป็นจำนวนเต็ม 218 00:10:28,440 --> 00:10:31,690 แต่ถ้าผมต้องการที่จะเปิดที่ เป็นจำนวนจุดลอย 219 00:10:31,690 --> 00:10:34,674 ผมจะมีการจัดเก็บที่ เป็น 7.0 เนื่องจากคอมพิวเตอร์ 220 00:10:34,674 --> 00:10:37,090 เป็นจริง stupid-- เราเห็นว่า กับ PB และ J example-- 221 00:10:37,090 --> 00:10:38,930 ก็จะทำตรง สิ่งที่คุณบอกว่า 222 00:10:38,930 --> 00:10:40,846 >> ดังนั้นถ้าคุณเขียน 7 มัน คิดว่าเป็นจำนวนเต็ม 223 00:10:40,846 --> 00:10:43,640 ถ้าคุณเขียน 7.0 แม้ว่าเรา รู้ว่าสิ่งเหล่านี้จะเทียบเท่า 224 00:10:43,640 --> 00:10:45,550 การปฏิบัติต่อที่เหมือน จำนวนจุดลอย 225 00:10:45,550 --> 00:10:50,441 ดังนั้นถ้าคุณไม่ได้แบ่ง 7.0 3 หรือหารด้วย 3.0 226 00:10:50,441 --> 00:10:52,440 มันจะบอกว่าตกลงตอนนี้ เราจัดการกับลอย 227 00:10:52,440 --> 00:10:57,514 ฉันจะกลับมาอยู่กับคุณตลอดไป 2.333333 228 00:10:57,514 --> 00:10:59,930 แต่ไม่ได้จริงๆตลอดไปเพราะ อย่างที่เราเห็นในการบรรยาย 229 00:10:59,930 --> 00:11:03,350 ตัวเลขเหล่านี้จุดลอย ไม่ได้อย่างแม่นยำว่า 230 00:11:03,350 --> 00:11:05,940 >> ดังนั้นถ้าคุณต้องการทศนิยมว่า หรือเป็นส่วนหนึ่งของทศนิยมนั้น 231 00:11:05,940 --> 00:11:08,090 แล้วคุณจะต้อง use-- หนึ่งของพวกเขา จะต้องมีจำนวนจุดลอย 232 00:11:08,090 --> 00:11:11,048 และเครื่องคอมพิวเตอร์ที่มีการเข้าใจ ว่านี่คือจุดลอยคุณ 233 00:11:11,048 --> 00:11:13,350 การจัดการกับความไม่เป็นจำนวนเต็ม 234 00:11:13,350 --> 00:11:16,760 คำถามใด ๆ เกี่ยวกับตารางที่เกี่ยวกับ ด้านขวามือเพื่อให้ห่างไกล? 235 00:11:16,760 --> 00:11:22,650 หรือด้านซ้ายมือของคุณของคุณ ซ้ายด้านซ้ายมือของคุณ 236 00:11:22,650 --> 00:11:23,264 ใช่ 237 00:11:23,264 --> 00:11:23,972 ลำโพง 4: ขวา 238 00:11:23,972 --> 00:11:26,216 สำหรับเหมือนปกติ จำนวนเต็มคุณจะ 239 00:11:26,216 --> 00:11:30,230 write-- คุณจะต้องเขียนลอย? 240 00:11:30,230 --> 00:11:31,920 >> JASON Hirschhorn: ใช่ดังนั้น 241 00:11:31,920 --> 00:11:34,400 ดีถ้าคุณต้องการที่จะสร้าง ตัวแปรที่ลอยที่ 242 00:11:34,400 --> 00:11:37,020 คุณต้องการที่จะพูดลอย ซีเท่ากับบางสิ่งบางอย่าง 243 00:11:37,020 --> 00:11:37,640 >> ลำโพง 4: ตกลง 244 00:11:37,640 --> 00:11:41,950 >> JASON Hirschhorn: แต่ถ้าผมต้องการที่จะ ทำ 7 โดยแบ่งออกเป็น 3 และได้รับทศนิยมว่า 245 00:11:41,950 --> 00:11:48,540 ฉันจะทำลอยซี = 7.0 / 3.0; และ ที่จะให้ฉันจุดลอย 246 00:11:48,540 --> 00:11:49,273 จำนวน 247 00:11:49,273 --> 00:11:50,000 >> ลำโพง 4: ตกลง 248 00:11:50,000 --> 00:11:56,370 >> JASON Hirschhorn: ถ้าผมทำ สิ่งที่ต้องการ int ซี = 7/3, 249 00:11:56,370 --> 00:12:00,856 ที่จะให้ฉันจำนวนเต็ม เพราะผู้เป็นจำนวนเต็มทั้งหมด 250 00:12:00,856 --> 00:12:01,730 ที่ทำให้รู้สึก? 251 00:12:01,730 --> 00:12:02,320 >> ลำโพง 4: ใช่ 252 00:12:02,320 --> 00:12:02,950 >> JASON Hirschhorn: OK 253 00:12:02,950 --> 00:12:03,450 ที่ดี 254 00:12:03,450 --> 00:12:06,030 คำถามใด ๆ อื่น ๆ เกี่ยวกับตารางที่? 255 00:12:06,030 --> 00:12:07,220 จริงเหรอ? 256 00:12:07,220 --> 00:12:08,380 ฉันตื่นเต้น. 257 00:12:08,380 --> 00:12:09,120 ตกลง. 258 00:12:09,120 --> 00:12:13,910 >> ดังนั้นบางสิ่งอื่น ๆ ที่คุณจะใช้ อาจเกิดในเงื่อนไขหรือลูป 259 00:12:13,910 --> 00:12:17,580 เป็นประเภทนี้ operators-- ประเภทนี้ของการแสดงออกบูลีน 260 00:12:17,580 --> 00:12:23,140 และการที่เราได้เรียนรู้ == คือสิ่งที่คุณ ใช้ในการตรวจสอบว่าสองสิ่งที่มีค่าเท่ากัน 261 00:12:23,140 --> 00:12:28,170 >> ดังนั้นที่นี่ฉันตรวจสอบว่า x == y ที่ขอ อีกครั้งคิดว่า x คือ 7 และ y ที่ 3 262 00:12:28,170 --> 00:12:33,220 ดังนั้นถ้าผมเขียน 7 == 3 สิ่งที่ ที่จะกลับมากับผมหรือเปล่า 263 00:12:33,220 --> 00:12:34,220 ว่าเป็นจริงหรือเท็จ? 264 00:12:34,220 --> 00:12:35,275 >> ผู้ชม: เท็จ 265 00:12:35,275 --> 00:12:36,150 JASON Hirschhorn: OK 266 00:12:36,150 --> 00:12:37,370 ฉันรู้สึกเหมือนทุกคนจะได้รับหนึ่งนี้ 267 00:12:37,370 --> 00:12:39,054 ดังนั้นทุกคนสิ่งที่จะกลับมา? 268 00:12:39,054 --> 00:12:39,720 ผู้ชม: เท็จ 269 00:12:39,720 --> 00:12:40,130 JASON Hirschhorn: เท็จ 270 00:12:40,130 --> 00:12:40,850 ที่ดี 271 00:12:40,850 --> 00:12:41,930 7 ไม่เท่ากับ 3 272 00:12:41,930 --> 00:12:44,530 ดังนั้น 7 == 3 จะกลับเท็จ 273 00:12:44,530 --> 00:12:50,746 คุณจะมีเครื่องหมายเท่ากับไม่ได้ดังนั้นถ้าฉัน ตรวจสอบ 7! = 3 สิ่งที่จะกลับมา? 274 00:12:50,746 --> 00:12:51,370 ผู้ชม: ทรู 275 00:12:51,370 --> 00:12:52,650 JASON Hirschhorn: ทรู 276 00:12:52,650 --> 00:12:53,200 ที่ดีเยี่ยม 277 00:12:53,200 --> 00:12:55,990 ใครบางคนเป็นสำคัญมากในการ ด้านหลังและชื่นชมว่า 278 00:12:55,990 --> 00:12:59,070 แล้วคุณมีน้อยกว่าผู้ประกอบการ น้อยกว่าหรือเท่ากับผู้ประกอบการ 279 00:12:59,070 --> 00:13:01,990 สูงกว่าผู้ประกอบการมากขึ้น กว่าหรือเท่ากับผู้ประกอบการ 280 00:13:01,990 --> 00:13:03,490 >> ดังนั้นหนึ่งการตรวจสอบสติมากขึ้น 281 00:13:03,490 --> 00:13:05,660 ถ้าผมมี 7 เป็นมากขึ้น กว่าหรือเท่ากับ 3 282 00:13:05,660 --> 00:13:06,966 อะไรที่จะกลับมา? 283 00:13:06,966 --> 00:13:07,692 >> ผู้ชม: ทรู 284 00:13:07,692 --> 00:13:08,650 JASON Hirschhorn: ทรู 285 00:13:08,650 --> 00:13:10,050 ใช่ 286 00:13:10,050 --> 00:13:13,290 ห้องด้านหลังที่ด้านหลัง ของห้องที่ยอดเยี่ยม 287 00:13:13,290 --> 00:13:16,240 คุณสามารถรวมเหล่านี้ การแสดงออกหากคุณต้องการเช่นกัน 288 00:13:16,240 --> 00:13:21,880 ด้วยตรรกะและซึ่งเป็น && หรือตรรกะหรือซึ่งเป็น || 289 00:13:21,880 --> 00:13:22,800 || 290 00:13:22,800 --> 00:13:25,785 ดังนั้นตอนนี้คุณสามารถทดสอบสอง สิ่ง together-- คือตลก? 291 00:13:25,785 --> 00:13:28,250 นี่คือเหตุผลที่ว่าตลก? 292 00:13:28,250 --> 00:13:35,200 >> ดังนั้นถ้าผมต้องการที่ผมสามารถพูดได้คือ 7 มากกว่า 3 และ 2 เป็นน้อยกว่า 4? 293 00:13:35,200 --> 00:13:37,090 ดีถ้า 7 เป็นมากขึ้น กว่า 3 ว่าเป็นความจริง 294 00:13:37,090 --> 00:13:38,400 2 น้อยกว่า 4 ที่จริง 295 00:13:38,400 --> 00:13:41,140 ดังนั้นเรื่องทั้งหมดนี้จะกลับมาเป็นความจริง 296 00:13:41,140 --> 00:13:45,130 >> ถ้าผมทดสอบ 7 เป็นมากกว่า 3 and-- ฉันแค่เลือกตัวเลขสุ่ม here-- 297 00:13:45,130 --> 00:13:47,340 4 น้อยกว่า 2 ดีที่เป็นเท็จ 298 00:13:47,340 --> 00:13:49,610 ดังนั้นความจริงและทำให้เท็จเท็จ 299 00:13:49,610 --> 00:13:54,520 และคุณสามารถไปบนและคุณรวมเป็น เงื่อนไขจำนวนมากร่วมกันตามที่คุณต้องการ 300 00:13:54,520 --> 00:14:00,000 >> ไม่มีใครมีคำถามใด ๆ ความเห็นเพื่อให้ห่างไกลกังวล? 301 00:14:00,000 --> 00:14:03,862 และผมเห็นบางส่วนของคุณถ่ายภาพ ของฉันในหน้าจอซึ่งฉันขอขอบคุณ 302 00:14:03,862 --> 00:14:05,070 หวังว่ามันจะไม่ Snapchat 303 00:14:05,070 --> 00:14:06,417 หวังว่าจะเป็นสำหรับการบันทึกของคุณ 304 00:14:06,417 --> 00:14:08,500 แต่สิ่งเหล่านี้จะไป จะสามารถใช้ได้ออนไลน์ 305 00:14:08,500 --> 00:14:11,210 ดังนั้นคุณจึงไม่ต้อง ถ่ายภาพนี้ 306 00:14:11,210 --> 00:14:15,150 เช่นเดียวกับที่ผมกล่าวถึงทุกอย่าง จะมีออนไลน์สำหรับคุณ 307 00:14:15,150 --> 00:14:15,650 ตกลง. 308 00:14:15,650 --> 00:14:17,980 ฉันจะได้รับ เวทีจึงไม่ใคร 309 00:14:17,980 --> 00:14:20,350 ต้องการที่จะพูดอะไร ก่อนที่เกิดขึ้น? 310 00:14:20,350 --> 00:14:21,080 คำถาม? 311 00:14:21,080 --> 00:14:21,680 >> [interposing VOICES] 312 00:14:21,680 --> 00:14:22,250 >> JASON Hirschhorn: โอ้หยุด 313 00:14:22,250 --> 00:14:23,290 พวกคุณดีเกินไป 314 00:14:23,290 --> 00:14:23,790 ตกลง. 315 00:14:23,790 --> 00:14:26,520 ฉันจะติดแท็กออก 316 00:14:26,520 --> 00:14:27,240 ไปกันเถอะ. 317 00:14:27,240 --> 00:14:29,570 >> ANDI เป็ง: เรากำลังจะทำ การเปลี่ยนแปลงที่น่าอึดอัดใจไมค์ตอนนี้ 318 00:14:29,570 --> 00:14:32,280 >> JASON Hirschhorn: ฉัน จะใช้เวลานี้ออก 319 00:14:32,280 --> 00:14:33,946 ANDI PENG: ขอบคุณการสนับสนุนพวก 320 00:14:33,946 --> 00:14:42,250 321 00:14:42,250 --> 00:14:43,180 คุณสามารถได้ยินฉัน? 322 00:14:43,180 --> 00:14:43,930 ว่าเป็นสิ่งที่ดี? 323 00:14:43,930 --> 00:14:44,760 ที่สมบูรณ์แบบ 324 00:14:44,760 --> 00:14:45,630 สวย. 325 00:14:45,630 --> 00:14:47,490 ผมขอเหน็บว่าใน 326 00:14:47,490 --> 00:14:49,100 ตกลง. 327 00:14:49,100 --> 00:14:54,140 ดังนั้นฉันจะทำเช่นเดียวกับยักษ์ ข้อมูลการถ่ายโอนข้อมูลในพวกคุณในขณะนี้ 328 00:14:54,140 --> 00:14:57,370 และความกังวลใด ๆ ถ้าคุณ ไม่ได้ติดตามทุกสายเล็ก ๆ น้อย ๆ ของสิ่งที่ 329 00:14:57,370 --> 00:14:58,812 ฉันจะแสดงให้คุณเห็น 330 00:14:58,812 --> 00:15:00,770 ขณะที่เจสันกล่าวว่าทุกอย่าง เป็นแบบออนไลน์อย่างสมบูรณ์ 331 00:15:00,770 --> 00:15:03,780 เพียงแค่เราจะพยายามที่จะแนะนำ ทุกคนที่จะแนวคิดที่ครอบคลุม 332 00:15:03,780 --> 00:15:05,270 ในบางส่วนของภาพนิ่งเหล่านี้ 333 00:15:05,270 --> 00:15:06,582 ดังนั้นเพียงแค่ทำตาม 334 00:15:06,582 --> 00:15:09,540 ไม่ต้องกังวลถ้าคุณไม่เข้าใจ ทุกอย่าง แต่ถ้าที่จุดใด 335 00:15:09,540 --> 00:15:12,820 คุณรู้สึกหายไปยกของคุณ มือเราจะหยุดไม่ต้องกังวล 336 00:15:12,820 --> 00:15:15,060 เย็น 337 00:15:15,060 --> 00:15:19,270 >> ดังนั้นผมจึงคิดว่าสิ่งที่มีเดวิด แล้วชนิดที่กล่าวถึงในการบรรยาย 338 00:15:19,270 --> 00:15:23,240 และเจสันได้พูดพาดพิงถึงชนิดของ วันนี้คือสิ่งที่เป็นห้องสมุด 339 00:15:23,240 --> 00:15:27,510 ดังนั้นในการเขียนโปรแกรมที่เรามี สิ่งเหล่านี้เรียกว่าห้องสมุด 340 00:15:27,510 --> 00:15:29,690 ในกรณีที่เป็นหลักทั้งหมด พวกเขาจะเป็นเพียงชุด 341 00:15:29,690 --> 00:15:32,610 ฟังก์ชั่นที่เป็น หลักเพียงรหัสที่ 342 00:15:32,610 --> 00:15:35,070 รับแล้วเขียนโดย คนอื่นที่เราสามารถทั้งหมด 343 00:15:35,070 --> 00:15:36,410 ใช้ที่อยู่ในโปรแกรมของเรา 344 00:15:36,410 --> 00:15:38,790 >> ดังนั้นวิธีการที่ไม่ปกติ ทำงานห้องสมุดใช่มั้ย? 345 00:15:38,790 --> 00:15:40,030 คุณเข้าประตูห้องสมุด 346 00:15:40,030 --> 00:15:41,890 คุณมีทั้งหมดเหล่านี้ หนังสือที่คุณสามารถดึงออก 347 00:15:41,890 --> 00:15:44,590 และคุณสามารถเข้าถึงข้อมูล ภายในหนังสือเหล่านั้น 348 00:15:44,590 --> 00:15:45,840 สิ่งที่เหมือนกันในการเขียนโปรแกรม 349 00:15:45,840 --> 00:15:48,820 >> คุณมีห้องสมุดที่มีอยู่แล้ว ถูกเขียนขึ้นโดยคนอื่น 350 00:15:48,820 --> 00:15:51,530 และวิธีการที่คุณสามารถที่ เป็นโปรแกรมเมอร์หรือนักเรียน 351 00:15:51,530 --> 00:15:55,780 สามารถเข้าถึงห้องสมุดที่ ผ่าน hashtag # include 352 00:15:55,780 --> 00:15:59,720 >> ยกตัวอย่างเช่นใน C เรา มีสาม C-- มากที่สุด 353 00:15:59,720 --> 00:16:03,420 ที่ใช้กันทั่วไปสามมาตรฐาน C libraries-- ห้องสมุดอินพุต / เอาต์พุต 354 00:16:03,420 --> 00:16:05,540 ห้องสมุดสตริง และห้องสมุดคณิตศาสตร์ 355 00:16:05,540 --> 00:16:07,610 >> ดังนั้นภายในครั้งแรกของคุณ ปัญหาสองสามชุด, 356 00:16:07,610 --> 00:16:10,940 ผู้ที่จะเป็นสาม ว่าคุณกำลังใช้เป็นหลัก 357 00:16:10,940 --> 00:16:14,610 ดังนั้นขณะที่เดวิดแล้ว อธิบายในการบรรยาย 358 00:16:14,610 --> 00:16:17,460 มาตรฐาน I / O ห้องสมุดหรือ เข้ามาตรฐานห้องสมุด / เอาท์พุท 359 00:16:17,460 --> 00:16:18,620 ไม่ตรงที่ 360 00:16:18,620 --> 00:16:23,530 จะช่วยให้คุณในรหัสของคุณที่จะใส่ อะไรจากผู้ใช้และการส่งออกที่ 361 00:16:23,530 --> 00:16:25,960 ไปที่หน้าจอหลัก พิมพ์หน้าจอ 362 00:16:25,960 --> 00:16:29,990 >> ดังนั้นเวลาที่คุณใช้ฟังก์ชั่นใด ๆ ตัวอย่างเช่นฟังก์ชั่น printf () ซึ่ง 363 00:16:29,990 --> 00:16:33,319 เรากำลังจะไปกว่าสไลด์ถัดไป ให้แน่ใจว่าจะรวมถึงมาตรฐาน I / O 364 00:16:33,319 --> 00:16:36,360 ห้องสมุดหรืออื่น ๆ คุณจะไม่ สามารถที่จะใช้ printf () ฟังก์ชัน 365 00:16:36,360 --> 00:16:39,110 เพราะคุณเป็นโปรแกรมเมอร์ ไม่เคยเขียนจริงฟังก์ชั่นที่ 366 00:16:39,110 --> 00:16:41,840 คุณเพียงแค่ใช้ใครสักคน รหัสอื่นภายในรหัสของคุณเอง 367 00:16:41,840 --> 00:16:43,620 >> ทุกคนไม่ทำให้รู้สึก? 368 00:16:43,620 --> 00:16:44,520 เย็น 369 00:16:44,520 --> 00:16:48,530 >> และจากนั้นเราจะได้รับเป็นหลักบน ห้องสมุดสตริงและ math.h 370 00:16:48,530 --> 00:16:52,970 ห้องสมุด .h เพียงหมายถึงห้องสมุด ห้องสมุดอื่น ๆ ที่คุณที่สุดจะ 371 00:16:52,970 --> 00:16:55,310 จะใช้ที่อยู่ในรหัสของคุณ 372 00:16:55,310 --> 00:16:57,620 >> อย่างไรก็ตามสำหรับวัตถุประสงค์ ของห้องสมุดนี้เรายัง 373 00:16:57,620 --> 00:17:01,170 have-- ของ class-- นี้เรายังมี สิ่งที่เรียกว่าห้องสมุด CS50, 374 00:17:01,170 --> 00:17:05,270 cs50.h ที่เราสำหรับ การตรวจของคุณได้สร้าง 375 00:17:05,270 --> 00:17:07,369 ฟังก์ชั่นที่สำคัญและมีประโยชน์มากมาย 376 00:17:07,369 --> 00:17:09,550 เพื่อให้คุณเป็นโปรแกรมเมอร์ สามารถขี่หลังออก 377 00:17:09,550 --> 00:17:14,470 สิ่งที่เราได้เขียนไว้แล้วเพื่อให้ ฟังก์ชั่นนี้มีให้คุณ 378 00:17:14,470 --> 00:17:15,599 สำหรับการใช้งานของคุณ 379 00:17:15,599 --> 00:17:18,359 >> ฉันจะครอบคลุมคู่ของ ฟังก์ชั่นที่ใช้กันทั่วไป, 380 00:17:18,359 --> 00:17:20,839 แต่รู้ว่าสิ่งเหล่านี้ ออนไลน์ทั้งหมด googleable 381 00:17:20,839 --> 00:17:24,904 รู้สึกอิสระที่ดึงห้องสมุด CS50 และ แล้วคุณมีฟังก์ชั่นทั้งหมดที่มี 382 00:17:24,904 --> 00:17:25,828 ใช่ 383 00:17:25,828 --> 00:17:28,140 >> ลำโพงที่ 5: ดังนั้นถ้าคุณไม่ได้ โดยใช้ซอฟต์แวร์ที่ 384 00:17:28,140 --> 00:17:29,916 ที่มีให้กับเราไว้ ชั้นไม่ว่า 385 00:17:29,916 --> 00:17:32,698 หมายความว่าเราจะต้องดาวน์โหลดและหา ไฟล์ส่วนหัวนี้ตัวเองและบอก 386 00:17:32,698 --> 00:17:33,840 คอมพิวเตอร์ที่มันคืออะไร? 387 00:17:33,840 --> 00:17:34,320 >> ANDI PENG: คำถามที่ดี 388 00:17:34,320 --> 00:17:34,820 ที่แน่นอน 389 00:17:34,820 --> 00:17:38,194 ดังนั้นจึงเป็นเช่นถ้าคุณไม่ได้ ร่างกายอยู่ในห้องสมุด 390 00:17:38,194 --> 00:17:40,360 มีวิธีสำหรับคุณที่จะไม่มี จริงไปและเข้าถึงได้ 391 00:17:40,360 --> 00:17:42,589 ดังนั้นสิ่งเดียวกันกับ การเขียนโปรแกรมใน C คุณ 392 00:17:42,589 --> 00:17:45,880 ต้องให้แน่ใจว่าคุณกำลังใช้ของเรา เครื่องใช้ไฟฟ้าเพราะห้องสมุดแล้ว 393 00:17:45,880 --> 00:17:47,270 รับการจดทะเบียนเป็นมัน 394 00:17:47,270 --> 00:17:50,020 และจากนั้นเมื่อคุณ hashtag #include ห้องสมุดของที่นั่น 395 00:17:50,020 --> 00:17:50,520 ใช่ 396 00:17:50,520 --> 00:17:51,920 คำถามที่ดี. 397 00:17:51,920 --> 00:17:53,461 ทุกคนดีหรือไม่? 398 00:17:53,461 --> 00:17:53,960 เย็น 399 00:17:53,960 --> 00:17:56,371 400 00:17:56,371 --> 00:17:56,870 ทั้งหมดขวา 401 00:17:56,870 --> 00:17:59,330 ดังนั้นเรากำลังจะตี หลักคืออะไร 402 00:17:59,330 --> 00:18:01,620 ฟังก์ชั่นแรกที่ เราในฐานะที่เป็นโปรแกรมเมอร์ 403 00:18:01,620 --> 00:18:03,900 จะต้องใช้ภายในรหัสของเรา 404 00:18:03,900 --> 00:18:05,690 นี้เรียกว่า printf () ฟังก์ชัน 405 00:18:05,690 --> 00:18:08,450 ดังนั้น printf () ฟังก์ชั่นที่ผมได้ แล้วกล่าวว่าในสไลด์ที่ผ่านมา 406 00:18:08,450 --> 00:18:11,830 จะรวมอยู่ในมาตรฐาน I / O, เข้ามาตรฐาน / เอาต์พุตห้องสมุด 407 00:18:11,830 --> 00:18:16,470 >> เพื่อให้แน่ใจว่าสิ่งที่คุณกำลัง using-- โอ้ให้ฉันคว้าเลเซอร์ pointer-- 408 00:18:16,470 --> 00:18:18,660 เมื่อใดก็ตามที่คุณกำลังใช้ printf () ฟังก์ชั่น 409 00:18:18,660 --> 00:18:21,790 คุณจะต้องรวมถึงมาตรฐาน I / O ห้องสมุดหรืออื่น ๆ เมื่อคุณรวบรวม 410 00:18:21,790 --> 00:18:23,760 คุณกำลังจะได้รับข้อผิดพลาด เพราะคอมพิวเตอร์จะเป็นเช่น 411 00:18:23,760 --> 00:18:26,140 โอ้ผมไม่ทราบว่าที่ printf () คือ คุณไม่ได้บอกฉันที่ printf () 412 00:18:26,140 --> 00:18:26,830 คือ. 413 00:18:26,830 --> 00:18:30,150 ดี printf () จะรวมอยู่ใน มาตรฐาน I / O ดังนั้นเมื่อคุณใช้ printf () 414 00:18:30,150 --> 00:18:32,960 ให้แน่ใจว่าจะมีที่ บรรทัดข้างต้นรหัสของคุณ 415 00:18:32,960 --> 00:18:36,040 >> ดังนั้นตัวอย่างเช่น printf () นี่คือฟังก์ชั่น 416 00:18:36,040 --> 00:18:40,260 ทั้งหมดก็จะเป็นสิ่งที่พิมพ์ ในวงเล็บให้กับผู้ใช้ 417 00:18:40,260 --> 00:18:44,840 ใครต้องการที่จะใช้แทง สิ่งที่บรรทัดนี้สิทธิรหัส 418 00:18:44,840 --> 00:18:46,420 ที่นี่จะพิมพ์ออกมา? 419 00:18:46,420 --> 00:18:48,730 ดังนั้นคำตอบที่อยู่บนหน้าจอ 420 00:18:48,730 --> 00:18:50,480 ใคร? 421 00:18:50,480 --> 00:18:51,380 >> VERDI: ด้านล่าง 422 00:18:51,380 --> 00:18:53,510 >> ANDI PENG: แวร์ดีทำไมคุณไม่ไป ข้างหน้าและบอกว่าคำสั่งทั้งหมด? 423 00:18:53,510 --> 00:18:55,718 >> VERDI: สวัสดีชื่อของฉันคือ Andi และฉันอายุ 20 ปี 424 00:18:55,718 --> 00:18:57,270 ANDI PENG: อ่าน่ารัก 425 00:18:57,270 --> 00:19:00,240 ดังนั้นในบรรทัดนี้เรากำลังจะไป พิมพ์ออกมาสวัสดีชื่อของฉันคือ Andi, 426 00:19:00,240 --> 00:19:04,280 และผมอายุ 20 ปีซึ่ง ในความเป็นจริงเป็นคำสั่งจริง 427 00:19:04,280 --> 00:19:05,090 >> ไวยากรณ์ 428 00:19:05,090 --> 00:19:08,830 ดังนั้นประเด็นที่คู่ของประโยคที่ว่า พวกคุณต้องการให้แน่ใจว่าคุณรู้ว่า 429 00:19:08,830 --> 00:19:09,360 คำคม 430 00:19:09,360 --> 00:19:13,170 คำพูดสองบอก คอมพิวเตอร์ที่ทุกอย่างภายใน 431 00:19:13,170 --> 00:19:14,850 เป็นไปได้ที่จะพิมพ์ 432 00:19:14,850 --> 00:19:16,620 >> ทุกอย่างภายในกระป๋อง เพียงแค่เป็นว่าวิธีการ 433 00:19:16,620 --> 00:19:19,920 คุณพิมพ์มันยกเว้น โดยทั่วไปในตอนท้าย 434 00:19:19,920 --> 00:19:23,610 เรากำลังจะต้องการรวม hash-- โอ้ sorry-- n เส้นประ 435 00:19:23,610 --> 00:19:24,640 ดังนั้น n ประ 436 00:19:24,640 --> 00:19:28,884 >> ไม่มีใครต้องการที่จะคาดเดา ในสิ่งที่ไม่รหัสของเราหรือไม่ 437 00:19:28,884 --> 00:19:29,465 ใช่ 438 00:19:29,465 --> 00:19:30,840 ลำโพง 6: ทำให้มันในบรรทัดใหม่ 439 00:19:30,840 --> 00:19:31,650 ANDI PENG: แน่นอน 440 00:19:31,650 --> 00:19:34,660 ดังนั้นสิ่งนี้จะเป็น ช่วยให้สิ่งที่เกิดขึ้น 441 00:19:34,660 --> 00:19:37,520 หลังจากนี้หลังจากที่คำสั่งนี้ ที่จะพิมพ์ไปที่บรรทัดใหม่ 442 00:19:37,520 --> 00:19:40,030 เพื่อที่ว่าเมื่อคุณเขียนของคุณ รหัสที่คุณไม่ได้มีสิ่งที่สุ่ม 443 00:19:40,030 --> 00:19:41,738 ติดอยู่ที่สิ้นสุด ที่คุณไม่ต้องการ 444 00:19:41,738 --> 00:19:43,700 ทุกอย่างที่ได้รับ พิมพ์อย่างประณีตหนึ่งบรรทัด 445 00:19:43,700 --> 00:19:46,870 และจากนั้นเราเริ่มต้นในบรรทัดต่อไปนี้ 446 00:19:46,870 --> 00:19:50,970 >> ไม่มีใครจำสิ่งที่ อัฒภาคไม่เมื่อเรากำลังเข้ารหัส? 447 00:19:50,970 --> 00:19:54,580 448 00:19:54,580 --> 00:19:55,330 ใช่ 449 00:19:55,330 --> 00:19:55,740 >> ลำโพง 7: คำชี้แจง 450 00:19:55,740 --> 00:19:56,010 >> ANDI PENG: ขออภัย? 451 00:19:56,010 --> 00:19:57,100 >> ลำโพง 7: มันจบคำสั่งหรือไม่ 452 00:19:57,100 --> 00:19:57,766 >> ANDI เป็ง: ใช่ 453 00:19:57,766 --> 00:20:02,670 ดังนั้นใน C หรือโปรแกรมใด ๆ ภาษาอัฒภาค 454 00:20:02,670 --> 00:20:04,640 หมายถึงจุดสิ้นสุดของบรรทัดเขียนโปรแกรม 455 00:20:04,640 --> 00:20:09,240 ดังนั้นตัวอย่างเช่นในภาษาอังกฤษที่เราใช้ระยะเวลา ที่จะบอกว่าโอ้นี่คือจุดจบประโยค 456 00:20:09,240 --> 00:20:12,857 ในการเขียนโปรแกรมในสิ่งเดียวกันเรามี อัฒภาคเพื่อแสดงถึงการสิ้นสุดของเส้น 457 00:20:12,857 --> 00:20:14,690 บ่อยครั้งเมื่อคุณอยู่ เริ่มต้นในการเขียนโปรแกรม 458 00:20:14,690 --> 00:20:17,150 คุณจะตระหนักถึงคุณ ลืมที่จะเพิ่มอัฒภาค 459 00:20:17,150 --> 00:20:19,400 และจากนั้นคุณพยายามที่จะทำงานของคุณ รหัสและมันไม่ทำงาน 460 00:20:19,400 --> 00:20:21,520 และคุณต้องการ, อาฉันทำไม่ได้ รู้ว่าทำไมมันควรจะทำงาน 461 00:20:21,520 --> 00:20:24,394 >> โอกาสที่คุณอาจจะลืม อัฒภาคหรือวงเล็บหรือบางสิ่งบางอย่าง 462 00:20:24,394 --> 00:20:25,020 ที่ไหนสักแห่ง. 463 00:20:25,020 --> 00:20:27,740 ดังนั้นที่สำคัญที่ต้องจำ 464 00:20:27,740 --> 00:20:29,627 เย็น 465 00:20:29,627 --> 00:20:31,960 สิทธิ์การแสดงของมือวิธี หลายคนที่นี่เคย 466 00:20:31,960 --> 00:20:37,210 นำ AP วิทยาศาสตร์คอมพิวเตอร์หรือ โปรแกรมใน Java ก่อนเคย? 467 00:20:37,210 --> 00:20:37,710 ตกลง. 468 00:20:37,710 --> 00:20:38,210 น่ารัก 469 00:20:38,210 --> 00:20:41,340 ที่จะไม่สามารถใช้งานได้ แล้ว แต่ใน Java คุณ 470 00:20:41,340 --> 00:20:44,960 มีสิ่งที่เรียกว่า System.out.println ซึ่งไม่ได้อยู่ใน C. 471 00:20:44,960 --> 00:20:49,927 >> ดังนั้นใน C เมื่อใดก็ตามที่คุณ ต้องการที่จะเพิ่มในตัวแปร 472 00:20:49,927 --> 00:20:51,760 ลงไปในสิ่งที่คุณต้องการ จะพิมพ์ออกมามี 473 00:20:51,760 --> 00:20:54,620 ไวยากรณ์ที่เฉพาะเจาะจงที่เรากำลังจะใช้ 474 00:20:54,620 --> 00:20:56,520 ที่เรียกว่า placeholding-- หลัก 475 00:20:56,520 --> 00:21:01,180 เราเพิ่มตัวยึดตำแหน่งในสถานที่ ของจำนวนเต็มหรือตัวแปร 476 00:21:01,180 --> 00:21:02,580 ที่เราต้องการพิมพ์ 477 00:21:02,580 --> 00:21:07,430 >> ดังนั้นในขณะที่พวกคุณจะได้เห็นเราได้รวม ไฟล์ส่วนหัวห้องสมุดใหม่ที่นี่ 478 00:21:07,430 --> 00:21:09,130 ห้องสมุด CS50 479 00:21:09,130 --> 00:21:13,160 และที่มีอยู่ภายในห้องสมุด CS50 ว่า เป็นฟังก์ชั่นที่พบโดยทั่วไปเราจะใช้ 480 00:21:13,160 --> 00:21:15,610 ในหลักสูตรของเราที่เรียกว่า GetInt () 481 00:21:15,610 --> 00:21:21,830 >> ไม่มีใครต้องการที่จะใช้แทงที่ สิ่งที่ GetInt () อาจจะทำ 482 00:21:21,830 --> 00:21:22,830 >> ผู้ชม: [ไม่ได้ยิน] 483 00:21:22,830 --> 00:21:23,550 >> ANDI PENG: ขออภัย 484 00:21:23,550 --> 00:21:24,370 ไม่สามารถได้ยินเสียงคุณ 485 00:21:24,370 --> 00:21:25,511 Maddie ทุกคน 486 00:21:25,511 --> 00:21:27,260 Maddie: โอ้มันจะแจ้งให้ สำหรับจำนวนเต็ม 487 00:21:27,260 --> 00:21:28,051 ANDI PENG: แน่นอน 488 00:21:28,051 --> 00:21:30,670 ดังนั้นฟังก์ชั่นนี้อีก ฟังก์ชั่นที่มีอยู่แล้ว 489 00:21:30,670 --> 00:21:33,690 ถูกเขียนขึ้นโดยคนอื่น ที่เราสามารถเรียกร้องในขณะนี้ 490 00:21:33,690 --> 00:21:38,000 ทั้งหมดก็คือเป็นแจ้งให้คุณผู้ใช้ ที่จะใส่สิ่งที่คุณต้องการเป็นรหัส 491 00:21:38,000 --> 00:21:41,850 ทำงานและจะเก็บ whatever-- ในกรณีนี้เรา GetInt () - ไอเอ็นจี 492 00:21:41,850 --> 00:21:44,060 ดังนั้นนั่นหมายความว่าเรากำลัง ได้รับจำนวนเต็ม 493 00:21:44,060 --> 00:21:46,150 >> และเรากำลังจะจัดเก็บ ว่าในจำนวนเต็มอีก 494 00:21:46,150 --> 00:21:48,900 ที่เราได้ทำที่เรียกว่าอายุเพียง 495 00:21:48,900 --> 00:21:51,500 ที่ทำให้รู้สึกกับทุกคน? 496 00:21:51,500 --> 00:21:52,190 เย็น 497 00:21:52,190 --> 00:21:56,400 >> ดังนั้นขณะนี้ที่เราได้เก็บไว้จำนวนเต็มนี้ ที่เราได้รับแจ้งจากผู้ใช้ 498 00:21:56,400 --> 00:22:00,010 ในตัวแปรนี้เราได้ สร้างชนิด int เรียกว่าอายุ 499 00:22:00,010 --> 00:22:03,720 เราสามารถไปข้างหน้าและสถานที่ ว่าใน printf เรา () ฟังก์ชั่น 500 00:22:03,720 --> 00:22:08,970 ดังนั้นมักจะไวยากรณ์สำหรับ printf () เป็น ว่าที่ใดก็ตามในทางกายภาพที่แท้จริงของคุณ 501 00:22:08,970 --> 00:22:14,410 บรรทัดที่คุณต้องการรวมจำนวนเต็มว่า คุณทำสัญลักษณ์ที่มีสิทธิ์ 502 00:22:14,410 --> 00:22:17,800 สัญลักษณ์เปอร์เซ็นต์ด้วย ชนิดของตัวแปรที่คุณต้องการ 503 00:22:17,800 --> 00:22:20,090 >> ดังนั้นในกรณีนี้อายุเป็นจำนวนเต็ม 504 00:22:20,090 --> 00:22:25,030 ดังนั้นคุณจะรวมถึง % ฉันเพราะมันเป็นจำนวนเต็ม 505 00:22:25,030 --> 00:22:26,860 และหลังจากนั้นของคุณ คำสั่งที่คุณกำลังจะ 506 00:22:26,860 --> 00:22:30,370 ที่จะทำเครื่องหมายจุลภาคและ ชื่อของตัวแปร 507 00:22:30,370 --> 00:22:33,420 >> ดังนั้นที่นี่เรากำลังจะพิมพ์ ออกสวัสดีชื่อของฉันคือ Andi, 508 00:22:33,420 --> 00:22:35,730 และผมว่างเปล่าปีเก่า 509 00:22:35,730 --> 00:22:38,890 Hashta-- หรือ sorry--, อายุกับสิ่งที่ฉันป้อนข้อมูล 510 00:22:38,890 --> 00:22:42,790 ดังนั้นถ้ามีการป้อนข้อมูล 20 สำหรับ GetInt () ของฉันที่นี่ 511 00:22:42,790 --> 00:22:44,500 มันจะพิมพ์ออกมาสิ่งเดียวที่แน่นอน 512 00:22:44,500 --> 00:22:47,990 แต่ถ้าผมต้องการที่จะป้อนข้อมูลบางสิ่งบางอย่าง อื่นเช่นอาจจะ 40 หรือ 45 513 00:22:47,990 --> 00:22:50,800 แล้วคุณจะเห็นว่าสะท้อนให้เห็นถึง ตามในรหัส 514 00:22:50,800 --> 00:22:52,886 >> ดังนั้นนี่คือตัวอย่าง บางสิ่งบางอย่างที่ 515 00:22:52,886 --> 00:22:55,260 จะพิมพ์ออกมาและมีลักษณะที่จะ คุณราวกับว่ามันเป็นสิ่งเดียวกัน 516 00:22:55,260 --> 00:22:57,593 แต่อยู่ภายใต้ฝากระโปรงของ คอมพิวเตอร์มีจริง 517 00:22:57,593 --> 00:22:59,560 สิ่งที่แตกต่างที่เกิดขึ้นมาก 518 00:22:59,560 --> 00:23:00,060 เย็น 519 00:23:00,060 --> 00:23:02,760 520 00:23:02,760 --> 00:23:03,260 ทั้งหมดขวา 521 00:23:03,260 --> 00:23:06,940 ดังนั้นสิ่งที่ถ้าเราต้องการตัวแปรหลาย 522 00:23:06,940 --> 00:23:08,290 สวยง่าย 523 00:23:08,290 --> 00:23:09,150 สิ่งเดียวกัน. 524 00:23:09,150 --> 00:23:11,930 เรายังมีฟังก์ชันใหม่ นี่เรียกว่า GetString () 525 00:23:11,930 --> 00:23:15,380 นอกจากนี้ยังรวมอยู่ในห้องสมุด CS50, ว่าทั้งหมดมันไม่แจ้งให้ผู้ใช้ 526 00:23:15,380 --> 00:23:18,120 สตริงซึ่งเป็น เพียงแค่ชุดของตัวอักษร 527 00:23:18,120 --> 00:23:19,810 เพื่อต้องการเป็นประโยคหรือชอบชื่อ 528 00:23:19,810 --> 00:23:25,470 >> ดังนั้นในกรณีนี้เราจะมีสอง ตัวยึด% s% สตริงและฉัน 529 00:23:25,470 --> 00:23:26,750 สำหรับจำนวนเต็ม 530 00:23:26,750 --> 00:23:29,190 และเรากำลังจะทำตาม ว่าโดยตัวแปรทั้งสอง 531 00:23:29,190 --> 00:23:32,670 เราต้องการรวมในการสั่งซื้อ ที่พวกเขาจะปรากฏในประโยค 532 00:23:32,670 --> 00:23:35,471 ดังนั้นตัวอย่างเช่นชื่อของฉันคือ ว่างเปล่าฉันต้องการชื่อที่นั่น 533 00:23:35,471 --> 00:23:36,970 ดังนั้นฉันจะมีชื่อแรก 534 00:23:36,970 --> 00:23:39,637 และแล้วหลังจากนั้นผมต้องการ อายุต้องการที่จะมีคนที่สองอายุ 535 00:23:39,637 --> 00:23:42,720 ดังนั้นถ้าผมต้องการที่จะใส่สวัสดี Andi ชื่อของฉันและฉันอายุ 20 ปี 536 00:23:42,720 --> 00:23:46,370 ถ้าฉันป้อน Andi และ 20 สิ่งเดียวที่แน่นอนจะพิมพ์; 537 00:23:46,370 --> 00:23:51,134 แต่ตอนนี้เราได้มีสองเก็บไว้ ตัวแปรที่มีชื่อเช่นเดียวกับ int 538 00:23:51,134 --> 00:23:51,634 ใช่ 539 00:23:51,634 --> 00:23:54,124 >> ลำโพง 8: มันจะเป็น สามารถทำงานได้ถ้าคุณเปลี่ยน 540 00:23:54,124 --> 00:23:55,620 ชื่อและอายุในตอนท้ายของที่? 541 00:23:55,620 --> 00:23:55,840 >> ANDI เป็ง: ใช่ 542 00:23:55,840 --> 00:23:57,006 นั่นเป็นคำถามที่ดีจริงๆ 543 00:23:57,006 --> 00:23:59,520 ดังนั้นเรื่องยาวสั้นไม่ 544 00:23:59,520 --> 00:24:03,070 เนื่องจากชื่อและ age-- สิ่งที่ ชนิดของตัวแปรคือชื่อ? 545 00:24:03,070 --> 00:24:03,950 >> ลำโพง 8: String 546 00:24:03,950 --> 00:24:05,440 >> ANDI PENG: และสิ่งที่ ชนิดของตัวแปรคืออายุ? 547 00:24:05,440 --> 00:24:06,231 >> ลำโพง 8: จำนวนเต็ม 548 00:24:06,231 --> 00:24:10,290 ANDI PENG: ดังนั้นที่นี่เรามีตัวยึด สตริงและจำนวนเต็มใช่มั้ย? 549 00:24:10,290 --> 00:24:13,350 ดังนั้นถ้าคุณมีการสลับเหล่านี้ คอมพิวเตอร์จะไม่ทราบว่า 550 00:24:13,350 --> 00:24:16,250 มันจะตรวจสอบสตริง และถ้าคุณพยายามที่จะให้มัน int, 551 00:24:16,250 --> 00:24:18,083 มันจะเป็นเหมือน รอฉันสับสนคุณ 552 00:24:18,083 --> 00:24:21,100 บอกฉันว่าฉันควรจะเป็น จัดสรรหน่วยความจำสำหรับเป็น int 553 00:24:21,100 --> 00:24:23,760 และที่นี่เมื่อ คาดว่าจำนวนเต็ม 554 00:24:23,760 --> 00:24:25,640 และคุณให้มันชื่อ และสตริงแทน, 555 00:24:25,640 --> 00:24:28,931 มันยังจะทำให้เกิดความสับสนมาก จะไม่ทำงานตรงทางคุณต้องการ 556 00:24:28,931 --> 00:24:35,280 ดังนั้นที่นี่ตั้งชื่อและไวยากรณ์ สิ่งที่สำคัญมากสำหรับการเรียกใช้รหัส 557 00:24:35,280 --> 00:24:37,991 ทุกคนดีหรือไม่? 558 00:24:37,991 --> 00:24:38,490 ใช่ 559 00:24:38,490 --> 00:24:39,476 Maddie 560 00:24:39,476 --> 00:24:44,620 >> Maddie: ที่นี่ฉันรู้ว่าเราได้มอง ตัวอย่างในระดับที่พวกเขาถาม 561 00:24:44,620 --> 00:24:46,950 สิ่งที่เป็นอายุของคุณสิ่งที่เป็นชื่อของคุณ 562 00:24:46,950 --> 00:24:50,250 ที่นี่ที่จะไม่ว่าจะเป็น doesn't-- ถ้าเราจะเรียกใช้รหัสนี้ 563 00:24:50,250 --> 00:24:51,750 มันจะไม่ขอที่? 564 00:24:51,750 --> 00:24:54,740 แต่คุณจะใส่เพียงตัวเลขสอง และจากนั้นก็จะทำงานเช่นนั้น? 565 00:24:54,740 --> 00:24:55,781 >> ANDI เป็ง: ใช่ว่า 566 00:24:55,781 --> 00:24:58,250 ดังนั้นถ้าคุณอยากให้มัน การแสดงผลกรุณาใส่อายุของคุณ 567 00:24:58,250 --> 00:25:01,100 คุณก็สามารถเพิ่ม printf () ฟังก์ชัน ที่กล่าวว่ากรุณากรอกอายุของคุณ 568 00:25:01,100 --> 00:25:01,600 ข้างต้นนั้น 569 00:25:01,600 --> 00:25:02,711 นั่นเป็นคำถามที่ดี 570 00:25:02,711 --> 00:25:03,210 ใช่ 571 00:25:03,210 --> 00:25:07,964 >> ลำโพง 9: ดังนั้นแล้วจะเป็น รวมอยู่ใน GetInt () [ไม่ได้ยิน] 572 00:25:07,964 --> 00:25:09,380 ANDI PENG: ไม่มีก็จริงไม่ได้ 573 00:25:09,380 --> 00:25:11,809 ดังนั้นสิ่งนี้จะเป็นเพียงแค่ แจ้งให้หน้าจอที่ว่างเปล่า 574 00:25:11,809 --> 00:25:13,100 ให้กับผู้ใช้บางสิ่งบางอย่างที่จะป้อนข้อมูล 575 00:25:13,100 --> 00:25:17,420 ถ้าคุณต้องการมันถ้าคุณต้องการที่จะพิมพ์ บางสิ่งบางอย่างที่จะบอกผู้ใช้เช่น 576 00:25:17,420 --> 00:25:21,110 โปรดให้ฉันอายุของคุณแล้วคุณ จะต้อง printf () ที่ตัวเอง 577 00:25:21,110 --> 00:25:23,789 เพราะทุกคนใช้นี้ ฟังก์ชั่นสำหรับสิ่งที่แตกต่างกัน 578 00:25:23,789 --> 00:25:26,080 คุณอาจจะจัดเก็บอายุ คุณอาจจะจัดเก็บอยู่ 579 00:25:26,080 --> 00:25:28,060 คุณอาจจะจัดเก็บหมายเลขโทรศัพท์ 580 00:25:28,060 --> 00:25:31,190 และเพื่อให้มันเป็นจริงขึ้นอยู่กับ พวกของใช้ของแต่ละบุคคล 581 00:25:31,190 --> 00:25:34,390 สิ่งที่คุณต้องการจะพูด 582 00:25:34,390 --> 00:25:34,890 ใช่ 583 00:25:34,890 --> 00:25:38,236 >> ลำโพง 10: ดังนั้นเพียงเพื่อชี้แจงที่ ทำคุณใส่ชื่อและอายุ 584 00:25:38,236 --> 00:25:43,020 เพื่อที่จะแสดงขึ้นในสถานที่ของ% s? 585 00:25:43,020 --> 00:25:44,320 >> ANDI PENG: ในขณะที่ผู้ใช้หรือไม่ 586 00:25:44,320 --> 00:25:47,165 >> ลำโพง 10: ใช่เช่นวิธีการทำผม ทำให้ it-- ที่ฉันจะใส่ Andi, 587 00:25:47,165 --> 00:25:48,350 และสถานที่ที่ฉันจะวาง 20? 588 00:25:48,350 --> 00:25:48,640 >> ANDI เป็ง: ใช่ 589 00:25:48,640 --> 00:25:50,250 ดังนั้นถ้าคุณจะ จริงเรียกใช้รหัสนี้ 590 00:25:50,250 --> 00:25:52,875 ฉันไม่ได้จริงการทำงาน รหัสนี้เป็นเพียงที่นี่ตอนนี้ 591 00:25:52,875 --> 00:25:56,910 ถ้าฉันจะเรียกใช้รหัสผมจะ รวบรวมรหัสให้แฟ้ม 592 00:25:56,910 --> 00:26:00,760 เรียกใช้รหัสและจากนั้นจะมี เพียงแค่เป็นสองช่องว่างสำหรับผมที่จะใส่มัน 593 00:26:00,760 --> 00:26:01,260 ใช่ 594 00:26:01,260 --> 00:26:03,843 พวกคุณจะเห็นเมื่อคุณเล่น รอบกับรหัสตัวเอง 595 00:26:03,843 --> 00:26:05,760 596 00:26:05,760 --> 00:26:09,645 >> สิทธิทั้งหมดที่เรากำลังจะย้าย เข้าไปในส่วนถัดไปของสิ่งที่ 597 00:26:09,645 --> 00:26:11,610 เราจะครอบคลุมในวันนี้ 598 00:26:11,610 --> 00:26:13,980 เรากำลังจะไปมากกว่าสิ่งที่ งบเงื่อนไขเป็น 599 00:26:13,980 --> 00:26:16,500 ดังนั้นถ้าพวกคุณจำได้ และเรียกคืนจากการบรรยาย 600 00:26:16,500 --> 00:26:19,210 งบเงื่อนไข ทั้งหมดที่พวกเขาจะเป็นชุด 601 00:26:19,210 --> 00:26:24,010 คำสั่งไปยังเครื่องคอมพิวเตอร์ใน ซึ่งถ้าเงื่อนไขบางอย่างเป็นความจริง 602 00:26:24,010 --> 00:26:27,470 คุณรันรหัส ภายในเงื่อนไขที่ว่า 603 00:26:27,470 --> 00:26:30,101 >> ดังนั้นใน Scratch-- หลัก รูปแบบขนาดใหญ่ตั้งแต่วันนี้ 604 00:26:30,101 --> 00:26:32,850 คือการที่พวกคุณมีอยู่แล้วทั้งหมด เห็นตรรกะที่อยู่เบื้องหลังทุกอย่าง 605 00:26:32,850 --> 00:26:34,020 ที่เรากำลังครอบคลุม 606 00:26:34,020 --> 00:26:36,190 และทุกสิ่งที่เรากำลังทำคือการ แปลบางสิ่งบางอย่าง 607 00:26:36,190 --> 00:26:39,090 นั่นคือใช้งานง่ายมาก รอยขีดข่วนและการเข้ารหัสมันยาก 608 00:26:39,090 --> 00:26:41,950 เข้าไวยากรณ์ที่เราจะใช้ สำหรับการเรียนซึ่งเป็นซี 609 00:26:41,950 --> 00:26:47,550 ดังนั้นเหตุผลทั้งหมดบล็อกนี้คือ เป็นชิ้นส่วนของรหัสที่นั่นว่า 610 00:26:47,550 --> 00:26:49,995 ใช่ 611 00:26:49,995 --> 00:26:50,900 ตกลง. 612 00:26:50,900 --> 00:26:55,290 >> นอกจากนี้เรายังได้รับในถ้า ... อื่น คำสั่งซึ่งเป็นเพียงชั้นเพิ่ม 613 00:26:55,290 --> 00:26:59,120 ของความซับซ้อนที่จะถ้าคำสั่ง ที่ใช้คอมพิวเตอร์ใช้เวลาดูที่นี้ 614 00:26:59,120 --> 00:27:04,260 และเห็นถ้าสภาพเช่นนี้เป็นความจริงทำ สิ่งที่อยู่ภายในของทั้งสองวงเล็บ 615 00:27:04,260 --> 00:27:08,470 else-- ดังนั้นชนิดเช่นถ้าเริ่มต้น มันไม่ตรงกับสภาพที่ทำเช่นนี้ 616 00:27:08,470 --> 00:27:10,120 มันก็เหมือนกับการแยกในถนน 617 00:27:10,120 --> 00:27:14,400 หากมีฝนตกนอกผมใส่ เสื้อฝนสิ่งอื่นใด 618 00:27:14,400 --> 00:27:16,330 อื่นที่ฉันไม่ได้ใส่เสื้อฝน 619 00:27:16,330 --> 00:27:18,400 >> ไม่ว่าตรรกะทำให้ความรู้สึกที่ทุกคน? 620 00:27:18,400 --> 00:27:21,031 เย็น 621 00:27:21,031 --> 00:27:21,530 ทั้งหมดขวา 622 00:27:21,530 --> 00:27:24,970 ดังนั้นเหมือนตัวอย่างหนักของ ที่เราจะได้เห็นใน C 623 00:27:24,970 --> 00:27:28,890 คือถ้าผมต้องการที่จะสร้าง ตัวแปรที่เรียกว่าชั่วโมงการบ้าน 624 00:27:28,890 --> 00:27:32,050 และถ้าเวลาทำการบ้านน้อย กว่าห้าผมว่าชีวิตเป็นสิ่งที่ดี 625 00:27:32,050 --> 00:27:33,070 มันยอดเยี่ยม 626 00:27:33,070 --> 00:27:36,450 แต่บอกว่าการต่อสู้เป็น real-- ซึ่งเป็นสิ่งที่เราทุกคนในวันจันทร์นี้ 627 00:27:36,450 --> 00:27:39,337 ช่วงบ่ายขึ้นฮิลล์เป็นวิทยาศาสตร์ อาจจะทำตอน now-- 628 00:27:39,337 --> 00:27:40,170 ผู้ชม: [หัวเราะ] 629 00:27:40,170 --> 00:27:42,510 ANDI PENG: พวกเขาวิธีที่เรา จะขอขอบคุณสำหรับการที่ 630 00:27:42,510 --> 00:27:46,180 วิธีที่เราจะ hardcode ใน C คือ if-- สมมติ 631 00:27:46,180 --> 00:27:49,920 เรามีตัวแปรประเภท int ชั​​่วโมงเรียกว่าบ้านที่นี่ 632 00:27:49,920 --> 00:27:53,870 ถ้าเวลาทำการบ้านน้อยกว่า ห้า printf () ชีวิตเป็นสิ่งที่ดี 633 00:27:53,870 --> 00:27:57,330 โปรดจำไว้ว่าให้ / n เพราะ คุณต้องการขึ้นบรรทัดใหม่หลังจากที่ 634 00:27:57,330 --> 00:27:59,660 พิมพ์อื่นการต่อสู้ที่เป็นจริง 635 00:27:59,660 --> 00:28:03,720 >> ไม่ทุกคนเข้าใจว่า ผมเปลี่ยนจากบล็อกนี้ 636 00:28:03,720 --> 00:28:07,610 ลงในบล็อกของรหัสนี้? 637 00:28:07,610 --> 00:28:08,110 เย็น 638 00:28:08,110 --> 00:28:11,030 639 00:28:11,030 --> 00:28:11,840 ทั้งหมดขวา 640 00:28:11,840 --> 00:28:15,930 >> ดังนั้นตอนนี้เรากำลังจะไปดูที่ ถ้างบหลายสิ้นเชิง 641 00:28:15,930 --> 00:28:18,140 ถ้าอย่างนั้นเราถือว่า วัตถุประสงค์ของโครงการนี​​้ 642 00:28:18,140 --> 00:28:20,870 เราได้รับการแจ้งให้ผู้ใช้สำหรับเกรด 643 00:28:20,870 --> 00:28:24,450 แจ้งให้เราใช้ GetInt () สำหรับ ชั้นประถมศึกษาปีและพวกเขาสำหรับการป้อนค่า 644 00:28:24,450 --> 00:28:27,700 และคุณต้องการที่จะแสดง สิ่งที่ประเภทของชั้นประถมศึกษาปีที่พวกเขาได้ 645 00:28:27,700 --> 00:28:30,730 >> ดังนั้นถ้าผมจะออกแบบโปรแกรมผม มักจะหมายถึงในทุกสายตาของเรา 646 00:28:30,730 --> 00:28:35,490 90-100 เป็น A, 80-90 เป็น B, และอื่น ๆ และอื่น ๆ 647 00:28:35,490 --> 00:28:39,040 อะไรคือสิ่งที่ผิดปกติกับนี้ ชิ้นส่วนของรหัสว่ามันเป็นไม่ได้ 648 00:28:39,040 --> 00:28:41,393 ทำในสิ่งที่ฉันต้องการจะทำ 649 00:28:41,393 --> 00:28:41,892 ใช่ 650 00:28:41,892 --> 00:28:45,100 >> ลำโพง 11: พวกเขามีข้อ จำกัด ที่ต่ำกว่า แต่พวกเขาไม่ได้มีขีด จำกัด บน 651 00:28:45,100 --> 00:28:46,280 >> ANDI PENG: แน่นอน 652 00:28:46,280 --> 00:28:47,950 ไม่ทุกคนได้ยินสิ่งที่เธอกล่าวว่า? 653 00:28:47,950 --> 00:28:50,200 มีเป็นไปได้บน ข้อ จำกัด แต่ไม่ จำกัด ที่ต่ำกว่า 654 00:28:50,200 --> 00:28:52,540 ขออภัยวิธีอื่น ๆ ข้อ จำกัด ที่ต่ำกว่าไม่มีขีด จำกัด บน 655 00:28:52,540 --> 00:28:55,090 ดังนั้นคุณจึงต้องการที่จะ ใช้แทงที่บอกว่า 656 00:28:55,090 --> 00:28:58,945 สิ่งที่จะได้รับการพิมพ์เกี่ยวกับเรื่องนี้ หน้าจอถ้ามีการเรียกใช้รหัสนี้ 657 00:28:58,945 --> 00:28:59,820 ลำโพง 11: ข้อผิดพลาด? 658 00:28:59,820 --> 00:29:01,140 ANDI PENG: ข้อผิดพลาด? 659 00:29:01,140 --> 00:29:02,740 ที่ดีเดาไม่ถูกต้อง 660 00:29:02,740 --> 00:29:05,465 ไม่มีใครมีแทงอื่นได้หรือไม่ 661 00:29:05,465 --> 00:29:06,640 ใช่แอรอน 662 00:29:06,640 --> 00:29:10,099 >> AARON: ถ้าคุณใส่ใน บางสิ่งบางอย่างที่ยิ่งใหญ่กว่า 90 663 00:29:10,099 --> 00:29:11,640 มันจะแสดงเกรดทั้งหมดที่คุณมี 664 00:29:11,640 --> 00:29:13,640 มันจะแสดงให้คุณได้ต่อ A, คุณมี B คุณมีซี 665 00:29:13,640 --> 00:29:13,870 >> ANDI เป็ง: ใช่ 666 00:29:13,870 --> 00:29:14,840 ที่เหมาะสมว่า 667 00:29:14,840 --> 00:29:17,820 เพื่อที่ต้องการจะยอดเยี่ยม 668 00:29:17,820 --> 00:29:21,781 แต่พวกเขาจะร่วมกัน แต่เพียงผู้เดียวที่ผมคิดว่า 669 00:29:21,781 --> 00:29:23,280 ถ้าฉันจะทำงานชิ้นส่วนของรหัสนี้ 670 00:29:23,280 --> 00:29:26,200 และจากนั้นก็ให้เพียงกล่าวว่าผม ป้อนชั้นประถมศึกษาปี 95 671 00:29:26,200 --> 00:29:30,360 ดังนั้น 95 จะถูกเก็บไว้ในขณะนี้ ชั้นประถมศึกษาปีที่เรียกว่า int 672 00:29:30,360 --> 00:29:33,610 >> และเพื่อให้ซีเป็นภาษา ที่วิ่งขึ้นบนลงล่าง 673 00:29:33,610 --> 00:29:36,000 ดังนั้นจึงเป็นไปได้เสมอ วิ่งขึ้นไปที่ด้านล่าง 674 00:29:36,000 --> 00:29:39,420 ดังนั้นมันจะมาที่นี่ถ้าอ่าน ชั้นประถมศึกษาปีที่มีค่ามากกว่าหรือเท่ากับ 90 675 00:29:39,420 --> 00:29:42,850 printf () คุณได้กที่ยอดเยี่ยมผม มี 95 ที่มากกว่า 90 676 00:29:42,850 --> 00:29:44,866 มันจะพิมพ์ ผมได้ A. มันจะ 677 00:29:44,866 --> 00:29:48,850 ที่จะดูที่นี้ถ้ามันจะ พูดดี 95 นอกจากนี้ยังมีค่ามากกว่า 80 678 00:29:48,850 --> 00:29:52,970 มันจะพิมพ์คุณยังได้มี เครื่องหมายอัศเจรีย์ B, และอื่น ๆ และอื่น ๆ 679 00:29:52,970 --> 00:29:53,690 ออกมา 680 00:29:53,690 --> 00:29:55,890 >> ดังนั้นในขณะที่เราทุกคนสามารถมองเห็น ปัญหานี้เป็นปัญหาที่พบบ่อย 681 00:29:55,890 --> 00:30:00,760 ที่อาจเกิดขึ้นเมื่อเราอยู่ เขียนรหัสที่มองออก 682 00:30:00,760 --> 00:30:05,430 ทุกคนคำถามใด ๆ เกี่ยวกับ เหตุผลที่เกิดขึ้น? 683 00:30:05,430 --> 00:30:05,930 ที่ดี 684 00:30:05,930 --> 00:30:08,920 685 00:30:08,920 --> 00:30:09,440 ตกลง. 686 00:30:09,440 --> 00:30:12,110 >> เราดังนั้นวิธีแก้ไขปัญหานี้จะเห็นได้ชัด ตรรกะคำถามต่อไป 687 00:30:12,110 --> 00:30:16,290 ดีที่เรามีที่สวยงามเหล่านี้ สิ่งที่เรียกว่าถ้าอื่นถ้าอื่น 688 00:30:16,290 --> 00:30:18,010 ถ้างบอื่น 689 00:30:18,010 --> 00:30:22,230 ดังนั้นคุณจะเห็นถ้าคุณต้องการ ที่จะเปลี่ยนปัญหาที่ 690 00:30:22,230 --> 00:30:25,260 คุณต้องการที่จะทำให้แต่ละ เงื่อนไขพิเศษร่วมกัน 691 00:30:25,260 --> 00:30:26,860 ที่คุณจะเพิ่มอื่น ... ถ้าคำสั่ง 692 00:30:26,860 --> 00:30:30,068 >> และเหล่านี้ของ course-- คิดว่าพวกเขาเป็น บันไดหรือชอบในขั้น ladder-- 693 00:30:30,068 --> 00:30:34,050 คุณสามารถเพิ่มเป็นจำนวนมากของเหล่านี้เป็นคุณ ต้องการสำหรับเงื่อนไขมากเท่าที่คุณต้องการ 694 00:30:34,050 --> 00:30:36,790 ดังนั้นที่นี่ถ้าฉันป้อนชั้นประถมศึกษาปีที่จะเป็น 95 695 00:30:36,790 --> 00:30:39,479 ถ้าชั้นประถมศึกษาปีที่มีค่ามากกว่า 95 printf () ผมได้รับเอที่ดี 696 00:30:39,479 --> 00:30:42,020 มันจะเห็นอื่น ... ถ้า และก็จะรู้ว่าโอ้ไม่ 697 00:30:42,020 --> 00:30:43,750 ฉันได้ดำเนินการครั้งแรกที่อื่น 698 00:30:43,750 --> 00:30:47,020 ฉัน know-- หรือ if-- แรกที่ผมรู้ว่า ฉันไม่ต้องมองไปที่ใด ๆ เหล่านี้ 699 00:30:47,020 --> 00:30:48,920 เพราะหนึ่งในพวกเขา ได้รับอยู่แล้วจริง 700 00:30:48,920 --> 00:30:50,410 ดังนั้นมันจะวิ่งจากบนลงล่าง 701 00:30:50,410 --> 00:30:53,650 ทันทีที่คนแรกเป็นจริงแล้ว มันจะข้ามส่วนที่เหลือทั้งหมด 702 00:30:53,650 --> 00:30:54,675 ของไอเอฟเออื่น ... 703 00:30:54,675 --> 00:30:55,550 ที่ทำให้รู้สึก? 704 00:30:55,550 --> 00:30:57,841 ดังนั้นในวิธีนี้คุณมี ระดับที่แตกต่างกันของการตรวจสอบ 705 00:30:57,841 --> 00:31:01,090 และทันทีที่หนึ่งในนั้นเป็นเท็จ ส่วนที่เหลือนอกจากนี้ยังมีพวกเขาจะไม่ได้ตรวจสอบ 706 00:31:01,090 --> 00:31:03,577 707 00:31:03,577 --> 00:31:04,076 เย็น 708 00:31:04,076 --> 00:31:07,680 709 00:31:07,680 --> 00:31:08,180 ทั้งหมดขวา 710 00:31:08,180 --> 00:31:11,180 >> ดังนั้นนี่คือตัวอย่างของการที่แตกต่างกัน การเรียงลำดับของคำสั่งเงื่อนไข 711 00:31:11,180 --> 00:31:15,250 ที่เราเห็นมักจะน้อย แต่ เราจะได้เห็นพวกเขาและใช้พวกเขา 712 00:31:15,250 --> 00:31:18,120 และพวกเขากำลังบ่อยขึ้น ที่มีประสิทธิภาพสำหรับบางกรณี 713 00:31:18,120 --> 00:31:20,020 ดังนั้นเราจึงมีสิ่งที่เรียกว่า คำสั่งสวิทช์ 714 00:31:20,020 --> 00:31:25,140 ดังนั้นก่อนที่เราจะได้รับการคุ้มครองสิ่งที่อื่น คำสั่ง ... ถ้าคำสั่งอื่น 715 00:31:25,140 --> 00:31:27,790 ที่นี่เรามีสิ่งที่เป็น ที่เรียกว่างบสวิทช์ 716 00:31:27,790 --> 00:31:31,100 >> ดังนั้นเมื่อเราใช้สวิทช์ งบเป็นกุญแจสำคัญ? 717 00:31:31,100 --> 00:31:34,090 ดังนั้นในงบเปลี่ยนคุณ ปกติมักจะจริงคุณ 718 00:31:34,090 --> 00:31:38,010 เท่านั้นที่สามารถป้อนข้อมูลจำนวนเต็มสำหรับคุณ ตัวแปรที่คุณกำลังตรวจสอบ 719 00:31:38,010 --> 00:31:42,390 ดังนั้นถ้าผมต้องการที่จะตรวจสอบเพื่อดู ถ้า number-- บางอย่างเช่น 720 00:31:42,390 --> 00:31:43,720 ชั้นประถมศึกษาปีถ้าผมได้ 90 721 00:31:43,720 --> 00:31:48,190 ฉันต้องการให้ดูว่าเป็น A, บีหรือซีฉันจะมีกรณีที่นี่ 722 00:31:48,190 --> 00:31:50,840 อย่างไรก็ตามกรณีที่มี จะเป็นอีกอย่างต่อเนื่อง 723 00:31:50,840 --> 00:31:53,170 >> ดังนั้นในแง่นี้ งบเปลี่ยนเท่านั้นที่สามารถ 724 00:31:53,170 --> 00:31:55,290 การตรวจสอบเพื่อความเท่าเทียมกันของตัวเลขสอง 725 00:31:55,290 --> 00:31:57,242 มันไม่ได้ตรวจสอบสำหรับสิ่งอื่น 726 00:31:57,242 --> 00:31:59,950 นั่นคือสิ่งที่จะมาก ระวังเมื่อคุณใช้นี้ 727 00:31:59,950 --> 00:32:04,810 ดังนั้นที่นี่ถ้าผมต้องการที่จะตรวจสอบเพื่อดู ถ้าเกรดของฉัน 90 เท่ากับ 90 หรือ 80 728 00:32:04,810 --> 00:32:08,500 หรือ 70 หรือ 60 และจากนั้นพิมพ์ ชั้นประถมศึกษาปีที่สอดคล้องกัน 729 00:32:08,500 --> 00:32:11,420 ฉันจะสามารถที่จะเขียนว่า ในงบสวิทช์ 730 00:32:11,420 --> 00:32:15,120 >> ดังนั้นมันจะมาที่นี่คือการตรวจสอบ จำนวนเต็มนี้เท่ากับค่าคงที่นี้หรือไม่? 731 00:32:15,120 --> 00:32:17,030 ถ้าไม่ได้ก็จะข้าม 732 00:32:17,030 --> 00:32:19,880 มันจะมีค่าเท่ากับค่าคงที่ สองและอื่น ๆ และอื่น ๆ 733 00:32:19,880 --> 00:32:22,390 จนกว่าคุณจะตีค่าเริ่มต้น ถ้าไม่มีพวกเขามีค่าเท่ากัน 734 00:32:22,390 --> 00:32:24,590 เร็วที่สุดเท่าที่หนึ่งของพวกเขา จะกำหนดเท่ากัน 735 00:32:24,590 --> 00:32:27,040 มันจะทำเช่นนี้ บรรทัดของรหัสและทำลาย 736 00:32:27,040 --> 00:32:30,990 ซึ่งหมายความว่ามันจะตีว่า ทำงานทำลายและสมบูรณ์เพียงข้าม 737 00:32:30,990 --> 00:32:32,240 ที่ด้านล่างของรหัส 738 00:32:32,240 --> 00:32:37,550 ดังนั้นในแง่ที่ว่าชนิดของฟังก์ชั่น เช่นถ้าอื่นถ้าอื่นถ้าคำสั่ง 739 00:32:37,550 --> 00:32:40,830 >> ดังนั้นนี่คือคอนกรีต ตัวอย่างเช่นสำหรับคุณผู้ชาย 740 00:32:40,830 --> 00:32:46,140 ดังนั้นสมมติว่าผมต้องการที่จะ สร้างตัวแปรที่เรียกว่าปีที่ก่อตั้ง 741 00:32:46,140 --> 00:32:50,230 และผมต้องการที่จะแจ้งให้ผู้ใช้ที่จะใส่ ปีที่โรงเรียนของพวกเขาก่อตั้งขึ้น 742 00:32:50,230 --> 00:32:53,300 ดังนั้นผมจึงสามารถสร้างคำสั่งสวิทช์ที่นี่ 743 00:32:53,300 --> 00:32:56,650 และให้เพียงกล่าวว่าฉันป้อนข้อมูล 1636 744 00:32:56,650 --> 00:33:01,120 >> รหัสนี้ที่นี่จะได้เห็นสวิทช์ ก่อตั้งขึ้นในปี 1636 ซึ่งเท่ากับ 745 00:33:01,120 --> 00:33:03,940 มันจะเห็นกรณี 1636 โอ้เหล่านั้นมีค่าเท่ากัน 746 00:33:03,940 --> 00:33:06,230 printf () ที่คุณไม่ควรจะเป็น ที่โรงเรียนขึ้นไปทางเหนือที่? 747 00:33:06,230 --> 00:33:08,770 เพราะเราถือว่าพวกเขาทำไม่ได้ ไปที่นี่ถ้าพวกเขาไปที่ฮาร์วาร์ 748 00:33:08,770 --> 00:33:10,380 ทำลายและข้ามไปที่สิ้นสุด 749 00:33:10,380 --> 00:33:14,090 >> ถ้าฉันจะป้อนข้อมูล 1701 ซึ่ง ผมถือว่าเราทุกคนที่จะป้อนข้อมูล 750 00:33:14,090 --> 00:33:17,500 มันจะข้ามกรณีนี้มา ลงไปที่กรณีที่สองซึ่งเป็น 1701 751 00:33:17,500 --> 00:33:19,660 และพิมพ์ยินดีต้อนรับสู่เยล! 752 00:33:19,660 --> 00:33:21,360 ทำลายข้ามไปที่สิ้นสุด 753 00:33:21,360 --> 00:33:25,130 อื่น ๆ ที่คุณอาจจะมีการใช้หลักสูตรนี้ ออนไลน์ที่ case-- ต้อนรับที่น่ากลัว 754 00:33:25,130 --> 00:33:29,020 เพื่อ Yale-- ก็จะไปที่ พิมพ์ค่าเริ่มต้นสวัสดีอินเทอร์เน็ต! 755 00:33:29,020 --> 00:33:29,870 และทำลาย 756 00:33:29,870 --> 00:33:30,466 ใช่ 757 00:33:30,466 --> 00:33:32,090 >> ลำโพง 12: คุณสามารถใช้อื่น แทนการเริ่มต้นมี? 758 00:33:32,090 --> 00:33:34,550 >> ANDI PENG: ไม่มีเพราะ วิธีการที่ทั้งฟังก์ชั่นนี้ 759 00:33:34,550 --> 00:33:39,170 สวิทช์ที่ถูกสร้างขึ้นไวยากรณ์คุณ จำเป็นต้องใช้เป็นกรณีกรณีที่เริ่มต้น 760 00:33:39,170 --> 00:33:42,400 มันเหมือนถ้าอื่นถ้านี้ หนึ่งมันเป็นกรณีกรณีที่เริ่มต้น ใช่ 761 00:33:42,400 --> 00:33:45,650 ลำโพง 13: คุณอาจจะพูดไปแล้วนี้ แต่คุณสามารถมีมากกว่าสองกรณี? 762 00:33:45,650 --> 00:33:48,066 ANDI เป็ง: ใช่คุณสามารถทำได้ มีหลายกรณีตามที่คุณต้องการ 763 00:33:48,066 --> 00:33:50,050 คิดว่ามันเป็นเพียงแค่ต้องการ ในการเพิ่มเพียบ 764 00:33:50,050 --> 00:33:52,396 >> ลำโพง 14: ถ้าคุณ เปลี่ยน 1701 กับ 1636, 765 00:33:52,396 --> 00:33:54,187 ก็ไม่ได้ทำจริงๆ ที่เหมาะสมแตกต่าง? 766 00:33:54,187 --> 00:33:55,770 มันเป็นเพียงแค่จะได้รับการตรวจสอบสำหรับมัน 767 00:33:55,770 --> 00:33:56,900 >> ANDI PENG: นั่นเป็น คำถามที่ดีจริงๆ 768 00:33:56,900 --> 00:33:58,880 และเราจะลามปาม นี้ในภายหลัง แต่เพียง 769 00:33:58,880 --> 00:34:01,160 รู้ว่าเป็นสวิทช์ คำสั่ง infinitely-- มัน 770 00:34:01,160 --> 00:34:03,536 มีประสิทธิภาพมากขึ้นกว่าที่มันและถ้า อื่นถ้าเพราะมันทำงาน 771 00:34:03,536 --> 00:34:06,660 โดยใช้รูปแบบที่แตกต่างกันของการทำงานว่า ช่วยให้คุณสามารถที่จะเป็นหลักที่จะเพียงแค่ 772 00:34:06,660 --> 00:34:08,790 กระโดดตรงไปยัง กรณีที่คุณต้องการที่จะเป็นที่ 773 00:34:08,790 --> 00:34:10,547 ใช่ 774 00:34:10,547 --> 00:34:11,255 ลำโพง 14: เย็น 775 00:34:11,255 --> 00:34:11,754 ขอบคุณ 776 00:34:11,754 --> 00:34:12,526 ANDI เป็ง: ใช่ 777 00:34:12,526 --> 00:34:16,687 >> ลำโพง 14: และคุณไม่สามารถ ทำกรณีเช่นและมากกว่า 778 00:34:16,687 --> 00:34:17,270 ANDI PENG: เลขที่ 779 00:34:17,270 --> 00:34:19,860 ดังนั้นนั่นคือสิ่งที่เกี่ยวกับการ จำกัด งบเปลี่ยนคือการที่คุณมี 780 00:34:19,860 --> 00:34:21,564 ที่จะมีค่าคงที่เท่านั้นจำนวนเต็มเท่านั้น 781 00:34:21,564 --> 00:34:22,064 ใช่ 782 00:34:22,064 --> 00:34:25,179 783 00:34:25,179 --> 00:34:25,820 ตกลง. 784 00:34:25,820 --> 00:34:28,659 >> ดังนั้นนี่คือสิ่งที่คุณ ผู้ชายมักจะพบน้อย, 785 00:34:28,659 --> 00:34:32,280 แต่ผมแค่อยากจะ แนะนำในกรณีที่ 786 00:34:32,280 --> 00:34:36,210 ที่นี่เรามีสิ่งที่ เรียกว่าผู้ประกอบการที่ประกอบไปด้วย 787 00:34:36,210 --> 00:34:39,370 ในกรณีที่เป็นหลักก็ชอบเพียง ถ้าคำสั่งเรียบเรียงหนึ่งบรรทัด 788 00:34:39,370 --> 00:34:42,630 ที่นี่ผมจะไปลงในบรรทัดถัดไปที่ หน้าถัดไปเพราะมันง่ายที่จะเห็น 789 00:34:42,630 --> 00:34:44,860 >> ดังนั้นเราจึงได้เห็นสิ่งที่ถูกต้องนี้หรือไม่? 790 00:34:44,860 --> 00:34:46,110 นี้จะสวยง่ายต่อการปฏิบัติ 791 00:34:46,110 --> 00:34:51,290 ถ้าผมต้องการที่จะทำให้ตัวแปรที่เรียกว่า สตริงชื่อ s ถ้าจำนวนหนึ่ง 792 00:34:51,290 --> 00:34:54,770 ฉันให้มันเป็นน้อยกว่า 100 ผม ต้องการกำหนดให้ต่ำเพื่อสตริง 793 00:34:54,770 --> 00:34:57,240 อื่นที่ฉันต้องการที่จะกำหนดสูง 794 00:34:57,240 --> 00:35:01,370 >> ที่นี่จะทำสิ่งเดียวที่แน่นอน ผู้ที่แปดบรรทัดของรหัสที่กำลังทำ 795 00:35:01,370 --> 00:35:03,600 ดังนั้นที่นี่ฉันต้องการที่จะสร้าง สตริงตัวแปร 796 00:35:03,600 --> 00:35:08,520 และนี่คือสภาพผม การตรวจสอบหากมีจำนวนน้อยกว่า 100 797 00:35:08,520 --> 00:35:12,750 แล้วคุณกำหนดค่าของต่ำ อื่นกำหนดค่าของสูง 798 00:35:12,750 --> 00:35:15,802 >> ภาพนิ่งเหล่านี้จะออนไลน์ไม่ต้องกังวล ถ้าพวกคุณไม่ได้รับนี้ลง 799 00:35:15,802 --> 00:35:18,510 นี่เป็นเพียงวิธีที่ง่ายมากขึ้น วิธีที่มีประสิทธิภาพของการเขียนรหัส 800 00:35:18,510 --> 00:35:21,290 801 00:35:21,290 --> 00:35:21,810 ตกลง. 802 00:35:21,810 --> 00:35:25,190 >> ดังนั้นตอนนี้เรากำลังจะไป ใส่สิ่งที่สำหรับคนส่วนใหญ่ 803 00:35:25,190 --> 00:35:28,660 เป็นเหมือนมากสับสนมาก สิ่งที่จะต้องคิดเกี่ยวกับในตอนแรก 804 00:35:28,660 --> 00:35:30,226 ส่วนที่ห่วง 805 00:35:30,226 --> 00:35:32,600 ดังนั้นวันนี้เรากำลังจะพูดคุย เกี่ยวกับสามประเภทของลูป 806 00:35:32,600 --> 00:35:34,890 เรากำลังจะเริ่มต้นด้วยในขณะที่ ห่วงแล้วพูดคุยเกี่ยวกับสิ่งที่ต้องทำในขณะที่วง 807 00:35:34,890 --> 00:35:36,740 แล้วพูดคุยเกี่ยวกับลูป 808 00:35:36,740 --> 00:35:40,010 >> เพื่อเป็นหลักสำหรับการมากขึ้น ผู้เรียนมองเห็นออกมี 809 00:35:40,010 --> 00:35:44,410 เรามีหลักแบบกราฟิก ภาพของสิ่งที่ห่วงในขณะที่ไม่ 810 00:35:44,410 --> 00:35:48,290 ดังนั้นในการเขียนโปรแกรมที่คุณจะเริ่ม และใส่ห่วงที่จุดหนึ่ง 811 00:35:48,290 --> 00:35:49,470 คุณสามารถตรวจสอบสภาพ 812 00:35:49,470 --> 00:35:52,165 และถ้าเงื่อนไขเป็นจริง คุณรันรหัสภายใน 813 00:35:52,165 --> 00:35:53,790 และคุณกลับมารอบ ๆ และคุณตรวจสอบ 814 00:35:53,790 --> 00:35:57,190 ถ้ามันยังคงเป็นจริงคุณให้ทำงาน รหัสนี้ไปรอบ ๆ ในวง 815 00:35:57,190 --> 00:36:00,970 >> แต่ที่สองที่ สภาพกลายเป็นเท็จ 816 00:36:00,970 --> 00:36:02,739 คุณกำลังจะทำลายและสิ้นสุดห่วง 817 00:36:02,739 --> 00:36:05,030 และนี่เป็นหลัก ไวยากรณ์ที่คุณกำลังจะใช้ 818 00:36:05,030 --> 00:36:08,250 ในขณะที่เงื่อนไขบางอย่างคือ จริงทำเช่นนี้ถ้ามันไม่เป็นความจริง 819 00:36:08,250 --> 00:36:12,920 คุณกำลังจะข้ามไปที่สิ้นสุด และก้าวไปข้างหน้ากับโปรแกรมของคุณ 820 00:36:12,920 --> 00:36:13,690 ตกลง. 821 00:36:13,690 --> 00:36:17,250 >> ไม่มีใครมีตัวอย่าง ที่อาจเกิดขึ้นกับสิ่งที่อาจจะเกิดขึ้น 822 00:36:17,250 --> 00:36:19,160 ถ้าฉันพยายามที่จะเรียกชิ้นส่วนของรหัสนี้หรือไม่? 823 00:36:19,160 --> 00:36:22,470 โดยวิธีการที่ SAJ-- ที่ Scaz, Andi, Jason-- เราจะลงนามอีเมลของเรา 824 00:36:22,470 --> 00:36:24,830 รัก SAJ 825 00:36:24,830 --> 00:36:25,573 นั่นคือเรา 826 00:36:25,573 --> 00:36:26,500 ตกลง. 827 00:36:26,500 --> 00:36:29,829 >> ใครมีตัวอย่างหรือมี คิดในสิ่งนี้จะพิมพ์? 828 00:36:29,829 --> 00:36:30,870 ชนิดของคำถามเคล็ดลับ 829 00:36:30,870 --> 00:36:34,550 830 00:36:34,550 --> 00:36:39,380 ดังนั้นที่นี่อย่าลืมเงื่อนไข เรากำลังตรวจสอบในขณะที่ความจริง 831 00:36:39,380 --> 00:36:42,840 ดังนั้นในขณะนี้เป็นจริงมันเป็น จะพิมพ์ฉันรัก SAJ! 832 00:36:42,840 --> 00:36:48,460 มีจุดที่เราต้องการใด ๆ เปลี่ยนอะไรอย่างอื่น? 833 00:36:48,460 --> 00:36:49,050 ไม่มีใช่มั้ย? 834 00:36:49,050 --> 00:36:51,470 >> ดังนั้นในที่นี่เรามี พบสิ่งที่น่าจะเป็น 835 00:36:51,470 --> 00:36:54,310 จะได้รับการ bugging จำนวนมาก โปรแกรมของคุณห่วงไม่มีที่สิ้นสุด 836 00:36:54,310 --> 00:36:56,268 คุณจะพบว่าถ้าคุณ ทำงานชิ้นส่วนของรหัสนี้ 837 00:36:56,268 --> 00:36:58,160 มันเป็นเพียงแค่ไปเพื่อให้ พิมพ์ฉันรัก SAJ! 838 00:36:58,160 --> 00:37:00,701 ในขณะที่เราขอขอบคุณที่สนับสนุน เราไม่ต้องการให้คอมพิวเตอร์ของคุณ 839 00:37:00,701 --> 00:37:02,910 จะผิดพลาดเพราะคุณ ให้พิมพ์ฉันรัก SAJ! 840 00:37:02,910 --> 00:37:05,320 >> ดังนั้นโปรดกรุณา หลีกเลี่ยงวง จำกัด 841 00:37:05,320 --> 00:37:07,320 เพราะมันไม่เคยไป ในการประเมินเป็นเท็จ 842 00:37:07,320 --> 00:37:08,780 และคุณไม่เคยไป ที่จะออกจากวง 843 00:37:08,780 --> 00:37:10,530 และคุณกำลังจะไป ถูกดูดในตลอดไป 844 00:37:10,530 --> 00:37:13,000 เย็น 845 00:37:13,000 --> 00:37:13,694 ตกลง. 846 00:37:13,694 --> 00:37:15,610 ประเภทที่สองของวง เราจะพูดถึงในวันนี้ 847 00:37:15,610 --> 00:37:17,580 เป็นสิ่งที่ต้องทำในขณะที่ห่วงทำในขณะที่ห่วง 848 00:37:17,580 --> 00:37:20,580 และก็เรียกว่าทำในขณะที่ห่วง เพราะคุณมีสิ่งที่ต้องทำและในขณะที่ 849 00:37:20,580 --> 00:37:24,390 ดังนั้นนี่คือสวยคล้ายกับในขณะที่ ห่วง แต่แตกต่างกันเล็กน้อย 850 00:37:24,390 --> 00:37:27,620 ที่นี่คุณกำลังจะทำ สิ่งที่อยู่ภายในนี้ 851 00:37:27,620 --> 00:37:29,747 ในขณะที่เงื่อนไขบางอย่างเป็นความจริง 852 00:37:29,747 --> 00:37:32,580 ดังนั้นถ้าผมซีและคอมพิวเตอร์ของฉัน วิ่งลงชิ้นส่วนของรหัสนี้ 853 00:37:32,580 --> 00:37:33,880 ผมจะดูที่ด้านบน 854 00:37:33,880 --> 00:37:36,890 ฉันไปที่ C ผมว่าทำสิ่งนี้ 855 00:37:36,890 --> 00:37:40,550 และแล้วฉันจะตรวจสอบในขณะนี้ เป็นความจริงที่ฉันต้องทำซ้ำได้ 856 00:37:40,550 --> 00:37:42,750 แต่ในขณะนี้เป็นเท็จ แล้วฉันจะก้าวไปข้างหน้า 857 00:37:42,750 --> 00:37:44,700 และฉันไม่เคยกลับไปที่ห่วงอีกครั้ง 858 00:37:44,700 --> 00:37:48,360 >> ใครสามารถใช้แทง สิ่งที่แตกต่าง 859 00:37:48,360 --> 00:37:52,130 ระหว่างวงนี้และหนึ่งที่เรา เพียงแค่มองที่เป็นจริง 860 00:37:52,130 --> 00:37:52,717 ใช่ 861 00:37:52,717 --> 00:37:55,050 ลำโพง 15: สภาพ มาหลังจากแทนการมาก่อนหรือไม่ 862 00:37:55,050 --> 00:37:55,841 ANDI PENG: แน่นอน 863 00:37:55,841 --> 00:37:57,984 ดังนั้นเธอจึงกล่าวว่าสภาพ มาหลังจากไม่ก่อน 864 00:37:57,984 --> 00:38:00,400 ในที่สุดความแตกต่าง ระหว่างนี้และห่วงในขณะที่ 865 00:38:00,400 --> 00:38:03,597 คือการที่คุณกำลังจะทำ สิ่งที่อยู่ภายในนี้โดยไม่คำนึงถึง 866 00:38:03,597 --> 00:38:06,430 หรือไม่ว่าสภาพของคุณคือ ความจริงแล้วตรวจสอบสภาพ 867 00:38:06,430 --> 00:38:08,304 ดังนั้นในกรณีนี้คุณ always-- ในลักษณะนี้ 868 00:38:08,304 --> 00:38:11,240 คุณมักจะทำให้แน่ใจว่า สิ่งที่อยู่ภายในทำงานอย่างน้อย 869 00:38:11,240 --> 00:38:14,230 อีกครั้งก่อนตรวจสอบเพื่อดู ถ้าคุณต้องการให้ทำงานอีกครั้ง 870 00:38:14,230 --> 00:38:18,040 >> และนี่คือตัวอย่าง เมื่อเราจะใช้มัน 871 00:38:18,040 --> 00:38:22,570 ดังนั้นตัวอย่างเช่นถ้าผมต้องการที่จะมี ตัวแปรชนิด int ชื่ออายุ 872 00:38:22,570 --> 00:38:25,640 และฉันต้องการที่จะแจ้งให้ ผู้ใช้สำหรับอายุของพวกเขา 873 00:38:25,640 --> 00:38:27,910 ฉันจะทำ printf () คุณอายุเท่าไหร่? 874 00:38:27,910 --> 00:38:30,330 อายุ = GetInt () ซึ่ง จะแจ้งผู้ใช้ 875 00:38:30,330 --> 00:38:32,140 >> และบางคนจะน่ารำคาญจริงๆ 876 00:38:32,140 --> 00:38:34,931 และคุณไม่ต้องการที่บกพร่องในของคุณ โปรแกรมของใครบางคนป้อนชอบ 877 00:38:34,931 --> 00:38:36,680 โอ้ฉันเชิงลบอายุ 4 ปีหรืออะไรก็ตาม 878 00:38:36,680 --> 00:38:39,900 ซึ่งในกรณีนี้หากพวกเขา ทำที่นี้ประเมิน 879 00:38:39,900 --> 00:38:43,150 จริงซึ่งหมายความว่าฉันจะไป ต้องให้กลับไปและทำเช่นนี้ 880 00:38:43,150 --> 00:38:45,310 ดังนั้นนี้เป็นไปเพื่อให้ อีกครั้งกระตุ้นให้ผู้ใช้ 881 00:38:45,310 --> 00:38:47,960 เพื่อให้คุณได้เหมือนจริง จำนวนอายุและก็ 882 00:38:47,960 --> 00:38:51,930 จะเก็บจะกลับ redoing มันจนกว่าพวกเขาให้คุณอายุจริง 883 00:38:51,930 --> 00:38:56,900 มากกว่าหนึ่งหรือไม่เป็นศูนย์ 884 00:38:56,900 --> 00:38:58,020 >> ดังนั้นคำใบ้คำใบ้ 885 00:38:58,020 --> 00:39:02,263 นี้จะเป็นมากมีประโยชน์มาก สำหรับหนึ่งในปัญหา PSet ของคุณ 886 00:39:02,263 --> 00:39:04,155 ใช่ 887 00:39:04,155 --> 00:39:05,580 >> ลำโพง 16: ขออภัยขอโทษ 888 00:39:05,580 --> 00:39:06,288 >> ANDI PENG: อ๋อ 889 00:39:06,288 --> 00:39:09,424 >> ลำโพง 16: มีไม่ จะเป็นไอ้, but-- 890 00:39:09,424 --> 00:39:10,340 ANDI PENG: ไม่ต้องกังวล 891 00:39:10,340 --> 00:39:11,990 ลำโพง 16: --are มี กฎที่แตกต่างกันที่นี่ 892 00:39:11,990 --> 00:39:13,810 หรือไม่คุณก็ลืม ที่จะนำคำพูดหรือไม่ 893 00:39:13,810 --> 00:39:14,250 >> ANDI PENG: โอ้ใช่ 894 00:39:14,250 --> 00:39:15,530 ขออภัยที่ไม่ดีของฉันทั้งหมด 895 00:39:15,530 --> 00:39:17,100 นั่นคือแน่นอน ควรจะเป็นใบเสนอราคา 896 00:39:17,100 --> 00:39:17,690 จับดี. 897 00:39:17,690 --> 00:39:18,800 ที่จะไม่ได้ทำงาน 898 00:39:18,800 --> 00:39:22,070 899 00:39:22,070 --> 00:39:22,830 ตกลง. 900 00:39:22,830 --> 00:39:26,160 >> ดังนั้นประเภทสุดท้ายของวงเราจะพูดคุย เกี่ยวกับและในที่สุดชนิดมากที่สุด 901 00:39:26,160 --> 00:39:28,854 ที่ซับซ้อนเป็นห่วง 902 00:39:28,854 --> 00:39:30,770 ไม่ต้องกังวลถ้าคุณทำไม่ได้ รู้ว่าสิ่งที่หมายถึง 903 00:39:30,770 --> 00:39:32,061 มันสวยทำให้เกิดความสับสนในตอนแรก 904 00:39:32,061 --> 00:39:33,640 เราจะไปกว่าตัวอย่าง 905 00:39:33,640 --> 00:39:37,040 >> ทั้งหมดที่เกิดขึ้นในการวน คือการที่คุณมีสามงบ 906 00:39:37,040 --> 00:39:38,380 ที่คุณกำลังจะรวมถึง 907 00:39:38,380 --> 00:39:42,130 ดังนั้นสำหรับสิ่งบางอย่างคุณ จะเริ่มต้นตัวแปร 908 00:39:42,130 --> 00:39:45,280 คุณกำลังจะเพิ่มเงื่อนไขในการ ซึ่งวงนี้จะทำให้การทำงาน 909 00:39:45,280 --> 00:39:47,790 และแล้วในตอนท้ายของ ห่วงคุณกำลังจะปรับปรุงมัน 910 00:39:47,790 --> 00:39:50,248 คุณสามารถปรับปรุงตัวแปร ที่คุณต้องการที่จะติดตาม 911 00:39:50,248 --> 00:39:52,530 ดังนั้นเราจึงมักจะใช้ สำหรับลูปสำหรับเมื่อเรา 912 00:39:52,530 --> 00:39:55,390 ต้องการเรียกใช้สำหรับวงที่ จำนวนหนึ่งครั้ง 913 00:39:55,390 --> 00:39:58,900 และเรารู้อยู่แล้วว่าโอ้ฉันต้องการ วงนี้ที่จะดำเนินการเช่น 10 ครั้ง 914 00:39:58,900 --> 00:40:03,060 แล้วคุณ do-- ฉันจะไปกว่า ตัวอย่างเช่นในหน้าถัดไป 915 00:40:03,060 --> 00:40:07,830 >> ดังนั้นที่นี่ตัวอย่างเช่นในเกาถ้าคุณ ต้องการสิ่งที่จะทำซ้ำ 10 ครั้ง 916 00:40:07,830 --> 00:40:10,790 สิ่งที่คุณจะพูดคือ ทำซ้ำ 10 ครั้งฉันรัก SAJ! 917 00:40:10,790 --> 00:40:15,260 ซึ่งเป็นที่ยอมรับมากขึ้น แสดงการสนับสนุนสำหรับเรา 918 00:40:15,260 --> 00:40:17,120 มากกว่าวง จำกัด 919 00:40:17,120 --> 00:40:19,920 นี่คือวิธีที่คุณจะ การเปลี่ยนไปใช้ซีและเขียน 920 00:40:19,920 --> 00:40:26,040 ที่มีไว้สำหรับ int-- ฉันจะสร้างหรือ ประกาศตัวแปรชนิด int ชื่อฉัน 921 00:40:26,040 --> 00:40:30,089 ฉันจะเริ่มต้น มันเป็น 0 ดังนั้น i = 0; 922 00:40:30,089 --> 00:40:31,630 และนี่จะเป็นสภาพของฉัน 923 00:40:31,630 --> 00:40:33,860 ดังนั้นฉันน้อยกว่า 10 924 00:40:33,860 --> 00:40:36,096 และแล้วที่ end-- คำสั่งสุดท้ายที่คุณอยู่ 925 00:40:36,096 --> 00:40:38,710 จะมีการปรับปรุงของ เกิดอะไรขึ้นกับฉันตัวแปร 926 00:40:38,710 --> 00:40:40,206 ในตอนท้ายของการห่วงของคุณ 927 00:40:40,206 --> 00:40:42,830 ดังนั้นมันเป็นชนิดของความสับสนเพราะ ส่วนต่าง ๆ ของสายนี้ 928 00:40:42,830 --> 00:40:44,871 จะเกิดขึ้นที่แตกต่างกัน ประเภทวง 929 00:40:44,871 --> 00:40:46,746 แต่ฉันจะไปมากกว่า ตัวอย่างเช่น pseudocode ที่ 930 00:40:46,746 --> 00:40:50,360 และอาจจะอธิบายเรื่องนี้ เพียงเล็กน้อยดีกว่า 931 00:40:50,360 --> 00:40:51,500 >> ดังนั้นที่นี่ 932 00:40:51,500 --> 00:40:52,929 นั่นเป็นห่วงเราก็เห็น 933 00:40:52,929 --> 00:40:55,470 เป็นหลักใน pseudocode สิ่งที่ ที่เกิดขึ้นในโปรแกรมนี้ 934 00:40:55,470 --> 00:40:57,940 เป็นครั้งแรกที่ฉันสร้าง ฉันเริ่มต้นมันเป็น 0 935 00:40:57,940 --> 00:41:00,440 ผมตรวจสอบเพื่อดูว่าฉันเป็น น้อยกว่า 10 ซึ่งในกรณีนี้ 936 00:41:00,440 --> 00:41:02,840 ครั้งแรกที่มันเป็น เพราะ 0 น้อยกว่า 10 937 00:41:02,840 --> 00:41:04,727 ดังนั้นห่วงจะไปทำงาน 938 00:41:04,727 --> 00:41:06,310 และแล้วฉันจะพิมพ์บรรทัดนี้ 939 00:41:06,310 --> 00:41:11,240 และจากนั้นในตอนท้ายของบรรทัดนี้ขวา ที่นี่ฉันจะทำเพิ่มฉันฉัน ++ 940 00:41:11,240 --> 00:41:13,370 ทุกสิ่งที่หมายถึงคือ การเพิ่มมันโดยหนึ่ง 941 00:41:13,370 --> 00:41:15,460 >> ดังนั้นฉันอยู่ในขณะนี้ 1 942 00:41:15,460 --> 00:41:17,960 เพราะมันเคยเป็น 0 ถ้าฉัน เพิ่มขึ้นมันก็ตอนนี้ 1 943 00:41:17,960 --> 00:41:19,610 และแล้วฉันจะกลับไป ที่จุดเริ่มต้นของวง 944 00:41:19,610 --> 00:41:20,730 และฉันจะตรวจสอบสภาพ 945 00:41:20,730 --> 00:41:22,080 ยังคงสภาพที่เป็นจริงหรือไม่? 946 00:41:22,080 --> 00:41:24,030 ใช่ 1 ยังคงน้อยกว่า 10 947 00:41:24,030 --> 00:41:27,370 ดังนั้นมันจะพิมพ์นี้อีกครั้ง ไปแล้วฉันเพิ่มขึ้นและตรวจสอบ 948 00:41:27,370 --> 00:41:29,180 เงื่อนไข อย่างต่อเนื่องอย่างต่อเนื่อง 949 00:41:29,180 --> 00:41:33,290 จนกว่าคุณจะได้รับในที่สุด ไปยังจุดที่ฉันคือ 10 950 00:41:33,290 --> 00:41:36,300 >> คุณกำลังจะพิมพ์นี้ 10 ครั้ง แล้วฉันจะไปเท่ากับ 10 951 00:41:36,300 --> 00:41:37,800 คุณกำลังจะไปตรวจสอบสภาพ 952 00:41:37,800 --> 00:41:38,760 10 น้อยกว่า 10? 953 00:41:38,760 --> 00:41:40,370 ไม่มีที่เป็นเท็จ 954 00:41:40,370 --> 00:41:43,020 ดังนั้นห่วงนี้จะไม่ การทำงานก็จะแตกสลาย 955 00:41:43,020 --> 00:41:45,040 และคุณกำลังจะไป ต่อเมื่อมีรหัสของคุณ 956 00:41:45,040 --> 00:41:47,550 >> ดังนั้นในขณะที่พวกคุณสามารถดูนี้ เป็นตัวอย่างที่ดีจริงๆ 957 00:41:47,550 --> 00:41:53,110 ของวงที่คุณสามารถเขียนโปรแกรมในการที่ ทำงานสำหรับจำนวนครั้งที่กำหนดไว้ 958 00:41:53,110 --> 00:41:54,457 ทุกคนชัดเจน? 959 00:41:54,457 --> 00:41:54,956 ใช่ 960 00:41:54,956 --> 00:41:59,060 >> ลำโพง 17: วิธีการเกี่ยวกับการเพิ่มขึ้น ชี้แจงก็คือการเข้ารหัสที่แตกต่างกัน? 961 00:41:59,060 --> 00:42:02,060 >> ANDI PENG: คุณ can-- เราจะไป มากกว่านี้ในภาพนิ่งถัดไป 962 00:42:02,060 --> 00:42:03,350 คำถามที่ดี. 963 00:42:03,350 --> 00:42:05,910 เป็น anyone-- ก่อนที่ผมจะย้าย on-- ทุกคนที่สับสนทั้งหมด 964 00:42:05,910 --> 00:42:07,640 เพราะนี่เป็นแนวคิดที่ยากจริงๆ 965 00:42:07,640 --> 00:42:09,510 ไม่ต้องกังวลถ้าตกลง you're-- 966 00:42:09,510 --> 00:42:10,010 เย็น 967 00:42:10,010 --> 00:42:12,836 968 00:42:12,836 --> 00:42:13,490 >> ทั้งหมดขวา 969 00:42:13,490 --> 00:42:14,610 เพียงแค่สไลด์ทั่วไป 970 00:42:14,610 --> 00:42:18,020 ห่วงในขณะนี้จะทำ แน่นอนสิ่งเดียวกันสำหรับวงเป็น 971 00:42:18,020 --> 00:42:19,631 มันเป็นเพียงแค่การเขียนที่แตกต่างกัน 972 00:42:19,631 --> 00:42:22,130 พวกคุณสามารถอ่านภาพนิ่ง ที่อำนวยความสะดวกของคุณในภายหลัง 973 00:42:22,130 --> 00:42:24,880 แต่เพิ่งรู้ว่ามีหลาย วิธีการเขียนในสิ่งเดียวกัน 974 00:42:24,880 --> 00:42:28,300 ที่จะเกิดขึ้นกับลูปที่แตกต่างกัน 975 00:42:28,300 --> 00:42:28,800 ตกลง. 976 00:42:28,800 --> 00:42:32,380 >> ดังนั้นตอนนี้เราได้รับในคำถามของสิ่งที่ ถ้าเรามีห่วงด้านในของวง 977 00:42:32,380 --> 00:42:35,810 เรากำลังได้รับเป็นจริง สิ่งที่จดทะเบียนกองทุนประเภทที่นี่ 978 00:42:35,810 --> 00:42:40,640 เมื่อคุณต้องการที่จะทำสิ่งที่หลาย ๆ ครั้งภายในของสิ่งอื่น ๆ 979 00:42:40,640 --> 00:42:44,129 ที่จะทำสิ่งหลายครั้งคุณ ต้องการสิ่งที่เรียกว่าซ้อนกันสำหรับวง 980 00:42:44,129 --> 00:42:47,420 สำหรับบรรดาของคุณเป็นคนแรกที่เห็นนี้และ สับสนมากทุกสิ่งที่เรากำลังทำอะไรที่นี่ 981 00:42:47,420 --> 00:42:50,580 จะมีการห่วงที่ เรามีตัวแปรแถว 982 00:42:50,580 --> 00:42:54,500 แต่ภายในของมันเรายังมีอีก สำหรับวงของคอลัมน์ที่เรียกว่าตัวแปร 983 00:42:54,500 --> 00:42:58,560 และผมขอแนะนำให้ทุกท่าน ที่กำลังสับสนแรกให้ 984 00:42:58,560 --> 00:43:00,310 track-- วาดออกนี้วาดออกนี้ 985 00:43:00,310 --> 00:43:03,000 อย่าพยายามที่จะเพียงแค่เหตุผล ผ่านมันวาดมันออกมา 986 00:43:03,000 --> 00:43:06,630 >> ในหัวของคุณบนแผ่นนี้ กระดาษหรืออะไรก็ตามแถวเขียน 987 00:43:06,630 --> 00:43:08,614 ติดตามสิ่งที่แถวเท่ากับ 988 00:43:08,614 --> 00:43:10,780 เขียนคอลัมน์ติดตาม ของสิ่งที่มีค่าเท่ากับคอลัมน์ 989 00:43:10,780 --> 00:43:13,490 และติดตามสิ่งที่เป็น พิมพ์ออกมาด้วยซ้ำทุก 990 00:43:13,490 --> 00:43:16,320 ย้ำทุกคนของวงนี้ทุก ทวนของวงที่มีขนาดใหญ่ 991 00:43:16,320 --> 00:43:17,820 เพียงแค่เก็บต่อไปตรรกะ 992 00:43:17,820 --> 00:43:20,190 และผมรับประกันคุณ คุณจะรักในสิ่งที่คุณเห็น 993 00:43:20,190 --> 00:43:24,307 เพราะมันยังมีมาก บังคับสำหรับชุดปัญหาของคุณได้ 994 00:43:24,307 --> 00:43:24,806 เย็น 995 00:43:24,806 --> 00:43:27,501 996 00:43:27,501 --> 00:43:28,000 ทั้งหมดขวา 997 00:43:28,000 --> 00:43:30,723 ดังนั้นสิ่งที่สำคัญที่สุด ที่พวกคุณอาจจะทั้งหมด 998 00:43:30,723 --> 00:43:32,400 คิดเกี่ยวกับตอนนี้ เป็นปัญหาของคุณตั้ง 1s, 999 00:43:32,400 --> 00:43:33,650 ซึ่งจะครบกำหนดพฤหัสบดี / ศุกร์ 1000 00:43:33,650 --> 00:43:36,890 1001 00:43:36,890 --> 00:43:39,710 >> ในโปรแกรม water.c ของคุณ คำแนะนำที่คุณกำลังจะมี 1002 00:43:39,710 --> 00:43:41,590 เพื่อให้ผู้ใช้สำหรับการป้อนข้อมูล 1003 00:43:41,590 --> 00:43:43,640 ภายในโปรแกรม mario.c ของคุณ คุณกำลังจะมี 1004 00:43:43,640 --> 00:43:46,431 ที่จะใช้สำหรับวงที่ซ้อนกันซึ่งเป็น สำหรับห่วงภายในสำหรับห่วง 1005 00:43:46,431 --> 00:43:50,247 พิมพ์บล็อกของปิรามิดเป็นหลัก เหมือนสิ่งที่มาริโอจะต้องข้ามผ่าน 1006 00:43:50,247 --> 00:43:53,330 และจากนั้นภายใน greedy-- ของคุณหรืออาจจะ การเปลี่ยนถ้าใด ๆ ของพวกคุณ 1007 00:43:53,330 --> 00:43:55,740 เคยได้ยิน that-- คุณจะต้องเป็นอย่างมาก 1008 00:43:55,740 --> 00:43:58,160 ระวังค่าลอยจุดแรก 1009 00:43:58,160 --> 00:44:01,860 จำทศนิยมลอย จำนวนเต็มไม่ได้ในสิ่งเดียวกัน 1010 00:44:01,860 --> 00:44:03,620 ติดตามเป็นที่หนึ่งซึ่ง 1011 00:44:03,620 --> 00:44:05,953 และคุณกำลังจะใช้ งบเงื่อนไขเช่นเดียวกับ 1012 00:44:05,953 --> 00:44:09,070 1013 00:44:09,070 --> 00:44:10,940 >> สิทธิทั้งหมดสิ่งสุดท้าย 1014 00:44:10,940 --> 00:44:12,770 ฉันมีสองสามนาทีที่เหลือ 1015 00:44:12,770 --> 00:44:13,460 สไตล์ 1016 00:44:13,460 --> 00:44:19,320 ดังนั้นนี่คือบางสิ่งบางอย่างที่ไม่ได้ จริงมีผลกระทบต่อประสิทธิภาพ 1017 00:44:19,320 --> 00:44:21,010 หรือการทำงานที่เกิดขึ้นจริงของรหัสของคุณ 1018 00:44:21,010 --> 00:44:24,380 แต่ก็มีผลต่อเราในฐานะ คารมของคุณเป็นผู้อ่านของคุณ 1019 00:44:24,380 --> 00:44:27,290 มันมีผลต่อตัวคุณเองถ้าคุณ พยายามที่จะหาปัญหา 1020 00:44:27,290 --> 00:44:30,700 มันมีผลต่อการอ่านของรหัสของคุณ 1021 00:44:30,700 --> 00:44:34,070 >> ดังนั้นรูปแบบเช่นเมื่อคุณกำลังพยายามที่จะ รูปแบบการเขียนเรียงความภาษาอังกฤษถ้าคุณ 1022 00:44:34,070 --> 00:44:36,070 ไม่ได้มีย่อหน้า คุณมีทุกอย่างชนิด 1023 00:44:36,070 --> 00:44:39,190 jumbled ของร่วมกันในหนึ่งบรรทัดมัน ทำให้มันยากมากสำหรับทุกคน 1024 00:44:39,190 --> 00:44:42,620 การอ่านเรียงความของคุณแม้ว่า คะแนนของคุณจะมีเหตุผลเสียง 1025 00:44:42,620 --> 00:44:44,390 สิ่งที่เหมือนกันในการเขียนโปรแกรม 1026 00:44:44,390 --> 00:44:47,910 คุณสามารถมีความชัดเจนอย่างน่ากลัว รหัส Scaz ซึ่งจะครอบคลุม 1027 00:44:47,910 --> 00:44:49,660 และยังคงสามารถทำงานและการทำงาน 1028 00:44:49,660 --> 00:44:53,110 แต่สำหรับเราเป็นครูที่น่ารักของคุณที่จะ จะอ่านและประเมินผล PSets ของคุณ 1029 00:44:53,110 --> 00:44:54,460 ที่ไม่ดีมาก 1030 00:44:54,460 --> 00:44:56,859 >> ดังนั้นโปรดเพื่อประโยชน์ ของเราและตัวเอง 1031 00:44:56,859 --> 00:44:58,900 เมื่อคุณกำลังพยายามที่จะแก้ไข ปัญหาที่เกิดขึ้นในรหัสของคุณ 1032 00:44:58,900 --> 00:45:00,774 และคุณกำลังพยายามที่จะ อ่านรห​​ัสของคุณเองให้ 1033 00:45:00,774 --> 00:45:03,910 แน่ใจว่าคุณไปตามธรรมเนียมปฏิบัติบาง ที่เรากำลังจะไปมากกว่า 1034 00:45:03,910 --> 00:45:04,510 >> ดังนั้นก่อน 1035 00:45:04,510 --> 00:45:07,070 ตัวแปรของคุณให้ความหมายชื่อ 1036 00:45:07,070 --> 00:45:11,450 ถ้าคุณต้องการที่จะเก็บจำนวนเต็ม เรียกว่าอายุกรุณาตั้งชื่ออายุ 1037 00:45:11,450 --> 00:45:12,875 อย่าชื่อมันสูง 1038 00:45:12,875 --> 00:45:14,750 เมื่อคุณกำลังพยายามที่จะ เก็บอายุสูง 1039 00:45:14,750 --> 00:45:16,722 มันทำให้ทุกอย่าง ทำให้เกิดความสับสนมากสำหรับเรา 1040 00:45:16,722 --> 00:45:17,930 เราไม่ชอบให้สับสน 1041 00:45:17,930 --> 00:45:19,180 คุณไม่ชอบที่จะต้องสับสน 1042 00:45:19,180 --> 00:45:20,350 ไม่มีใครชอบที่จะสับสน 1043 00:45:20,350 --> 00:45:23,100 หากคุณกำลังจะสร้างบางสิ่งบางอย่าง ชื่อที่มีความหมาย 1044 00:45:23,100 --> 00:45:26,440 >> อย่างไรก็ตามในสำหรับวงเดียว ตัวแปรตัวละครที่มักจะมีการปรับ 1045 00:45:26,440 --> 00:45:31,350 และในห่วงถ้าคุณต้องการเพียงแค่ฉัน และเจ k รู้สึกอิสระที่จะทำว่า 1046 00:45:31,350 --> 00:45:32,670 >> เริ่มต้นที่สอดคล้องกัน 1047 00:45:32,670 --> 00:45:33,770 ดังนั้นสิ่งที่หมายความว่า? 1048 00:45:33,770 --> 00:45:37,600 นั่นหมายความว่าในทางเทคนิคในทางทฤษฎี คุณสามารถเริ่มต้นและสร้าง 1049 00:45:37,600 --> 00:45:40,140 หลายตัวแปรในบรรทัดเดียวกัน 1050 00:45:40,140 --> 00:45:42,820 ดังนั้นสำหรับตัวอย่างเช่นผมสามารถสร้าง จำนวนเต็มเรียกว่า scaz_age ที่ 1051 00:45:42,820 --> 00:45:47,110 และจำนวนเต็มเรียกว่า andi_age = 20 และจำนวนเต็มเรียกว่า jason_age 1052 00:45:47,110 --> 00:45:48,090 ในบรรทัดเดียวกัน 1053 00:45:48,090 --> 00:45:52,060 และผมยังสามารถกำหนดเพียงคนเดียว พวกเขาและไม่คนอื่น ๆ ไปเป็นค่า 1054 00:45:52,060 --> 00:45:54,142 เราขอให้คุณโปรดอย่าทำอย่างนั้น 1055 00:45:54,142 --> 00:45:57,350 เพราะที่นี่คุณได้สร้างหลัก สามตัวแปร แต่เพียงหนึ่งของพวกเขา 1056 00:45:57,350 --> 00:45:58,295 จริงมีค่า 1057 00:45:58,295 --> 00:46:00,170 และจากนั้นเมื่อเราอยู่ พยายามอ่านรห​​ัสของคุณ 1058 00:46:00,170 --> 00:46:01,850 หรือถ้าคุณกำลังพยายามที่จะแก้ไข ปัญหาที่เกิดขึ้นในรหัสของคุณ 1059 00:46:01,850 --> 00:46:03,340 มันสับสนมากที่จะปฏิบัติตาม 1060 00:46:03,340 --> 00:46:09,300 ดังนั้นเพียงแค่สำหรับการอ่านของคุณ การอ่านของเราไม่ทำอย่างนั้น 1061 00:46:09,300 --> 00:46:10,355 >> วงเล็บปีกกาที่สอดคล้องกัน 1062 00:46:10,355 --> 00:46:12,980 บางคนชอบที่จะนำพวกเขา วงเล็บปีกกาในสถานที่ที่แตกต่างกัน 1063 00:46:12,980 --> 00:46:14,100 มันไม่สำคัญว่าจริงๆ 1064 00:46:14,100 --> 00:46:17,900 เพียงให้แน่ใจว่าคุณกำลังที่สอดคล้องกันในของคุณ รหัสของตัวเองในการที่คุณชอบที่จะนำพวกเขา 1065 00:46:17,900 --> 00:46:18,950 >> ระยะห่างที่สอดคล้องกัน 1066 00:46:18,950 --> 00:46:22,040 หากคุณใส่ช่องว่างหลังหนึ่ง สำหรับวงเสมอทำอย่างนั้น 1067 00:46:22,040 --> 00:46:24,930 ไม่เพียงแค่ชอบชนิดของการทำมันได้ที่ บางสถานที่ไม่ได้ทำมันในคนอื่น ๆ 1068 00:46:24,930 --> 00:46:26,580 เพียงแค่มีความสอดคล้อง 1069 00:46:26,580 --> 00:46:29,500 >> ประการที่สองหากใครต้องการ การอ่านคู่มือสไตล์ CS50, 1070 00:46:29,500 --> 00:46:33,230 เรามีคำแนะนำอย่างเป็นทางการในรูปแบบที่ บอกคุณทั้งหมดของการประชุมเหล่านี้ 1071 00:46:33,230 --> 00:46:34,890 บวกมากขึ้น 1072 00:46:34,890 --> 00:46:35,530 มันออนไลน์ 1073 00:46:35,530 --> 00:46:38,670 มันก็เหมือนกับการ cs50.net/style หรือสิ่งที่ต้องการ 1074 00:46:38,670 --> 00:46:40,180 คุณสามารถ google มัน 1075 00:46:40,180 --> 00:46:41,399 >> สอดคล้องเป็นกุญแจสำคัญ 1076 00:46:41,399 --> 00:46:43,190 จึงไม่ต้องกังวลว่าสิ่งที่ คนอื่นกำลังทำ 1077 00:46:43,190 --> 00:46:46,180 เพียงให้แน่ใจว่าคุณเป็น สอดคล้องภายในรหัสของคุณเอง 1078 00:46:46,180 --> 00:46:50,570 ใครมีคำถามใด ๆ เกี่ยวกับที่? 1079 00:46:50,570 --> 00:46:51,070 ใช่ 1080 00:46:51,070 --> 00:46:53,370 >> ลำโพง 18: ดังนั้นสิ่งที่เหมาะสม จะทำอย่างไรกับการเริ่มต้นเป็นเพียง 1081 00:46:53,370 --> 00:46:56,130 มีพวกเขาทั้งหมดในที่แยกต่างหาก บรรทัดคือว่าสิ่งที่คุณพูด? 1082 00:46:56,130 --> 00:46:58,850 >> ANDI PENG: ดังนั้นผมจึงมักจะมีเรื่องนี้เกิดขึ้น 1083 00:46:58,850 --> 00:47:02,230 แต่ถ้าคุณต้องการที่จะถ้าคุณต้องการ จะเป็นเหมือนการประหยัดพื้นที่ในรหัสของคุณ 1084 00:47:02,230 --> 00:47:04,000 หรืออะไรก็ตามที่คุณสามารถทำเช่นนี้ 1085 00:47:04,000 --> 00:47:07,800 เราขอให้คุณก็ไม่ได้เริ่มต้น สิ่งหนึ่งที่ไม่ได้และคนอื่น ๆ 1086 00:47:07,800 --> 00:47:12,600 ดังนั้นหากคุณต้องการที่จะทำ scaz_age int, int andi_age, int jason_age ที่ดี 1087 00:47:12,600 --> 00:47:15,600 เพียงแค่ไม่ได้เริ่มต้นอย่างใดอย่างหนึ่ง และคนอื่น ๆ ไม่ได้เป็นสิ่งที่ 1088 00:47:15,600 --> 00:47:18,380 1089 00:47:18,380 --> 00:47:19,904 >> คำถาม? 1090 00:47:19,904 --> 00:47:20,850 ทั้งหมดขวา 1091 00:47:20,850 --> 00:47:24,610 ฉันจะผ่านออก ไมโครโฟนและตัวชี้เลเซอร์ 1092 00:47:24,610 --> 00:47:28,862 และกระบองเพื่อ Scaz ที่จุดนี้ 1093 00:47:28,862 --> 00:47:29,808 นี้เป็นที่น่าอึดอัดใจ 1094 00:47:29,808 --> 00:47:32,650 1095 00:47:32,650 --> 00:47:33,200 นี่มันเป็น 1096 00:47:33,200 --> 00:47:34,408 >> ไบรอัน SCASSELLATI: ขอบคุณ 1097 00:47:34,408 --> 00:47:42,500 1098 00:47:42,500 --> 00:47:43,380 วิธีการของที่ให้พลังเสียง? 1099 00:47:43,380 --> 00:47:46,420 1100 00:47:46,420 --> 00:47:47,900 เสียงดีหรือไม่? . 1101 00:47:47,900 --> 00:47:49,220 ที่ดีเยี่ยม 1102 00:47:49,220 --> 00:47:50,350 ตกลง. 1103 00:47:50,350 --> 00:47:52,110 ดังนั้นทุกคนสวัสดี 1104 00:47:52,110 --> 00:47:56,540 >> ฉันจะพยายามที่จะทำงานผ่าน ตัวอย่างในทางปฏิบัติกับคุณ 1105 00:47:56,540 --> 00:48:00,850 และเรากำลังจะใช้ CS50 ของ สภาพแวดล้อมการพัฒนาสิ่งที่เรียกว่า 1106 00:48:00,850 --> 00:48:03,120 สภาพแวดล้อมการพัฒนาแบบบูรณาการ 1107 00:48:03,120 --> 00:48:05,145 และคุณได้เห็นนี้ แสดงให้เห็นในการบรรยาย 1108 00:48:05,145 --> 00:48:07,520 และในปัญหาชุดที่ 1 คุณ จะมีโอกาส 1109 00:48:07,520 --> 00:48:10,890 ที่จะใช้มันและเล่นรอบกับ มันและได้รับคุ้นเคยกับมัน 1110 00:48:10,890 --> 00:48:13,640 เพราะเรากำลังจะใช้มัน ผ่านส่วนที่เหลือของภาคการศึกษา 1111 00:48:13,640 --> 00:48:20,350 >> ดังนั้นใน IDE นี้คุณมีสิ่งที่ดู เช่นเบราเซอร์ไฟล์แบบดั้งเดิมมาก 1112 00:48:20,350 --> 00:48:21,890 มากกว่าในด้านหนึ่ง 1113 00:48:21,890 --> 00:48:24,360 คุณได้มีส่วนหนึ่งขึ้น ด้านบนที่คุณจะ 1114 00:48:24,360 --> 00:48:28,850 เพื่อดูรหัสต้นฉบับของคุณของคุณ CFile รหัสที่คุณเขียน 1115 00:48:28,850 --> 00:48:31,880 และลงด้านล่างคุณจะ มีหน้าต่าง terminal 1116 00:48:31,880 --> 00:48:36,330 ซึ่งคุณจะใช้ในการ ทั้งรวบรวมโปรแกรมของคุณ 1117 00:48:36,330 --> 00:48:39,090 และเรียกใช้หรือรันโปรแกรมของคุณ 1118 00:48:39,090 --> 00:48:40,100 ตกลง. 1119 00:48:40,100 --> 00:48:46,560 >> ดังนั้นเพียงแค่ให้เรานิด ๆ หน่อย ๆ รากฐานในหน้าต่าง terminal ที่ 1120 00:48:46,560 --> 00:48:48,930 คุณกำลังจะได้รับ ใช้ชุดของคำสั่ง 1121 00:48:48,930 --> 00:48:53,040 ที่มีคำสั่งมาตรฐานตลอด ส่วนใหญ่ของระบบ Unix หรือลินุกซ์ 1122 00:48:53,040 --> 00:48:55,890 และดังนั้นหากคุณเคยใช้ รูปแบบของ Unix, อูบุนตู 1123 00:48:55,890 --> 00:48:59,140 หรือใด ๆ ของรสชาติอื่น ๆ เหล่านี้จะไปดูที่คุ้นเคย 1124 00:48:59,140 --> 00:49:00,890 >> หากคุณไม่ได้ไม่ต้องกังวล 1125 00:49:00,890 --> 00:49:02,830 ไม่มีอะไรที่ซับซ้อนเกี่ยวกับพวกเขาเป็น 1126 00:49:02,830 --> 00:49:05,330 พวกเขาเพียงแค่ใช้ที่แตกต่างกัน ไวยากรณ์การตั้งชื่อที่แตกต่างกัน 1127 00:49:05,330 --> 00:49:07,630 การประชุมกว่าที่คุณเคยเห็นมาก่อน 1128 00:49:07,630 --> 00:49:12,190 >> เพื่อที่จะออกรายการไฟล์ ในสารบบโดยเฉพาะอย่างยิ่ง 1129 00:49:12,190 --> 00:49:15,310 พวกเขากำลังจะใช้ คำสั่งที่เรียกว่าคำสั่ง ls หรือรายการ 1130 00:49:15,310 --> 00:49:18,010 ถ้าคุณต้องการที่จะเห็นทุกอย่าง โดยมีรายละเอียดทั้งหมด 1131 00:49:18,010 --> 00:49:21,535 คุณจะใช้คำสั่ง อาร์กิวเมนต์บรรทัดคำสั่ง ls -l กับ 1132 00:49:21,535 --> 00:49:23,910 และที่จะแสดงให้คุณทุกอย่าง ในรายละเอียดมากขึ้นรวมทั้ง 1133 00:49:23,910 --> 00:49:26,270 สิทธิ์สำหรับไฟล์ 1134 00:49:26,270 --> 00:49:31,190 >> ในการเปลี่ยนไดเรกทอรี คุณจะใช้คำสั่ง cd 1135 00:49:31,190 --> 00:49:35,180 และคุณจะสามารถที่จะเปลี่ยนไดเรกทอรี ทั้งที่จะไปไดเรกทอรีบ้านของคุณ 1136 00:49:35,180 --> 00:49:38,500 นั่นเป็นเพียงแผ่นซีดีโดย ตัวเองมีสองแผ่นซีดี 1137 00:49:38,500 --> 00:49:42,930 จุดจะกลับคุณหนึ่ง ระดับไปยังไดเรกทอรีก่อนหน้าของคุณ 1138 00:49:42,930 --> 00:49:46,400 และคุณยังสามารถ cd ไป ไดเรกทอรีย่อยโดยการพิมพ์แผ่นซีดี 1139 00:49:46,400 --> 00:49:48,500 และชื่อของไดเรกทอรีย่อยว่า 1140 00:49:48,500 --> 00:49:50,540 >> นอกจากนี้คุณยังสามารถสร้างไดเรกทอรีใหม่ 1141 00:49:50,540 --> 00:49:52,790 และเรากำลังจะเดิน ผ่านทางนี้ในเวลาเพียงไม่กี่นาที 1142 00:49:52,790 --> 00:49:54,498 แต่ที่จะนำ ทุกอย่างบนหน้าจอ 1143 00:49:54,498 --> 00:49:56,310 เพื่อให้คุณสามารถเห็นพวกเขา 1144 00:49:56,310 --> 00:50:00,420 >> นอกจากนี้คุณยังจะมีความสามารถ ในการจัดการไฟล์ได้โดยตรง 1145 00:50:00,420 --> 00:50:02,100 จากบรรทัดคำสั่ง 1146 00:50:02,100 --> 00:50:06,059 คุณจะสามารถที่จะคัดลอกพวกเขาเพื่อ ย้ายหรือลบออก 1147 00:50:06,059 --> 00:50:07,600 ว่ามีที่มีประสิทธิภาพเพื่อที่จะลบ 1148 00:50:07,600 --> 00:50:10,310 1149 00:50:10,310 --> 00:50:15,350 >> IDE ที่ CS50 ช่วยให้คุณเต็ม พลังของอาร์กิวเมนต์บรรทัดคำสั่ง 1150 00:50:15,350 --> 00:50:20,280 และนั่นหมายความว่าคุณยังสามารถ ทำในสิ่งที่อันตรายอย่างยิ่ง 1151 00:50:20,280 --> 00:50:21,560 ตกลง. 1152 00:50:21,560 --> 00:50:25,010 ตัวอย่างเช่นคุณสามารถ เอาออกหรือที่เป็นลบ 1153 00:50:25,010 --> 00:50:28,750 ไฟล์โดยไม่ต้องขอ สำหรับการยืนยัน 1154 00:50:28,750 --> 00:50:31,820 และคุณยังสามารถลบ recursively-- ที่ 1155 00:50:31,820 --> 00:50:38,940 อาประ flag-- ทั้ง ไดเรกทอรีย่อยและเนื้อหาทั้งหมด 1156 00:50:38,940 --> 00:50:39,660 ตกลง. 1157 00:50:39,660 --> 00:50:42,940 พวกเขากำลังแสดงอยู่ในสีแดงเพราะคุณ ควรคิดว่า "อันตราย" ทุกครั้ง 1158 00:50:42,940 --> 00:50:45,000 คุณเห็นสิ่งเหล่านั้น 1159 00:50:45,000 --> 00:50:45,920 ตกลง. 1160 00:50:45,920 --> 00:50:46,420 ทั้งหมดขวา 1161 00:50:46,420 --> 00:50:50,090 1162 00:50:50,090 --> 00:50:53,430 >> ตอนนี้ในที่สุดสิ่งที่มี จะเป็นจริงที่มีคุณค่าให้กับคุณ 1163 00:50:53,430 --> 00:50:57,270 มีเทคนิคที่ดีไม่กี่ ที่จะรู้ว่าขณะที่คุณกำลังการนำ 1164 00:50:57,270 --> 00:50:59,190 ผ่านหน้าต่างสถานีนี้ 1165 00:50:59,190 --> 00:51:03,590 ครั้งแรกที่คุณสามารถล้างหน้าจอใน เวลาโดยเพียงแค่พิมพ์ชัดเจน 1166 00:51:03,590 --> 00:51:06,310 และคุณกำลังจะไปดู ผมทำอย่างนั้นค่อนข้างบ่อย 1167 00:51:06,310 --> 00:51:09,990 คุณยังสามารถแสดง ข้อความของไฟล์ 1168 00:51:09,990 --> 00:51:13,992 โดยการพิมพ์มากขึ้นและแล้วชื่อไฟล์ 1169 00:51:13,992 --> 00:51:17,200 แล้วคุณจะสามารถที่จะเลื่อนกลับและ ออกไปพร้อมกับที่เพียงกับสเปซบาร์ 1170 00:51:17,200 --> 00:51:19,010 และปุ่มลูกศร 1171 00:51:19,010 --> 00:51:25,450 >> หากคุณมีที่เราทำในวันนี้ในการบรรยาย โปรแกรมที่กำลังทำงานอย่างต่อเนื่อง 1172 00:51:25,450 --> 00:51:29,190 ในวง จำกัด คุณ สามารถหยุดโปรแกรมที่ 1173 00:51:29,190 --> 00:51:35,160 จากการดำเนินการโดยการพิมพ์ในการควบคุม ที่มีการถือครองลงควบคุม-C 1174 00:51:35,160 --> 00:51:38,360 และคุณอาจจะต้องทำ นี้หลายครั้ง 1175 00:51:38,360 --> 00:51:40,620 คอมพิวเตอร์ได้รับไกลไปข้างหน้าของคุณ 1176 00:51:40,620 --> 00:51:43,380 และบางครั้งคุณจำเป็นต้อง ให้มันสองสามพยายาม 1177 00:51:43,380 --> 00:51:46,280 ก่อนที่มันจะจริงจะมาถึง 1178 00:51:46,280 --> 00:51:48,760 >> นอกจากนี้คุณยังจะสามารถที่จะ จัดเรียงคำสั่ง 1179 00:51:48,760 --> 00:51:54,230 ที่คุณเพิ่งพิมพ์โดยใช้ขึ้นที่สำคัญ ปุ่มลูกศรแล้วปุ่มลูกศรลง 1180 00:51:54,230 --> 00:51:57,560 และสิ่งที่มีประโยชน์มากที่สุดแทน การพิมพ์รายชื่อไฟล์ยาว 1181 00:51:57,560 --> 00:52:02,209 คุณจะสามารถใช้แท็บไปที่ เติมคำแนะนำไม่กี่ 1182 00:52:02,209 --> 00:52:04,750 ตอนนี้เรากำลังจะแสดงให้เห็นถึง ทุกคนในเวลาเพียงสอง 1183 00:52:04,750 --> 00:52:06,780 ดังนั้นถ้าคุณจำไม่ได้ พวกเขาไม่ต้องกังวล 1184 00:52:06,780 --> 00:52:10,780 เหล่านี้เป็นสิ่งที่คุณจะ รับและใช้ในขณะที่เราไปพร้อม 1185 00:52:10,780 --> 00:52:11,470 ตกลง. 1186 00:52:11,470 --> 00:52:18,830 >> ดังนั้นใน C-- แตกต่างจากใน Scratch-- C เป็นภาษาที่รวบรวม 1187 00:52:18,830 --> 00:52:23,210 นั่นหมายความว่าเรากำลังจะใช้แหล่งที่มา file-- ที่ข้อความที่คุณเขียน 1188 00:52:23,210 --> 00:52:26,500 คำสั่งที่คุณเขียน printf () งบลูป, 1189 00:52:26,500 --> 00:52:32,580 ทุกอย่าง else-- และเรากำลังจะ ที่จะใช้แฟ้มที่และมือมันออก 1190 00:52:32,580 --> 00:52:34,670 เพื่อให้โปรแกรมที่เรียกว่าคอมไพเลอร์ 1191 00:52:34,670 --> 00:52:39,850 >> คอมไพเลอร์จะน​​ำ ข้อความที่ท่านได้เขียน 1192 00:52:39,850 --> 00:52:43,270 และแปลเป็​​น คำแนะนำไบนารี 1193 00:52:43,270 --> 00:52:46,010 ว่าคอมพิวเตอร์ของคุณ การใช้งานจริงที่เกิดขึ้น 1194 00:52:46,010 --> 00:52:49,700 ที่เรียกว่าวัตถุ หรือแฟ้มที่ปฏิบัติการ 1195 00:52:49,700 --> 00:52:55,320 ถ้าคุณดูที่ไฟล์นี้คุณจะ เพื่อดูรหัสที่คุณได้เขียน 1196 00:52:55,320 --> 00:52:59,480 ถ้าคุณดูที่ไฟล์นี้คุณจะ เพื่อดูการสุ่มลำดับของตัวอักษร 1197 00:52:59,480 --> 00:53:01,680 ที่ให้ความรู้สึกใด ๆ 1198 00:53:01,680 --> 00:53:03,250 นั่นเป็นเพราะเป็นไบนารี 1199 00:53:03,250 --> 00:53:05,560 มันไม่ได้หมายสำหรับคุณที่จะอ่าน 1200 00:53:05,560 --> 00:53:08,690 >> แต่เวลาที่คุณต้องการ ทำงานบางอย่างสิ่งที่คุณกำลังจะ 1201 00:53:08,690 --> 00:53:13,670 ที่จะมีการเรียกใช้ไฟล์วัตถุนี้ 1202 00:53:13,670 --> 00:53:19,110 ดังนั้นเมื่อเราทำงานร่วมกับเหล่านี้ ไฟล์ที่เราจะเขียนไฟล์ในซี 1203 00:53:19,110 --> 00:53:23,400 จากนั้นเราจะรวบรวมมันใช้ คำสั่งเช่นทำให้ซึ่งจะก่อให้เกิด 1204 00:53:23,400 --> 00:53:27,070 เสียงดังกราวคอมไพเลอร์สำหรับภาษา C 1205 00:53:27,070 --> 00:53:31,530 และที่จะผลิตวัตถุ ยื่นเช่นออกหรือในกรณีนี้ 1206 00:53:31,530 --> 00:53:36,580 ชื่อไฟล์ของฉันที่ฉันได้ใส่ใน 1207 00:53:36,580 --> 00:53:37,780 ทั้งหมดขวา 1208 00:53:37,780 --> 00:53:39,790 >> ดังนั้นขอจริงลองนี้ 1209 00:53:39,790 --> 00:53:42,850 ดังนั้นผมจึงมาพร้อมกับตัวอย่าง สิ่งที่ผมอยากจะลอง 1210 00:53:42,850 --> 00:53:47,380 และเป็นหนึ่งในสิ่งที่ fascinates ฉันเป็นภาพเคลื่อนไหว 1211 00:53:47,380 --> 00:53:51,010 ดังนั้นเราจะพยายามที่จะทำ นิด ๆ หน่อย ๆ ของการเคลื่อนไหว 1212 00:53:51,010 --> 00:53:53,760 โดยใช้เพียงอักขระ ASCII 1213 00:53:53,760 --> 00:53:56,470 ตัวละครที่เราสามารถพิมพ์ได้อย่างง่ายดายในขณะนี้ออกมา 1214 00:53:56,470 --> 00:54:00,890 >> ดังนั้นนี่เป็นความพยายามที่ดีที่สุดของฉัน ที่สร้างสำหรับคุณ 1215 00:54:00,890 --> 00:54:07,005 การเคลื่อนไหวของกระต่าย วิ่งผ่านหญ้าสูง 1216 00:54:07,005 --> 00:54:07,505 ที่นั่นเขาได้เป็น 1217 00:54:07,505 --> 00:54:10,150 1218 00:54:10,150 --> 00:54:10,670 ตกลง. 1219 00:54:10,670 --> 00:54:14,050 ดังนั้นเขาจึงไม่ได้ทำงาน แต่เขา ยืนอยู่ที่นั่นในหญ้าสูง 1220 00:54:14,050 --> 00:54:17,810 >> ตอนนี้ถ้าฉันเป็นภาพเคลื่อนไหวที่ ในโรงเรียนเก่า 1221 00:54:17,810 --> 00:54:20,860 รุ่นของแอนิเมชั่สิ่งที่ฉัน จะทำคือผมจะผลิต 1222 00:54:20,860 --> 00:54:23,640 ภาพของกระต่ายนี้ในสนามหญ้า 1223 00:54:23,640 --> 00:54:25,390 แล้วฉันจะผลิต picture-- อื่น 1224 00:54:25,390 --> 00:54:30,600 อีกสิ่งที่พวกเขาเรียกว่า cell-- กระต่ายได้ย้ายเพียงเล็กน้อย 1225 00:54:30,600 --> 00:54:34,870 แล้วหนึ่งในสามที่มี กระต่ายย้ายไปนิด ๆ หน่อย ๆ ต่อไป 1226 00:54:34,870 --> 00:54:40,610 >> และฉันจะผลิตทั้ง ลำดับของเซลล์เหล่านี้ 1227 00:54:40,610 --> 00:54:44,220 บางที่กระต่ายที่มีมากกว่า ลงบนด้านซ้ายมือ 1228 00:54:44,220 --> 00:54:47,050 และจากนั้นก็ย้ายช้าหนึ่ง โดยหนึ่งไปสู่​​ตรงกลาง 1229 00:54:47,050 --> 00:54:51,120 และจากตรงกลาง ไปทางด้านขวา 1230 00:54:51,120 --> 00:54:55,760 และถ้าผมแล้วจริงๆ โชคดีที่ฉันจะใส่มันเข้าด้วยกัน 1231 00:54:55,760 --> 00:54:57,970 และฉันจะมีชีวิตพวกเขา 1232 00:54:57,970 --> 00:55:00,370 และมีกระต่ายของฉัน วิ่งผ่านหญ้า 1233 00:55:00,370 --> 00:55:02,310 >> นั่นคือ PowerPoint ที่ดีของฉัน เคล็ดลับสำหรับวันที่ 1234 00:55:02,310 --> 00:55:02,809 ตกลง. 1235 00:55:02,809 --> 00:55:04,760 ดังนั้นนี่เป็นสิ่งที่ดีที่จะได้รับ 1236 00:55:04,760 --> 00:55:05,260 ตกลง. 1237 00:55:05,260 --> 00:55:08,455 ดังนั้นที่นี่อีกครั้งหนึ่งที่นี่เป็นของเรา กระต่ายวิ่งผ่านหญ้า 1238 00:55:08,455 --> 00:55:09,217 >> ลำโพง 19: อีกครั้ง 1239 00:55:09,217 --> 00:55:11,050 ไบรอัน SCASSELLATI: หนึ่ง เวลามากขึ้นสิ่งที่ถูกต้อง 1240 00:55:11,050 --> 00:55:11,940 มีกระต่ายของคุณ 1241 00:55:11,940 --> 00:55:12,940 ตกลง. 1242 00:55:12,940 --> 00:55:15,470 >> ดังนั้นวันนี้สิ่งที่เรากำลังจะไป ทำคือการที่เรากำลังจะ 1243 00:55:15,470 --> 00:55:21,110 เพื่อพยายามที่จะทำให้กระบวนการ ในการผลิตเซลล์เหล่านี้ 1244 00:55:21,110 --> 00:55:24,135 เราจะได้ค่อนข้างได้รับไปยังจุดของ ความสามารถในการทำให้พวกเขาทั้งหมดเข้าด้วยกัน 1245 00:55:24,135 --> 00:55:28,900 แต่เราจะพยายามที่จะทำให้การ กระบวนการของการสร้างลำดับนี้ 1246 00:55:28,900 --> 00:55:32,900 >> และนี่คือสิ่งที่มาก การเคลื่อนไหวในวันนี้เป็นเหมือน 1247 00:55:32,900 --> 00:55:36,690 นั่นคือคุณไม่ได้ทำในสิ่งที่จำเป็น โดยการวาดทุกอย่างด้วยมือ 1248 00:55:36,690 --> 00:55:40,610 เราใช้คอมพิวเตอร์ได้โดยอัตโนมัติ ส่วนหนึ่งของกระบวนการที่ 1249 00:55:40,610 --> 00:55:41,110 ตกลง. 1250 00:55:41,110 --> 00:55:47,720 >> เพื่อให้ฉันเปลี่ยนไป ในขณะนี้เพื่อ IDE CS50 ของเรา 1251 00:55:47,720 --> 00:55:54,260 และฉันได้สร้างขึ้นสำหรับ us-- และให้ ฉันซูมเข้าที่นี่ bit-- เล็ก ๆ น้อย ๆ ที่ฉันได้ 1252 00:55:54,260 --> 00:55:58,420 ที่สร้างขึ้นสำหรับเราที่จุดเริ่มต้น 1253 00:55:58,420 --> 00:56:03,830 >> เวลาที่เราขอให้คุณนั่งทุกคน ลงและเขียนชิ้นส่วนของรหัส 1254 00:56:03,830 --> 00:56:09,250 สิ่งที่เรากำลังจริงๆขอให้คุณทำ คือเรากำลังขอให้การแก้ปัญหา 1255 00:56:09,250 --> 00:56:11,810 และวิธีการที่คุณควร คิดเกี่ยวกับการทำที่ 1256 00:56:11,810 --> 00:56:17,900 คือโดยเริ่มต้นด้วยบางส่วน เป็นส่วนหนึ่งของการแก้ปัญหาที่ง่ายว่า 1257 00:56:17,900 --> 00:56:21,730 และจากนั้นก็สร้างออกจากส่วนที่ 1258 00:56:21,730 --> 00:56:23,400 และนั่นคือสิ่งที่เรากำลังจะทำในวันนี้ 1259 00:56:23,400 --> 00:56:27,570 >> ดังนั้นแทนที่จะพยายามทั้งหมดในครั้งเดียวที่จะ เขียนพวงทั้งหมดของรหัสที่ 1260 00:56:27,570 --> 00:56:30,770 จะผลิต 10 เซลล์ภาพเคลื่อนไหว 1261 00:56:30,770 --> 00:56:35,506 เรากำลังจะเริ่มต้นแทน ที่มีชิ้นเดียวที่ทำงาน 1262 00:56:35,506 --> 00:56:37,380 และจากนั้นเราจะสร้าง นิด ๆ หน่อย ๆ ที่อยู่รอบ ๆ 1263 00:56:37,380 --> 00:56:39,740 และน้อยมากขึ้นและน้อยมาก 1264 00:56:39,740 --> 00:56:42,550 >> ตอนนี้สิ่งที่ดีเกี่ยวกับ การแก้ปัญหาด้วยวิธีนี้ 1265 00:56:42,550 --> 00:56:46,716 ก็คือว่ามันจะช่วยให้คุณเริ่มต้น เสมอกับบางสิ่งบางอย่างที่คุณรู้ว่า 1266 00:56:46,716 --> 00:56:51,130 การทำงานและแนะนำหนึ่งในการเปลี่ยนแปลงอย่างค่อยเป็นค่อยไป 1267 00:56:51,130 --> 00:56:54,090 และนั่นเป็นวิธีที่ดี ที่จะเรียนรู้วิธีการรหัส, 1268 00:56:54,090 --> 00:56:58,590 เพราะเวลาที่คุณทำในแต่ละ การเปลี่ยนแปลงที่คุณเห็นสิ่งที่มันมีผลกระทบ 1269 00:56:58,590 --> 00:56:59,540 ตกลง. 1270 00:56:59,540 --> 00:57:01,450 >> ดังนั้นนี่คือจุดเริ่มต้นของเรา 1271 00:57:01,450 --> 00:57:01,950 ตกลง. 1272 00:57:01,950 --> 00:57:08,030 ดังนั้นที่จุดเริ่มต้นของไฟล์ของฉัน ฉันกัญชา # รวม stdio.h 1273 00:57:08,030 --> 00:57:12,560 นั่นคือเพื่อที่ฉันจะได้รับ printf () ฟังก์ชั่นการทำงาน 1274 00:57:12,560 --> 00:57:15,240 >> ฉันแล้วฉันมีฟังก์ชั่นหลักของฉัน 1275 00:57:15,240 --> 00:57:18,760 และนี่ยังคงมีลักษณะเล็ก ๆ น้อย ๆ ความลับหรือปิดบังบางส่วนของคุณ 1276 00:57:18,760 --> 00:57:20,010 มันโอเค. 1277 00:57:20,010 --> 00:57:23,190 ทั้งหมดก็บอกว่าเป็นที่ ฟังก์ชั่นหลักที่ใช้เวลา 1278 00:57:23,190 --> 00:57:27,830 ไม่มี arguments-- หมายถึงเป็นโมฆะ อะไรในซีและมัน 1279 00:57:27,830 --> 00:57:29,940 ผลตอบแทนโดยการประชุมจำนวนเต็ม 1280 00:57:29,940 --> 00:57:33,290 หลักเสมอกลับจำนวนเต็ม มักรหัสสิ่งที่บอกว่า 1281 00:57:33,290 --> 00:57:35,071 ไปได้ด้วยดีหรือไม่ดี 1282 00:57:35,071 --> 00:57:35,570 ตกลง. 1283 00:57:35,570 --> 00:57:39,110 แต่ที่สำคัญจะต้องมีที่ รูปแบบสำหรับเราตอนนี้ 1284 00:57:39,110 --> 00:57:42,080 >> ฉันได้ใส่แล้วในสามบรรทัดของรหัส 1285 00:57:42,080 --> 00:57:46,760 และพร้อมกับสายของแต่ละคน รหัสฉันได้ใส่ความเห็น 1286 00:57:46,760 --> 00:57:51,340 ตอนนี้หนึ่งในสิ่งที่ เราจะยืนยันว่าคุณทำ 1287 00:57:51,340 --> 00:57:55,320 และมันเป็นเรื่องที่มีความสำคัญดังกล่าว การเขียนโปรแกรม, 1288 00:57:55,320 --> 00:57:57,800 อยู่เสมอแสดงความคิดเห็นรหัสของคุณ 1289 00:57:57,800 --> 00:58:02,550 เคยเขียนลงใน สิ่งที่ความคิดเห็นของภาษาอังกฤษ 1290 00:58:02,550 --> 00:58:06,740 ที่คุณคิดว่า รหัสควรจะทำ 1291 00:58:06,740 --> 00:58:11,360 ด้วยวิธีการนี​​้ในภายหลังเมื่อคุณกลับมา คุณสามารถมองไปที่มันและคุณสามารถพูดได้ว่า 1292 00:58:11,360 --> 00:58:13,800 โอ้ผมจำได้ว่าสิ่งที่ฉันเป็น พยายามที่จะทำอย่างไรกับเรื่องนี้ 1293 00:58:13,800 --> 00:58:17,590 หรือเมื่อ TA นั่งลงกับคุณในการ พยายามที่จะช่วยให้คุณในเวลาทำการ 1294 00:58:17,590 --> 00:58:20,890 พวกเขาสามารถมองที่นี้และไปฉัน ดูสิ่งที่คุณกำลังพยายามที่จะทำ 1295 00:58:20,890 --> 00:58:25,630 แต่แทนที่จะนี้ สิ่งที่เกิดขึ้นจริงๆ 1296 00:58:25,630 --> 00:58:26,130 ตกลง. 1297 00:58:26,130 --> 00:58:30,300 >> ดังนั้นผมจึงได้มีสามส่วนรหัสของฉัน ฉันจะเป็นครั้งแรกของการพิมพ์ทั้งหมด 1298 00:58:30,300 --> 00:58:33,110 ออกบางจุดที่เริ่มต้น 1299 00:58:33,110 --> 00:58:37,480 จากนั้นผมก็จะพิมพ์ออกมาของฉัน กระต่ายแฟนซีมาก 1300 00:58:37,480 --> 00:58:40,600 และแล้วบิตบางส่วนของจุดที่สิ้นสุด 1301 00:58:40,600 --> 00:58:45,220 >> และทั้งสามงบพิมพ์ควร ดูคุ้นเคยกับคุณที่จุดนี้ 1302 00:58:45,220 --> 00:58:47,350 สิ่งที่ฉันทำใน แต่ละของพวกเขาเป็นฉัน 1303 00:58:47,350 --> 00:58:49,780 พิมพ์ออกลำดับของตัวอักษร 1304 00:58:49,780 --> 00:58:51,370 มีตัวแปรที่เกี่ยวข้องกับการเป็นไม่มี 1305 00:58:51,370 --> 00:58:54,320 ทุกอย่างเป็นเพียงแบน 1306 00:58:54,320 --> 00:58:55,270 ตกลง. 1307 00:58:55,270 --> 00:59:07,340 >> ดังนั้นถ้าผมลงไปในขณะนี้เพื่อ terminal-- ของฉัน ขอดูว่าฉันจะได้รับกลับ out-- 1308 00:59:07,340 --> 00:59:09,370 และฉันจะพิมพ์ที่ชัดเจนอีกครั้ง 1309 00:59:09,370 --> 00:59:12,507 >> ลำโพง 20: เราใช้ เฉือนคู่จะแสดงความคิดเห็น? 1310 00:59:12,507 --> 00:59:14,340 ไบรอัน SCASSELLATI: สามารถ ใช้ double-- ใช่ 1311 00:59:14,340 --> 00:59:16,920 มีหลายวิธีที่จะเป็น แสดงความคิดเห็นใน C. หนึ่ง 1312 00:59:16,920 --> 00:59:19,440 วิธีคือการใช้เฉือนคู่ 1313 00:59:19,440 --> 00:59:24,910 อื่น ๆ คือการใช้เฉือนและดาว แล้วปิดด้วยดาวและเฉือน 1314 00:59:24,910 --> 00:59:26,110 ทั้งหมดขวา 1315 00:59:26,110 --> 00:59:28,950 >> ครั้งแรกของทั้งหมดที่ฉันจะ เริ่มต้นการนำรอบที่นี่ 1316 00:59:28,950 --> 00:59:35,350 ดังนั้นถ้าผมไปที่ไดเรกทอรีบ้านของฉัน ฉันได้เปลี่ยนมีไดเรกทอรี 1317 00:59:35,350 --> 00:59:40,230 ฉันจะมองและดูว่ามีอะไร ในไดเรกทอรีที่สั่ง ls, ออกรายการ 1318 00:59:40,230 --> 00:59:43,230 ฉันจะเห็นว่าฉันได้ มีสองไดเรกทอรีย่อย 1319 00:59:43,230 --> 00:59:47,910 ขอให้ใหญ่กว่านี้เล็กน้อย ที่นี่เพื่อให้เราทุกคนสามารถเห็นมัน 1320 00:59:47,910 --> 00:59:50,610 >> ฉันจะเห็นว่าฉันได้ มีสองไดเรกทอรีย่อย 1321 00:59:50,610 --> 00:59:53,510 ฉันจะเปลี่ยนไดเรกทอรี ที่จะเข้าไปในพื้นที่ทำงาน 1322 00:59:53,510 --> 00:59:58,380 และฉันจะพิมพ์ออกมาเท่านั้น ส่วนหนึ่งของมันและจากนั้นเพียงแค่กดแท็บ 1323 00:59:58,380 --> 01:00:01,520 และมันจะเสร็จสมบูรณ์ส่วนที่เหลือสำหรับฉัน 1324 01:00:01,520 --> 01:00:03,370 แฟนซี 1325 01:00:03,370 --> 01:00:04,960 >> ฉันจะมองและเห็นในพื้นที่ทำงาน 1326 01:00:04,960 --> 01:00:08,431 และตอนนี้ฉันทำงาน ใน SuperSection 1327 01:00:08,431 --> 01:00:09,680 ที่เรากำลังเรียนการสอนได้ในขณะนี้ 1328 01:00:09,680 --> 01:00:10,971 ดังนั้นผมจะไปลงในไดเรกทอรีที่ 1329 01:00:10,971 --> 01:00:14,770 1330 01:00:14,770 --> 01:00:15,970 และในที่สุดก็มองและดู 1331 01:00:15,970 --> 01:00:18,480 และผมได้มี bunny.c แฟ้มที่ 1332 01:00:18,480 --> 01:00:20,980 >> สิ่งที่ถูกต้องเพื่อให้ฉันที่ชัดเจนอีกครั้ง 1333 01:00:20,980 --> 01:00:24,370 และฉันจะ now-- อีกครั้งฉัน ยังคงอยู่ในไดเรกทอรีที่ 1334 01:00:24,370 --> 01:00:27,540 และก็บอกฉันฉันอยู่ใน ว่าไดเรกทอรี SuperSection 1335 01:00:27,540 --> 01:00:30,690 ฉันจะไปข้างหน้าและ ทำให้กระต่ายโปรแกรมของฉัน 1336 01:00:30,690 --> 01:00:33,730 1337 01:00:33,730 --> 01:00:38,810 และคำสั่งที่ให้กระต่าย ในขณะที่เสียงนิด ๆ หน่อย ๆ แปลก 1338 01:00:38,810 --> 01:00:42,960 คอมไพเลอร์ยังเรียกเสียงดังกราว 1339 01:00:42,960 --> 01:00:46,470 >> และจะผลิต ผลลัพธ์ที่ฉันเป็น 1340 01:00:46,470 --> 01:00:52,130 เป็นนักการ funny-- ปฏิบัติการ แฟ้มที่ปฏิบัติการที่เรียกว่ากระต่าย 1341 01:00:52,130 --> 01:00:52,700 ตกลง. 1342 01:00:52,700 --> 01:00:56,700 ที่ฉันสามารถทำได้แล้วและเสียงนี้ ที่เลวร้ายยิ่งรันกระต่าย 1343 01:00:56,700 --> 01:00:59,360 1344 01:00:59,360 --> 01:01:00,680 ตกลง. 1345 01:01:00,680 --> 01:01:03,150 และเรามาดูสิ่งที่มันไม่ 1346 01:01:03,150 --> 01:01:04,527 ตกลง. 1347 01:01:04,527 --> 01:01:06,360 นั่นเป็นนิด ๆ หน่อย ๆ สิ่งที่ผมคาดหวังว่า 1348 01:01:06,360 --> 01:01:11,290 ฉันมีภาพกระต่ายของฉันในนั้น แต่ชนิดของฉันอยากให้มันทั้งหมดด้วยตัวเอง 1349 01:01:11,290 --> 01:01:13,186 อะไรที่ฉันคิดถึง? 1350 01:01:13,186 --> 01:01:14,478 >> ลำโพง 21: Slash ลิตรหรือเฉือน n 1351 01:01:14,478 --> 01:01:15,602 ไบรอัน SCASSELLATI: n Slash 1352 01:01:15,602 --> 01:01:16,580 ตกลง. 1353 01:01:16,580 --> 01:01:18,800 ดังนั้นขอกลับออกจากที่นี่ 1354 01:01:18,800 --> 01:01:20,330 และฉันจะได้รับจากการที่ 1355 01:01:20,330 --> 01:01:23,320 และฉันจะกลับไปเป็นคนนี้ 1356 01:01:23,320 --> 01:01:27,720 และลองมาดูตอนนี้ จากฟังก์ชั่นหลักของฉันที่นี่ 1357 01:01:27,720 --> 01:01:29,280 >> ดังนั้นสิ่งที่ฉันควรทำอย่างไร? 1358 01:01:29,280 --> 01:01:30,465 ผมต้องการที่จะจบบรรทัด 1359 01:01:30,465 --> 01:01:34,020 1360 01:01:34,020 --> 01:01:35,800 ดังนั้นผมจะใส่ในการแสดงความคิดเห็น 1361 01:01:35,800 --> 01:01:38,430 ฉันจะใส่ใน printf (ที่) 1362 01:01:38,430 --> 01:01:41,350 และสิ่งที่ฉันจะต้องใส่อะไรบ้าง? 1363 01:01:41,350 --> 01:01:41,890 / n 1364 01:01:41,890 --> 01:01:43,480 ตกลง. 1365 01:01:43,480 --> 01:01:46,040 ฉันจะทำอะไรต้องจบมันด้วย? 1366 01:01:46,040 --> 01:01:47,100 อัฒภาค 1367 01:01:47,100 --> 01:01:48,730 ทั้งหมดขวา 1368 01:01:48,730 --> 01:01:52,880 >> ตอนนี้หนึ่งในจริงๆ สิ่งที่สำคัญคือการให้แน่ใจว่า 1369 01:01:52,880 --> 01:01:56,720 เวลาที่คุณทำการเปลี่ยนแปลงทุก ในรหัสของคุณที่คุณบันทึกไว้ 1370 01:01:56,720 --> 01:02:01,380 หากคุณยังไม่ได้บันทึกรหัสของคุณคุณ จะสังเกตเห็นดาวเล็ก ๆ น้อย ๆ ไปอยู่ที่นั่น 1371 01:02:01,380 --> 01:02:03,420 และดาราที่บอกว่าคุณ ยังไม่ได้บันทึกรหัสนี้ 1372 01:02:03,420 --> 01:02:07,790 >> ถ้าผมรวบรวมได้ในขณะนี้ก็ไม่ได้ จะสะท้อนให้เห็นถึงการเปลี่ยนแปลงใด ๆ ของเหล่านั้น 1373 01:02:07,790 --> 01:02:11,680 เพราะคอมไพเลอร์มีลักษณะที่ไฟล์ ที่อยู่บนดิสก์ที่ไม่ไฟล์ที่ 1374 01:02:11,680 --> 01:02:13,790 เปิดในการแก้ไขของคุณ 1375 01:02:13,790 --> 01:02:14,290 ทั้งหมดขวา 1376 01:02:14,290 --> 01:02:20,830 >> ดังนั้นขอบันทึกไว้แล้วเราจะไป ขวาบนลงที่นี่กลับมาออก 1377 01:02:20,830 --> 01:02:24,670 ลงมาไปยังสถานีของฉัน 1378 01:02:24,670 --> 01:02:27,193 และให้ล้างพื้นที่อีกครั้ง 1379 01:02:27,193 --> 01:02:30,690 1380 01:02:30,690 --> 01:02:35,760 >> และเราสามารถไปข้างหน้าและอีกหนึ่ง เวลาให้โปรแกรมกระต่ายของเรา 1381 01:02:35,760 --> 01:02:40,180 และดำเนินกระต่าย 1382 01:02:40,180 --> 01:02:42,500 ที่ไม่ได้ทำงานอย่างใดอย่างหนึ่ง 1383 01:02:42,500 --> 01:02:43,950 เฉือนผิด 1384 01:02:43,950 --> 01:02:52,280 ดังนั้นถ้าคุณมองไปที่สิ่งที่ฉันเป็นที่ฉันใส่ / n ในมี แต่ฉันมีเฉือนที่ไม่ถูกต้อง 1385 01:02:52,280 --> 01:02:56,190 >> ทุกอย่างที่เครื่องคอมพิวเตอร์ของคุณ ไม่เป็นที่ชัดเจนมาก 1386 01:02:56,190 --> 01:02:57,230 ตกลง? 1387 01:02:57,230 --> 01:03:01,250 หนึ่งในความผิดพลาดเล็ก ๆ น้อย ๆ ของเครื่องหมายวรรคตอนและ ทันทีที่คุณไม่ได้รับสิ่งที่คุณต้องการ 1388 01:03:01,250 --> 01:03:01,750 ทั้งหมดขวา 1389 01:03:01,750 --> 01:03:03,740 ดังนั้นขอขยายกลับออกมาอีกครั้ง 1390 01:03:03,740 --> 01:03:04,410 เราจะกลับไป 1391 01:03:04,410 --> 01:03:07,930 ดีที่ทำให้การซ่อมแซมอย่างรวดเร็วมาก 1392 01:03:07,930 --> 01:03:09,270 เราจะใส่ทับขวา 1393 01:03:09,270 --> 01:03:10,570 เราจะบันทึกไว้ 1394 01:03:10,570 --> 01:03:13,410 เราจะกลับมาอยู่ในซูม 1395 01:03:13,410 --> 01:03:16,730 >> ด้วยเหตุผลบางอย่างที่ไม่ได้ มีความสุข แต่ขอไปข้างหน้า 1396 01:03:16,730 --> 01:03:19,850 และเราจะกลับไปยังสถานีที่นี่ 1397 01:03:19,850 --> 01:03:22,940 ชัดเจนขึ้น 1398 01:03:22,940 --> 01:03:24,880 เราจะซูมเข้า 1399 01:03:24,880 --> 01:03:28,410 และอีกครั้งหนึ่งเราจะทำให้กระต่าย 1400 01:03:28,410 --> 01:03:32,360 และตอนนี้นั่นเองค่ะก็ทำงาน 1401 01:03:32,360 --> 01:03:33,240 ไชโย 1402 01:03:33,240 --> 01:03:34,300 ตกลง. 1403 01:03:34,300 --> 01:03:39,580 >> ถ้าอย่างนั้นเราพยายามที่จะทำให้เรื่องนี้ เล็ก ๆ น้อย ๆ ทั่วไปมากขึ้น 1404 01:03:39,580 --> 01:03:46,750 ลองมาดูว่าแทนเพียง พิมพ์กรอบหนึ่งโดยเฉพาะอย่างยิ่ง 1405 01:03:46,750 --> 01:03:49,610 ลองดูว่าเราสามารถทำให้เรื่องนี้ เพื่อที่เราจะได้รับทั้งหมด 10 1406 01:03:49,610 --> 01:03:52,960 ของเฟรมภาพเคลื่อนไหวเหล่านั้น ว่าเราต้องการที่จะมี 1407 01:03:52,960 --> 01:03:56,550 ดังนั้นอีกครั้งลอง ขั้นตอนนี้ในเวลา 1408 01:03:56,550 --> 01:03:59,900 >> Let 's แรกคุยมันไม่ได้ เพื่อที่ฉันจะทำเฟรมทั้งหมด 1409 01:03:59,900 --> 01:04:03,990 แต่เพื่อให้ฉันทำอย่างใดอย่างหนึ่ง กรอบที่ฉันอาจต้องการ 1410 01:04:03,990 --> 01:04:05,920 ดังนั้นสิ่งที่แตกต่าง ระหว่างเฟรมหรือไม่ 1411 01:04:05,920 --> 01:04:07,377 เป็นกระต่ายเหมือนกันหรือไม่ 1412 01:04:07,377 --> 01:04:07,960 ผู้ชม: ใช่ 1413 01:04:07,960 --> 01:04:08,390 ไบรอัน SCASSELLATI: ใช่ 1414 01:04:08,390 --> 01:04:09,370 สิ่งที่แตกต่างกันคือ 1415 01:04:09,370 --> 01:04:10,246 >> ผู้ชม: ตำแหน่ง 1416 01:04:10,246 --> 01:04:11,870 ไบรอัน SCASSELLATI: ตำแหน่งใช่มั้ย? 1417 01:04:11,870 --> 01:04:15,590 และวิธีการที่ฉันจะควบคุมตำแหน่งของตนหรือไม่ 1418 01:04:15,590 --> 01:04:17,340 วิธีการหลายจุดฉัน วางที่จุดเริ่มต้น 1419 01:04:17,340 --> 01:04:19,048 และวิธีการหลายจุดฉัน วางที่สิ้นสุด 1420 01:04:19,048 --> 01:04:21,970 ดังนั้นผมจึงมีห้าที่ จุดเริ่มต้นที่ห้าในตอนท้าย 1421 01:04:21,970 --> 01:04:28,320 >> ลองเปลี่ยนที่ห้าที่มีการห่วง 1422 01:04:28,320 --> 01:04:29,380 ตกลง. 1423 01:04:29,380 --> 01:04:32,330 และฉันจะสร้างสำหรับ ห่วงในขณะนี้ที่จะต้องพูด 1424 01:04:32,330 --> 01:04:37,800 ฉันจะพิมพ์ตัวเลขบางอย่าง ของจุดที่จุดเริ่มต้น 1425 01:04:37,800 --> 01:04:39,600 ฉันจะใช้ตัวแปร 1426 01:04:39,600 --> 01:04:44,150 สมมติว่าวิธีการเกี่ยวกับที่ฉันเป็น เคาน์เตอร์ในวงของฉัน 1427 01:04:44,150 --> 01:04:47,200 และฉันจะประกาศขึ้นด้านบน 1428 01:04:47,200 --> 01:04:49,360 >> และจากนั้นในการห่วง ฉันต้องทำสามสิ่ง 1429 01:04:49,360 --> 01:04:52,340 สิ่งแรกที่ผมต้องทำ คือผมจำเป็นที่จะต้องเริ่มต้นที่ฉัน 1430 01:04:52,340 --> 01:04:56,570 สิ่งที่ฉันควรเริ่มต้น มันเริ่มต้นที่จะเป็นอย่างไร 1431 01:04:56,570 --> 01:04:57,160 0 1432 01:04:57,160 --> 01:04:58,310 ตกลง. 1433 01:04:58,310 --> 01:05:00,950 >> จากนั้นผมจำเป็นต้องพูดอะไร เงื่อนไขการเลิกจ้างหรือไม่ 1434 01:05:00,950 --> 01:05:03,020 เมื่อฉันควรหยุด? 1435 01:05:03,020 --> 01:05:05,983 ดีวิธีการหลายจุดที่คุณทำ ต้องการพิมพ์ในนี้? 1436 01:05:05,983 --> 01:05:06,921 >> ผู้ชม: ห้า 1437 01:05:06,921 --> 01:05:08,170 ไบรอัน SCASSELLATI: ห้าอีกครั้งหรือไม่ 1438 01:05:08,170 --> 01:05:10,650 วิธีการเกี่ยวกับขอทำบางสิ่งบางอย่าง ที่แตกต่างกันที่เราทำห้า 1439 01:05:10,650 --> 01:05:12,584 ขอแสดงให้เห็นว่ามันแตกต่างกัน 1440 01:05:12,584 --> 01:05:13,250 ลำโพง 22: สอง 1441 01:05:13,250 --> 01:05:13,580 ไบรอัน SCASSELLATI: สอง 1442 01:05:13,580 --> 01:05:14,080 ตกลง. 1443 01:05:14,080 --> 01:05:17,760 ดังนั้นถ้าผมต้องการที่สองจุด สิ่งที่ฉันควรใส่ที่นี่? 1444 01:05:17,760 --> 01:05:19,140 >> ผู้ชม: สาม 1445 01:05:19,140 --> 01:05:20,530 >> ไบรอัน SCASSELLATI: สาม 1446 01:05:20,530 --> 01:05:21,400 ตกลง. 1447 01:05:21,400 --> 01:05:24,220 กี่ครั้งก็คือ จะไปผ่าน? 1448 01:05:24,220 --> 01:05:28,469 ที่จะไปผ่าน สามครั้ง, 0, 1, 2, ขวา? 1449 01:05:28,469 --> 01:05:30,010 สิทธิทั้งหมดให้กลับลงไปสอง 1450 01:05:30,010 --> 01:05:31,570 ตอนนี้เราจะได้รับจุดสองจุด 1451 01:05:31,570 --> 01:05:35,800 และสิ่งที่ฉันต้องการที่จะทำในแต่ละ ทุกครั้งที่ผมไปผ่านห่วง? 1452 01:05:35,800 --> 01:05:38,657 สิ่งที่มีการเปลี่ยนแปลง ทุกครั้งที่ผมไปผ่าน? 1453 01:05:38,657 --> 01:05:39,850 >> ลำโพง 23: เพิ่มจุด 1454 01:05:39,850 --> 01:05:41,020 >> ไบรอัน SCASSELLATI: ฉันมีให้ไป 1455 01:05:41,020 --> 01:05:41,978 ฉันจะเพิ่มจุด 1456 01:05:41,978 --> 01:05:45,310 ฉันจะพิมพ์จุด, ในแต่ละครั้งที่ผ่านห่วง 1457 01:05:45,310 --> 01:05:49,990 แต่วิธีการที่ฉันติดตามของวิธีการ หลายครั้งที่ฉันได้รับผ่านห่วง? 1458 01:05:49,990 --> 01:05:53,260 ผมใช้ผมว่า ตัวแปรที่เคาน์เตอร์ 1459 01:05:53,260 --> 01:05:57,110 >> ดังนั้นทุกครั้งที่ผ่านฉันจะ เพื่อเพิ่มเคาน์เตอร์โดยหนึ่ง 1460 01:05:57,110 --> 01:06:00,670 ตอนนี้ที่เหมือนกันสำหรับ ฉันเป็นว่า i = i + 1 1461 01:06:00,670 --> 01:06:01,210 มันโอเค. 1462 01:06:01,210 --> 01:06:04,653 ฉันจะทำมัน that-- ผมชอบ ชวเลขดังนั้นฉันจะบอกว่าฉัน ++ 1463 01:06:04,653 --> 01:06:07,190 1464 01:06:07,190 --> 01:06:08,370 ตกลง. 1465 01:06:08,370 --> 01:06:10,680 >> ลองทำสิ่งเดียวกัน ลงที่นี่ที่ด้านล่าง 1466 01:06:10,680 --> 01:06:11,846 เฉพาะชนิดของฉันไม่ว่าอย่างใดอย่างหนึ่ง 1467 01:06:11,846 --> 01:06:13,990 ฉันจะให้พวกคุณ อย่างใดอย่างหนึ่งนี้อย่างสมบูรณ์ 1468 01:06:13,990 --> 01:06:14,260 ทั้งหมดขวา 1469 01:06:14,260 --> 01:06:15,426 >> ดังนั้นสิ่งที่ฉันควรจะเขียนที่นี่? 1470 01:06:15,426 --> 01:06:17,170 นี่ฉันเป็นห่วง 1471 01:06:17,170 --> 01:06:23,162 ฉันจะทำ printf () และฉันจะ ที่จะทำให้มันเพื่อที่ฉันพิมพ์เฉพาะจุดหนึ่งจุด 1472 01:06:23,162 --> 01:06:25,740 ที่อยู่ด้านล่าง 1473 01:06:25,740 --> 01:06:27,740 >> สิ่งที่ฉันควรจะเขียน ภายในวงนี้ได้ตอนนี้หรือไม่ 1474 01:06:27,740 --> 01:06:30,897 1475 01:06:30,897 --> 01:06:33,948 ดีแรกของทุกสิ่ง ตัวแปรที่ฉันควรใช้? 1476 01:06:33,948 --> 01:06:35,430 >> ลำโพง 24: เจ 1477 01:06:35,430 --> 01:06:36,880 >> ไบรอัน SCASSELLATI: ฉันสามารถใช้เจ 1478 01:06:36,880 --> 01:06:38,040 ฉันสามารถใช้หนึ่งเดียวกันได้หรือไม่ 1479 01:06:38,040 --> 01:06:39,961 ฉันสามารถใช้ผมอีกครั้งหรือไม่ 1480 01:06:39,961 --> 01:06:40,460 ใช่ 1481 01:06:40,460 --> 01:06:45,531 ที่ตกลงเพราะคือ ที่ฉันใช้ขึ้นที่นี่ 1482 01:06:45,531 --> 01:06:47,780 ฉันไม่ต้องการพวกเขาอีกครั้งเมื่อ ฉันจะได้รับลงไปที่จุดนี้ 1483 01:06:47,780 --> 01:06:52,240 1484 01:06:52,240 --> 01:06:53,790 >> ดังนั้นสิ่งที่ผมควรจะเริ่มต้น i เพื่อ? 1485 01:06:53,790 --> 01:06:56,675 1486 01:06:56,675 --> 01:06:57,300 ลำโพง 25: 10 1487 01:06:57,300 --> 01:06:58,567 ไบรอัน SCASSELLATI: 0 1488 01:06:58,567 --> 01:06:59,400 สิ่งที่ฉันควรตรวจสอบ? 1489 01:06:59,400 --> 01:07:02,960 วิธีการหลายจุดที่ฉันต้องการตอนนี้ในตอนท้าย ถ้าฉันมีสองจุดที่จุดเริ่มต้น? 1490 01:07:02,960 --> 01:07:05,820 1491 01:07:05,820 --> 01:07:09,165 ฉันจำเป็นต้องแปดที่สิ้นสุดดังนั้นสิ่งที่ ฉันควรจะตรวจสอบผมน้อย than-- 1492 01:07:09,165 --> 01:07:12,645 >> ผู้ชม: เจ็ดแปดเก้า 1493 01:07:12,645 --> 01:07:14,020 ไบรอัน SCASSELLATI: ผมได้ยินเจ็ด 1494 01:07:14,020 --> 01:07:14,810 ผมได้ยินแปด 1495 01:07:14,810 --> 01:07:15,970 และข้าพเจ้าได้ยินเก้า 1496 01:07:15,970 --> 01:07:16,470 ตกลง. 1497 01:07:16,470 --> 01:07:19,540 ดังนั้นพวกเราทุกคนในที่เหมาะสม ball-- เจสันกล่าวว่า 10 1498 01:07:19,540 --> 01:07:21,550 ตกลง. 1499 01:07:21,550 --> 01:07:25,920 >> ถ้าผมจำเป็นต้องมีจุดสองจุดสำหรับ คนแรกที่หลายวิธีที่จะทำ 1500 01:07:25,920 --> 01:07:30,170 I-- และฉันต้องการแปดจุดสำหรับ ล่าสุด one-- ฉันใส่สองถึงข้างต้น 1501 01:07:30,170 --> 01:07:31,743 สิ่งที่ฉันควรใส่ลงมาด้านล่าง? 1502 01:07:31,743 --> 01:07:32,570 >> ผู้ชม: แปด 1503 01:07:32,570 --> 01:07:33,611 >> ไบรอัน SCASSELLATI: แปด 1504 01:07:33,611 --> 01:07:35,695 เพราะเห็นว่าเป็นไปได้ นับเป็นศูนย์เจ็ด 1505 01:07:35,695 --> 01:07:38,490 และที่แปดครั้งผ่านห่วง 1506 01:07:38,490 --> 01:07:38,990 ตกลง. 1507 01:07:38,990 --> 01:07:41,774 และสิ่งที่ฉันต้องทำในตอนท้าย? 1508 01:07:41,774 --> 01:07:42,670 >> ผู้ชม: ฉัน ++ 1509 01:07:42,670 --> 01:07:44,400 >> ไบรอัน SCASSELLATI: ฉัน ++ 1510 01:07:44,400 --> 01:07:45,440 ทั้งหมดขวา 1511 01:07:45,440 --> 01:07:48,260 เพื่อให้มองที่ดีงามมี 1512 01:07:48,260 --> 01:07:50,620 ลองมันและเรามาดูสิ่งที่มันไม่ 1513 01:07:50,620 --> 01:07:51,450 ตกลง. 1514 01:07:51,450 --> 01:07:53,770 ดังนั้นเราจึงกำลังจะบันทึกไว้ 1515 01:07:53,770 --> 01:07:54,940 ที่ดีและที่บันทึกไว้ 1516 01:07:54,940 --> 01:07:56,910 >> เราจะขยายกลับ 1517 01:07:56,910 --> 01:07:58,220 เราจะพยายามที่นี่ใน terminal 1518 01:07:58,220 --> 01:08:01,440 1519 01:08:01,440 --> 01:08:02,970 เราจะซูมเข้า 1520 01:08:02,970 --> 01:08:05,416 โอ๊ะ 1521 01:08:05,416 --> 01:08:09,990 เราจะ, อีกครั้งหนึ่ง ทำให้โปรแกรมกระต่ายของเรา 1522 01:08:09,990 --> 01:08:14,460 และไปข้างหน้าและดำเนินกระต่าย 1523 01:08:14,460 --> 01:08:15,980 และมีมันเป็น 1524 01:08:15,980 --> 01:08:17,710 >> เพื่อให้มีกระต่ายของเรา 1525 01:08:17,710 --> 01:08:25,130 ที่มันมีสองจุดที่จุดเริ่มต้น แปดจุดออกมาในตอนท้าย 1526 01:08:25,130 --> 01:08:27,540 ทุกคนยังคงอยู่กับผมหรือเปล่า 1527 01:08:27,540 --> 01:08:28,770 ตกลง. 1528 01:08:28,770 --> 01:08:29,580 >> ดังนั้นเราสร้างมันขึ้นมา 1529 01:08:29,580 --> 01:08:33,000 เราสร้างหนึ่งกระต่าย กรอบหนึ่งโดยเฉพาะ 1530 01:08:33,000 --> 01:08:36,229 ตอนนี้เราได้รับสามารถที่จะ คุยว่าจะสร้าง 1531 01:08:36,229 --> 01:08:38,390 เพิ่มเติมที่แตกต่างกันของเฟรม 1532 01:08:38,390 --> 01:08:42,399 >> ตอนนี้ขอไปข้างหน้าและมีการ มันสร้างไม่ได้เป็นเพียงหนึ่งในกรอบ 1533 01:08:42,399 --> 01:08:46,290 แต่ขอสร้าง 10 เฟรมที่เราช้า 1534 01:08:46,290 --> 01:08:50,569 ทำให้กระต่ายย้ายทั้งหมด วิธีที่ทั่วสนาม 1535 01:08:50,569 --> 01:08:51,430 ทั้งหมดขวา 1536 01:08:51,430 --> 01:08:53,660 >> กลับกันเถอะ. 1537 01:08:53,660 --> 01:08:54,839 และเราจะพยายามในขณะนี้ 1538 01:08:54,839 --> 01:09:00,680 1539 01:09:00,680 --> 01:09:02,830 ดังนั้นสิ่งที่ผมจำเป็นต้องเปลี่ยนที่นี่? 1540 01:09:02,830 --> 01:09:06,139 1541 01:09:06,139 --> 01:09:07,180 ฉันจะทำอะไรต้องเปลี่ยน? 1542 01:09:07,180 --> 01:09:10,638 >> ลำโพง 26: ก่อนอื่นคุณต้อง เปลี่ยนจำนวนสูงสุดจุด 1543 01:09:10,638 --> 01:09:11,626 ที่จุดเริ่มต้น 1544 01:09:11,626 --> 01:09:16,850 เพราะถ้าเรากำลังทำอยู่ 10 จุด ก็จะต้องขึ้นอยู่กับขนาด 1545 01:09:16,850 --> 01:09:17,850 ไบรอัน SCASSELLATI: ใช่ 1546 01:09:17,850 --> 01:09:23,760 ดังนั้นตอนนี้ฉันมีมันเรียงลำดับของการเดินสาย ที่มักจะทำสองจุดที่จุดเริ่มต้น 1547 01:09:23,760 --> 01:09:27,890 และมักจะทำแปดจุดที่สิ้นสุด 1548 01:09:27,890 --> 01:09:30,660 >> ฉันต้องการที่จะสร้างห่วงอีกใช่มั้ย? 1549 01:09:30,660 --> 01:09:33,290 เพราะผมไม่ต้องการที่จะ สร้างเพียงหนึ่งภาพกระต่าย 1550 01:09:33,290 --> 01:09:37,140 ฉันต้องการที่จะสร้าง 10 ภาพกระต่าย 1551 01:09:37,140 --> 01:09:41,500 ดังนั้นผมจึงจำเป็นต้องสร้างห่วงอีก และในขณะที่ฉันไปถึงห่วงว่า 1552 01:09:41,500 --> 01:09:44,660 ฉันต้องการที่จะเปลี่ยนวิธีการหลาย ๆ จุดที่ผมพิมพ์ที่จุดเริ่มต้น 1553 01:09:44,660 --> 01:09:50,529 และวิธีการหลายจุดที่ผมพิมพ์ในตอนท้าย ตามที่วงจรผ่านห่วง 1554 01:09:50,529 --> 01:09:52,270 ผมอยู่ใน 1555 01:09:52,270 --> 01:09:52,770 ทั้งหมดขวา 1556 01:09:52,770 --> 01:09:54,430 >> จึงขอได้ที่เคาน์เตอร์อื่น 1557 01:09:54,430 --> 01:09:58,142 ใครบางคนก่อนที่จะกล่าวว่าเจ ดังนั้นเราจะทำให้เจอีก 1558 01:09:58,142 --> 01:10:00,100 และตอนนี้เรากำลังจะไป สร้างอีกสำหรับวง 1559 01:10:00,100 --> 01:10:02,650 1560 01:10:02,650 --> 01:10:06,200 >> สิ่งที่จะไปภายในวงที่? 1561 01:10:06,200 --> 01:10:09,060 สิ่งนี้ได้ไป ภายในวงใช่มั้ย? 1562 01:10:09,060 --> 01:10:11,190 กระต่ายไม่ได้ จะไปภายในวง? 1563 01:10:11,190 --> 01:10:13,390 ฉันจะต้องกระต่ายใน แต่ละคน 10 เฟรม? 1564 01:10:13,390 --> 01:10:14,099 >> ผู้ชม: เอ่อ-ฮะ 1565 01:10:14,099 --> 01:10:15,098 ไบรอัน SCASSELLATI: ใช่ 1566 01:10:15,098 --> 01:10:17,250 ฉันต้องการกระต่ายในแต่ละ ใน 10 เฟรมใช่มั้ย? 1567 01:10:17,250 --> 01:10:20,531 วิธีการเกี่ยวกับจุดที่ ท้ายที่สุดฉันจะต้องที่? 1568 01:10:20,531 --> 01:10:21,030 ตกลง. 1569 01:10:21,030 --> 01:10:22,550 >> ดังนั้นฉันจะเยื้องทั้งหมดของพวกเขา 1570 01:10:22,550 --> 01:10:25,110 ฉันจะเน้นทั้งหมดของ นี้และฉันจะกด Tab 1571 01:10:25,110 --> 01:10:28,590 และที่จะผลักดันพวกเขาไปทั่ว นิด ๆ หน่อย ๆ เพื่อให้มันเป็นเรื่องง่ายสำหรับผม 1572 01:10:28,590 --> 01:10:32,010 เพื่อดูว่ามีอะไรในวง 1573 01:10:32,010 --> 01:10:33,710 แล้วฉันจะจบมัน 1574 01:10:33,710 --> 01:10:35,850 สมมติว่า 1575 01:10:35,850 --> 01:10:36,430 ตกลง? 1576 01:10:36,430 --> 01:10:39,230 >> ตอนนี้ในวงนี้ว่า ฉัน building-- ขออภัย, 1577 01:10:39,230 --> 01:10:43,810 ให้ที่เพื่อให้คุณสามารถ see-- ฉันมีเจเคาน์เตอร์ของฉัน 1578 01:10:43,810 --> 01:10:45,630 ฉันจะเริ่มต้นที่ 0 1579 01:10:45,630 --> 01:10:47,829 กี่ครั้งที่ฉันต้องการ ที่จะไปผ่านวงนี้หรือไม่? 1580 01:10:47,829 --> 01:10:48,620 ผู้ชม: 10 ครั้ง 1581 01:10:48,620 --> 01:10:49,786 ไบรอัน SCASSELLATI: 10 ครั้ง 1582 01:10:49,786 --> 01:10:51,402 ดังนั้นสิ่งที่จำนวนฉันควรใส่ที่นี่? 1583 01:10:51,402 --> 01:10:52,880 >> ผู้ชม: 9, 10 1584 01:10:52,880 --> 01:10:55,600 >> ไบรอัน SCASSELLATI: 9, 10, ใครบางคนที่มีการกล่าวว่า 11 ใช่มั้ย? 1585 01:10:55,600 --> 01:10:58,190 1586 01:10:58,190 --> 01:11:01,585 ผมอยากที่สองก่อนที่จะจุด และทำให้ฉันน้อยกว่า 2 1587 01:11:01,585 --> 01:11:03,810 ผมอยากแปดจุด ฉันใส่ฉันน้อยกว่า 8 1588 01:11:03,810 --> 01:11:06,950 ตอนนี้ผมต้องการที่จะไปผ่าน 10 ครั้งดังนั้นฉันใส่เจ than-- น้อย 1589 01:11:06,950 --> 01:11:07,590 >> ผู้ชม: 10 1590 01:11:07,590 --> 01:11:08,610 >> ไบรอัน SCASSELLATI: 10 1591 01:11:08,610 --> 01:11:10,150 เราจะไปที่นั่น. 1592 01:11:10,150 --> 01:11:13,360 และสิ่งที่ฉันจะทำในตอนท้ายจะญหรือไม่ 1593 01:11:13,360 --> 01:11:15,310 ++ เพิ่มมัน 1594 01:11:15,310 --> 01:11:16,230 ตกลง. 1595 01:11:16,230 --> 01:11:21,500 ตอนนี้ที่นี่เป็นส่วนหนึ่งหากินอะไร ที่จะเกิดขึ้นในขณะนี้ถ้าผมทำเช่นนี้? 1596 01:11:21,500 --> 01:11:24,537 ฉันกำลังจะพิมพ์ 10 เฟรม? 1597 01:11:24,537 --> 01:11:26,370 ลำโพง 27: ผมคิดว่า พวกเขาทั้งหมดจะเป็นแบบเดียวกัน 1598 01:11:26,370 --> 01:11:28,453 ไบรอัน SCASSELLATI: พวกเขาจะ ทั้งหมดจะเหมือนกันใช่มั้ย? 1599 01:11:28,453 --> 01:11:31,750 เพราะทั้งหมดของพวกเขาจะยังคง ที่จะนำจุดสองจุดที่จุดเริ่มต้น 1600 01:11:31,750 --> 01:11:34,162 แต่ผมไม่ต้องการให้พวกเขาทุกคน มีสองจุดเริ่มต้น 1601 01:11:34,162 --> 01:11:35,870 วิธีการหลายจุดฉัน ต้องการที่จุดเริ่มต้น? 1602 01:11:35,870 --> 01:11:39,097 1603 01:11:39,097 --> 01:11:40,020 >> ผู้ชม: การเปลี่ยน 1604 01:11:40,020 --> 01:11:42,840 >> ไบรอัน SCASSELLATI: ฉัน อยากให้มันเปลี่ยนใช่มั้ย? 1605 01:11:42,840 --> 01:11:46,588 ดังนั้นสิ่งที่ฉันมีที่นี่ที่เปลี่ยนแปลง ในแต่ละครั้งที่วงไปผ่าน? 1606 01:11:46,588 --> 01:11:48,242 >> ผู้ชม: จำนวนจุดญ 1607 01:11:48,242 --> 01:11:49,950 ไบรอัน SCASSELLATI: เจ จำนวนจุด 1608 01:11:49,950 --> 01:11:54,782 ดังนั้นผมจึงสามารถเปลี่ยนนี้จะเป็นเจ 1609 01:11:54,782 --> 01:11:59,190 ครั้งแรกที่ผ่าน ห่วงสิ่งที่ว่าจะเป็นอย่างไร 1610 01:11:59,190 --> 01:12:01,700 ฉันจะทำอะไรที่จะตั้งเจครั้งแรก? 1611 01:12:01,700 --> 01:12:02,420 >> ผู้ชม: 0 1612 01:12:02,420 --> 01:12:05,700 >> ไบรอัน SCASSELLATI: ดังนั้นวิธีที่หลาย ๆ เวลาที่ฉันจะทำเช่นนี้? 1613 01:12:05,700 --> 01:12:06,750 0 1614 01:12:06,750 --> 01:12:11,750 ครั้งที่สองผ่านห่วงเจของ จะเป็น 1 เพราะผมมันเพิ่มขึ้น 1615 01:12:11,750 --> 01:12:14,180 วิธีการหลายจุดที่ฉันจะพิมพ์? 1616 01:12:14,180 --> 01:12:15,100 1 1617 01:12:15,100 --> 01:12:19,904 ครั้งที่สามผ่านห่วง วิธีการหลายจุดที่ฉันจะพิมพ์? 1618 01:12:19,904 --> 01:12:20,587 >> ผู้ชม: สาม 1619 01:12:20,587 --> 01:12:22,170 ไบรอัน SCASSELLATI: เจเป็นไปได้ที่ 3 1620 01:12:22,170 --> 01:12:24,890 วิธีการหลายจุดที่ฉันจะพิมพ์? 1621 01:12:24,890 --> 01:12:26,817 โอ้ขอโทษเจจะเป็น 2 1622 01:12:26,817 --> 01:12:28,233 วิธีการหลายจุดที่ฉันจะพิมพ์? 1623 01:12:28,233 --> 01:12:28,980 >> ผู้ชม: 2 1624 01:12:28,980 --> 01:12:29,855 >> ไบรอัน SCASSELLATI: 2 1625 01:12:29,855 --> 01:12:32,460 ตกลงดังนั้นฉันจะให้ การเพิ่มว่าในขณะที่เราไปพร้อม 1626 01:12:32,460 --> 01:12:33,460 วิธีการเกี่ยวกับลงมาด้านล่าง? 1627 01:12:33,460 --> 01:12:34,310 สิ่งที่จะไปลงที่นี่? 1628 01:12:34,310 --> 01:12:38,080 ฉันไม่ต้องการที่ 8 เสมอ ในตอนท้ายอีกต่อไปหรือไม่ 1629 01:12:38,080 --> 01:12:39,269 >> ลำโพง 28: 10 1630 01:12:39,269 --> 01:12:40,685 ไบรอัน SCASSELLATI: ฉันต้องการ 10 จุด? 1631 01:12:40,685 --> 01:12:43,440 1632 01:12:43,440 --> 01:12:44,620 ฉันต้องการที่จะเปลี่ยนแปลงมากเกินไป 1633 01:12:44,620 --> 01:12:47,469 ดังนั้นวิธีที่ฉันต้องการจะเปลี่ยน? 1634 01:12:47,469 --> 01:12:49,167 >> ผู้ชม: [ไม่ได้ยิน] 1635 01:12:49,167 --> 01:12:51,750 ไบรอัน SCASSELLATI: ดีถ้าฉัน มีห้าจุดที่จุดเริ่มต้น 1636 01:12:51,750 --> 01:12:53,293 วิธีการหลายจุดของฉันจะได้รับในตอนท้าย? 1637 01:12:53,293 --> 01:12:54,020 >> ผู้ชม: ห้า 1638 01:12:54,020 --> 01:12:55,630 >> ไบรอัน SCASSELLATI: ถ้าฉันมี หกจุดที่จุดเริ่มต้น 1639 01:12:55,630 --> 01:12:56,875 หลายวิธีที่ฉันจะได้รับในตอนท้าย? 1640 01:12:56,875 --> 01:12:57,500 ผู้ชม: สี่ 1641 01:12:57,500 --> 01:12:58,950 ไบรอัน SCASSELLATI: ถ้าผมได้ เจ็ดจุดที่จุดเริ่มต้น 1642 01:12:58,950 --> 01:13:00,204 หลายวิธีที่ฉันจะได้รับในตอนท้าย? 1643 01:13:00,204 --> 01:13:00,870 ผู้ชม: สาม 1644 01:13:00,870 --> 01:13:03,161 ไบรอัน SCASSELLATI: ถ้าฉันได้ มีจุดญที่จุดเริ่มต้น 1645 01:13:03,161 --> 01:13:04,790 หลายวิธีที่ฉันจะได้รับในตอนท้าย? 1646 01:13:04,790 --> 01:13:07,520 10 เจ 1647 01:13:07,520 --> 01:13:08,650 ตกลง. 1648 01:13:08,650 --> 01:13:10,390 ดังนั้นลองออก 1649 01:13:10,390 --> 01:13:13,180 >> ดังนั้นฉันจะบันทึกโปรแกรมกระต่ายของเรา 1650 01:13:13,180 --> 01:13:16,270 อีกครั้งหนึ่งที่เราจะซูมออก 1651 01:13:16,270 --> 01:13:19,090 เราจะลงไปยังสถานีของเรา 1652 01:13:19,090 --> 01:13:20,180 เราจะล้างมัน 1653 01:13:20,180 --> 01:13:23,410 และซูมเข้า 1654 01:13:23,410 --> 01:13:26,410 เราจะทำให้โปรแกรมกระต่ายของเราอีกครั้ง 1655 01:13:26,410 --> 01:13:27,690 และเราจะดำเนินการได้ 1656 01:13:27,690 --> 01:13:30,462 1657 01:13:30,462 --> 01:13:32,090 เอ่อโอ้. 1658 01:13:32,090 --> 01:13:34,580 >> ถือบนขอซูมออก 1659 01:13:34,580 --> 01:13:36,860 ฉันไม่ได้รับ 10 เฟรม? 1660 01:13:36,860 --> 01:13:38,970 ด้วยวิธีการที่หลายกระต่าย ฉันจะเห็นได้ถึงที่นั่น? 1661 01:13:38,970 --> 01:13:43,330 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 1662 01:13:43,330 --> 01:13:44,820 ผมได้ 10 เฟรม 1663 01:13:44,820 --> 01:13:46,375 พวกเขาทั้งหมดเดียวกันได้หรือไม่ 1664 01:13:46,375 --> 01:13:47,000 ผู้ชม: ใช่ 1665 01:13:47,000 --> 01:13:48,740 เลขที่ 1666 01:13:48,740 --> 01:13:50,000 >> ไบรอัน SCASSELLATI: เลขที่ 1667 01:13:50,000 --> 01:13:55,050 นั่นเป็นครั้งแรกที่ กระต่ายอยู่ไกลด้านซ้าย 1668 01:13:55,050 --> 01:13:57,541 และมากกว่าที่นี่กระต่ายอยู่ไกลบน 1669 01:13:57,541 --> 01:13:58,290 ลำโพง 29: ขวา 1670 01:13:58,290 --> 01:14:00,502 ไบรอัน SCASSELLATI: ดังนั้น สิ่งที่ฉันไม่ลืมที่จะทำอย่างไร 1671 01:14:00,502 --> 01:14:01,750 ลำโพง 30: เริ่มต้นบรรทัดใหม่ 1672 01:14:01,750 --> 01:14:04,041 ไบรอัน SCASSELLATI: ฉันลืม ที่จะเริ่มต้นใหม่อีกครั้ง 1673 01:14:04,041 --> 01:14:05,270 ผิดพลาดเหมือนที่ผมทำมาก่อน 1674 01:14:05,270 --> 01:14:07,120 สิทธิทั้งหมดให้เป็นไปแก้ไขปัญหาที่ 1675 01:14:07,120 --> 01:14:11,690 ตอนนี้ฉันยังคงมีรหัส ในการมีที่จะทำให้การขึ้นบรรทัดใหม่ 1676 01:14:11,690 --> 01:14:13,899 ไม่ได้ทำงานทำไม? 1677 01:14:13,899 --> 01:14:15,440 ลำโพง 31: มันไม่ได้อยู่ในวง 1678 01:14:15,440 --> 01:14:17,710 ไบรอัน SCASSELLATI: โอ้ มันไม่ได้อยู่ในวง 1679 01:14:17,710 --> 01:14:18,520 ถูกตัอง. 1680 01:14:18,520 --> 01:14:20,150 มันนั่งอยู่ข้างนอกนี่ 1681 01:14:20,150 --> 01:14:23,470 1682 01:14:23,470 --> 01:14:29,050 และสำหรับวงคือทุกอย่าง ที่อยู่ภายในข้อความที่ 1683 01:14:29,050 --> 01:14:35,500 >> ดังนั้นฉันจะย้าย นี้ภายในสำหรับวง 1684 01:14:35,500 --> 01:14:39,410 และฉันจะแท็บในด้านหน้าของมันไป แสดงให้เห็นว่ามันอยู่ในสถานที่ที่เหมาะสม 1685 01:14:39,410 --> 01:14:42,020 และตอนนี้เราจะบันทึกไว้อีกครั้ง 1686 01:14:42,020 --> 01:14:44,350 เราจะซูมออก 1687 01:14:44,350 --> 01:14:45,770 เราจะเปลี่ยนไปยังสถานีของเรา 1688 01:14:45,770 --> 01:14:48,330 1689 01:14:48,330 --> 01:14:50,360 ขยายเข้า. 1690 01:14:50,360 --> 01:14:54,050 เราจะ remake โปรแกรมกระต่ายของเรา 1691 01:14:54,050 --> 01:14:59,070 และตอนนี้ตอนนี้เรามี 10 เฟรมของเรา 1692 01:14:59,070 --> 01:15:00,190 >> [ตบมือ] 1693 01:15:00,190 --> 01:15:02,120 >> ไบรอัน SCASSELLATI: OK 1694 01:15:02,120 --> 01:15:04,080 ดังนั้น 1695 01:15:04,080 --> 01:15:08,370 ที่นี่มีการซ้อนกันของเราสำหรับลูป 1696 01:15:08,370 --> 01:15:13,140 เราสามารถที่จะสร้างใน ห่วงด้านวิธีการหลายจุดที่ฉันต้องการ 1697 01:15:13,140 --> 01:15:15,320 ในการพิมพ์ที่จุดเริ่มต้นในตอนท้าย 1698 01:15:15,320 --> 01:15:21,570 และห่วงด้านนอกควบคุม วิธีการหลายเฟรมที่ผมกำลังสร้าง 1699 01:15:21,570 --> 01:15:26,340 เราเริ่มต้นด้วยหนึ่งเล็ก ๆ น้อย ๆ เคอร์เนลของปัญหา 1700 01:15:26,340 --> 01:15:30,320 และเราสร้างขึ้นจากจากจุดนั้น 1701 01:15:30,320 --> 01:15:30,820 ทั้งหมดขวา 1702 01:15:30,820 --> 01:15:33,500 >> ให้ทำขั้นตอนเดียวมากขึ้น 1703 01:15:33,500 --> 01:15:35,040 คุณพร้อม? 1704 01:15:35,040 --> 01:15:38,800 มีสิ่งหนึ่งที่นี่ที่ เราได้จริงชนิดของได้ 1705 01:15:38,800 --> 01:15:42,180 ความซับซ้อนเกินกว่าที่เราต้องการ 1706 01:15:42,180 --> 01:15:44,700 ลองมาดู 1707 01:15:44,700 --> 01:15:52,050 ดังนั้นในโปรแกรมกระต่ายของเรา ถ้าฉันซูมออกจากที่นี่ 1708 01:15:52,050 --> 01:15:54,980 ที่จริงผมทำบางเดียวกัน สิ่งที่ซ้ำแล้วซ้ำอีก 1709 01:15:54,980 --> 01:15:59,032 ฉันจะทำอย่างไรที่การเรียงลำดับของ สิ่งเดียวกันซ้ำแล้วซ้ำอีกเป็นครั้งที่สอง? 1710 01:15:59,032 --> 01:16:00,310 >> ลำโพง 32: พิมพ์จุด 1711 01:16:00,310 --> 01:16:03,526 >> ไบรอัน SCASSELLATI: ใช่ พิมพ์ครั้งที่สองจุดเหล่านั้น 1712 01:16:03,526 --> 01:16:05,710 จริงๆผมควรจะมี นี้แสดงความคิดเห็นลงที่นี่ 1713 01:16:05,710 --> 01:16:09,037 พิมพ์บางจุดที่ เริ่มต้นขึ้นที่นี่ 1714 01:16:09,037 --> 01:16:10,620 แล้วฉันพิมพ์บางจุดที่สิ้นสุด 1715 01:16:10,620 --> 01:16:14,694 และผมก็ทำชนิดของสิ่งเดียวกัน 1716 01:16:14,694 --> 01:16:17,110 สิ่งที่เรากำลังจะเริ่มต้น ที่ทำงานเกี่ยวกับในอีกไม่กี่สัปดาห์ข้างหน้า 1717 01:16:17,110 --> 01:16:23,440 คือความสามารถที่จะใช้บล็อกที่ของ รหัสที่เราใช้ซ้ำแล้วซ้ำอีกครั้ง 1718 01:16:23,440 --> 01:16:25,800 และผ่านกระบวนการที่ เรียกว่านามธรรม 1719 01:16:25,800 --> 01:16:31,100 เรากำลังจะดึงพวกเขาออกและ พวกเขาเขียนครั้งเดียวเพื่อให้เราสามารถแล้ว 1720 01:16:31,100 --> 01:16:35,130 นำมาใช้ใหม่ซ้ำแล้วซ้ำอีก 1721 01:16:35,130 --> 01:16:37,210 ดังนั้นลองที่ 1722 01:16:37,210 --> 01:16:38,220 พร้อมหรือยัง? 1723 01:16:38,220 --> 01:16:42,200 >> เรากำลังจะใช้บล็อกของรหัสนี้ 1724 01:16:42,200 --> 01:16:45,280 และฉันจะเอามันออกจากที่นั่น 1725 01:16:45,280 --> 01:16:50,530 และฉันจะ define-- ลงที่ด้านล่าง 1726 01:16:50,530 --> 01:16:53,130 ฉันจะเขียนฟังก์ชันใหม่ 1727 01:16:53,130 --> 01:16:54,750 มันจะไม่กลับอะไร 1728 01:16:54,750 --> 01:16:58,550 และฉันจะเรียกมันว่า printDots 1729 01:16:58,550 --> 01:17:01,530 >> มันจะใช้เวลาหนึ่ง อาร์กิวเมนต์จำนวนเต็มว่า 1730 01:17:01,530 --> 01:17:04,920 howManyDots พูดว่าฉันควรจะพิมพ์ 1731 01:17:04,920 --> 01:17:09,310 1732 01:17:09,310 --> 01:17:17,720 และตอนนี้แทนการพิมพ์จุดเจฉันจะ พิมพ์บอก howManyDots ฉันควรพิมพ์ 1733 01:17:17,720 --> 01:17:21,581 >> และมีปัญหาเล็ก ๆ น้อย ๆ ที่นี่ 1734 01:17:21,581 --> 01:17:22,580 ใครรู้ว่ามันคืออะไร? 1735 01:17:22,580 --> 01:17:27,270 1736 01:17:27,270 --> 01:17:31,505 ฉันจะทำอะไรที่มีการระบุไว้ ที่นี่ที่ไม่ได้กำหนดไว้? 1737 01:17:31,505 --> 01:17:34,165 1738 01:17:34,165 --> 01:17:35,090 >> ผู้ชม: [ไม่ได้ยิน] 1739 01:17:35,090 --> 01:17:37,465 >> ไบรอัน SCASSELLATI: ดีว่า หลายจุดที่ถูกกำหนดขึ้น 1740 01:17:37,465 --> 01:17:40,584 ที่นี่ แต่ผมใช้ผมตัวแปรที่ 1741 01:17:40,584 --> 01:17:43,750 ดังนั้นฉันจะใช้ตัวแปรที่ฉัน และฉันกำลังจะไปกำหนดมันลงที่นี่ 1742 01:17:43,750 --> 01:17:44,610 แทน 1743 01:17:44,610 --> 01:17:49,683 >> ดังนั้นตอนนี้มันจะ stay-- โอ๊ะ ได้หมวกล็อค somehow-- ฉัน 1744 01:17:49,683 --> 01:17:52,060 จะให้ฉันลงที่นี่ 1745 01:17:52,060 --> 01:17:57,050 >> ดังนั้นตอนนี้ที่นี่เป็นหน้าที่เล็ก ๆ ของฉัน หรือย่อยประจำและก็กล่าวว่า 1746 01:17:57,050 --> 01:18:00,640 วิธีการหลายจุดที่ฉันจะพิมพ์? 1747 01:18:00,640 --> 01:18:05,300 และมันจะไปถึงวงนี้และ พิมพ์ซ้ำแล้วซ้ำอีก 1748 01:18:05,300 --> 01:18:10,940 >> จากนั้นผมก็สามารถปรับเปลี่ยนโปรแกรมของฉันที่นี่ 1749 01:18:10,940 --> 01:18:12,540 และสิ่งที่ผมเรียกใช้ฟังก์ชันที่? 1750 01:18:12,540 --> 01:18:13,960 printDots 1751 01:18:13,960 --> 01:18:17,060 ดังนั้นผมจึงจะเรียก printDots 1752 01:18:17,060 --> 01:18:21,530 วิธีการหลายจุดที่ฉันต้องการพิมพ์ เป็นครั้งแรกก่อนที่กระต่าย? 1753 01:18:21,530 --> 01:18:22,030 ผู้ชม: เจ 1754 01:18:22,030 --> 01:18:23,230 ไบรอัน SCASSELLATI: เจ 1755 01:18:23,230 --> 01:18:27,110 วิธีการหลายจุดที่ฉันต้องการพิมพ์ ในท้ายที่สุดหลังจากที่กระต่าย? 1756 01:18:27,110 --> 01:18:30,610 1757 01:18:30,610 --> 01:18:31,110 10 เจ 1758 01:18:31,110 --> 01:18:35,020 1759 01:18:35,020 --> 01:18:38,010 >> และมีสิ่งหนึ่งที่ฉันหายไป 1760 01:18:38,010 --> 01:18:43,740 ในขณะที่คุณเห็นในการบรรยายในวันนี้ เรากำลังจะประกาศ printDots 1761 01:18:43,740 --> 01:18:52,430 ขึ้นไปข้างบนเพื่อให้ต้นแบบ 1762 01:18:52,430 --> 01:18:56,740 1763 01:18:56,740 --> 01:18:58,220 ตกลง. 1764 01:18:58,220 --> 01:19:03,530 >> ดังนั้นสิ่งที่ผมทำคือผมได้พยายามที่จะ แยกที่นำกลับมาใช้เป็นส่วนหนึ่งของรหัส 1765 01:19:03,530 --> 01:19:06,430 ที่ฉันได้ทำซ้ำแล้วซ้ำอีก 1766 01:19:06,430 --> 01:19:11,120 และฉันได้พยายามที่จะดึงมันออกเพื่อให้ ทั้งหมดที่มีอยู่ในสถานที่แห่งหนึ่ง 1767 01:19:11,120 --> 01:19:16,810 วิธีการที่ถ้ามีความผิดพลาดบาง ฉันมีเพียงแค่ที่จะแก้ไขได้ในจุดหนึ่ง 1768 01:19:16,810 --> 01:19:17,310 ทั้งหมดขวา 1769 01:19:17,310 --> 01:19:18,470 >> ดังนั้นขอบันทึกไว้ 1770 01:19:18,470 --> 01:19:20,950 และขอให้แน่ใจว่าการทำงาน 1771 01:19:20,950 --> 01:19:22,050 ดังนั้นขอให้ออกไป 1772 01:19:22,050 --> 01:19:25,200 เราจะไปอีกครั้งไปยังสถานีของเรา 1773 01:19:25,200 --> 01:19:27,960 เราจะซูมเข้า 1774 01:19:27,960 --> 01:19:31,010 เราจะทำให้กระบวนการกระต่ายที่ 1775 01:19:31,010 --> 01:19:32,380 >> โอ้ 1776 01:19:32,380 --> 01:19:34,800 และมันทำให้ฉันมีคำเตือน 1777 01:19:34,800 --> 01:19:37,070 มันเป็นสิ่งที่บอกฉัน? 1778 01:19:37,070 --> 01:19:39,870 ดีในใด ๆ เหล่านี้ บางครั้งคุณต้องการเสมอ 1779 01:19:39,870 --> 01:19:44,170 เพื่อเลื่อนขึ้นไป error-- แรก ตอนนี้ที่นี้ผมได้มีเพียงหนึ่ง 1780 01:19:44,170 --> 01:19:52,700 >> มันบอกผมใน bunny.c บนเส้น 8 คอลัมน์ 9 มีปัญหา 1781 01:19:52,700 --> 01:19:58,650 มันบอกว่าคุณได้ประกาศนี้ ฉันตัวแปรและคุณไม่ได้ใช้มัน 1782 01:19:58,650 --> 01:20:02,230 >> ตอนนี้ปกติท​​ี่ ไม่ได้เป็นข้อผิดพลาดที่เลวร้ายที่สุด 1783 01:20:02,230 --> 01:20:04,300 นั่นเป็นหนึ่งง่ายต่อการแก้ไข 1784 01:20:04,300 --> 01:20:07,550 และในความเป็นจริงเราสามารถกลับไป 1785 01:20:07,550 --> 01:20:09,910 เราสามารถกลับไปกระต่าย 1786 01:20:09,910 --> 01:20:13,010 และในกรณีนี้เราทุกคน ต้องทำคือการกำจัดของฉัน 1787 01:20:13,010 --> 01:20:16,630 เพราะเราไม่ได้ใช้ ฉันภายในหลักอีกต่อไป 1788 01:20:16,630 --> 01:20:19,860 เราเพียงแค่ใช้มัน ภายในย่อยประจำของเรา 1789 01:20:19,860 --> 01:20:22,777 >> ดังนั้นขอบันทึกว่า 1790 01:20:22,777 --> 01:20:23,360 เราจะกลับไป 1791 01:20:23,360 --> 01:20:26,760 1792 01:20:26,760 --> 01:20:28,630 และซูมเข้า 1793 01:20:28,630 --> 01:20:30,700 เราจะอีกครั้งหนึ่งทำให้กระต่าย 1794 01:20:30,700 --> 01:20:33,810 1795 01:20:33,810 --> 01:20:36,530 และมีอีก 10 เฟรมของเรา 1796 01:20:36,530 --> 01:20:39,450 1797 01:20:39,450 --> 01:20:41,360 ตกลง. 1798 01:20:41,360 --> 01:20:43,190 >> ทุกครั้งที่คุณได้รับ procedure-- ใช่ 1799 01:20:43,190 --> 01:20:44,690 ลำโพง 33: ฉันมี a-- ฉันสับสน 1800 01:20:44,690 --> 01:20:45,892 คุณสามารถกลับไปที่รหัส? 1801 01:20:45,892 --> 01:20:46,850 ไบรอัน SCASSELLATI: อ๋อ 1802 01:20:46,850 --> 01:20:50,730 1803 01:20:50,730 --> 01:20:54,367 >> ลำโพง 33: ดังนั้นเมื่อคุณเขียน ต้นแบบของการโต้แย้งคุณ 1804 01:20:54,367 --> 01:20:56,550 มันมีชื่อเรียกว่า howmany? 1805 01:20:56,550 --> 01:20:57,540 แต่ below-- 1806 01:20:57,540 --> 01:20:57,640 >> ไบรอัน SCASSELLATI: Oh yeah 1807 01:20:57,640 --> 01:20:59,140 >> ลำโพง 33: --called สิ่งที่พวกเขา ที่แตกต่างกันที่ฉันไม่เข้าใจ 1808 01:20:59,140 --> 01:21:00,240 >> ไบรอัน SCASSELLATI: ทำไม พวกเขามีความแตกต่างกัน 1809 01:21:00,240 --> 01:21:01,780 เพื่อให้เป็นคำถามที่ดี 1810 01:21:01,780 --> 01:21:08,250 ดังนั้นคำถามคือขึ้น ที่นี่ผมเขียน howmany, 1811 01:21:08,250 --> 01:21:12,380 และลงมาด้านล่างที่ผมเขียน howManyDots 1812 01:21:12,380 --> 01:21:15,590 >> เหตุผลก็คือว่าในต้นแบบของคุณ มันจริงไม่ได้ให้ความสนใจ 1813 01:21:15,590 --> 01:21:17,090 ชื่อที่คุณใส่ใน 1814 01:21:17,090 --> 01:21:20,530 ทั้งหมดก็จริงๆใส่ใจเกี่ยวกับ คือว่ามันเป็นจำนวนเต็ม 1815 01:21:20,530 --> 01:21:23,080 มันอยากจะรู้ว่ารูปแบบ สิ่งที่คุณใส่ใน 1816 01:21:23,080 --> 01:21:31,560 >> ตอนนี้ stylistically-- oops-- สิ่งที่ฉันควร ไม่เป็นที่ผมชอบที่จะทำให้การแข่งขันเหล่านี้ 1817 01:21:31,560 --> 01:21:33,150 ตกลง. 1818 01:21:33,150 --> 01:21:36,430 เพราะที่จะให้มัน ง่ายสำหรับผมที่จะจำ 1819 01:21:36,430 --> 01:21:38,390 แต่นั่นก็เป็นความผิดพลาดของฉันใช่ 1820 01:21:38,390 --> 01:21:47,620 >> ลำโพง 34: ดังนั้นสำหรับ ต้นแบบในการทำงานเพียง 1821 01:21:47,620 --> 01:21:50,510 เขียนเส้นนั้น เขียนต้นแบบ 1822 01:21:50,510 --> 01:21:53,932 ช่วยให้การทำงานที่มาว่า ด้านล่างขวามันไปที่สิ้นสุด 1823 01:21:53,932 --> 01:21:55,140 และเรียกสิ่งที่หมายถึง? 1824 01:21:55,140 --> 01:21:58,480 >> ไบรอัน SCASSELLATI: มันหมายถึงอะไร คือเมื่อคอมไพเลอร์ผ่านไป 1825 01:21:58,480 --> 01:22:01,930 มันจะไปจากด้านบนของ รหัสของคุณไปที่ด้านล่าง 1826 01:22:01,930 --> 01:22:05,430 และสิ่งที่ต้นแบบนี้เป็น มันเป็นพื้นสัญญา 1827 01:22:05,430 --> 01:22:09,570 >> มันบอกว่ามีเป็นไปได้ ฟังก์ชั่นที่กำหนดไว้ที่ใดที่หนึ่ง 1828 01:22:09,570 --> 01:22:11,880 มันจะถูกเรียกว่า printDots 1829 01:22:11,880 --> 01:22:15,110 และมันจะใช้เวลาหนึ่งในการโต้แย้ง ที่จะเป็นจำนวนเต็ม 1830 01:22:15,110 --> 01:22:18,590 และมันจะกลับมา อะไรประเภทโมฆะ 1831 01:22:18,590 --> 01:22:19,310 ตกลง. 1832 01:22:19,310 --> 01:22:22,950 ผมสัญญาว่าคุณก็เป็นไปได้ ที่กำหนดไว้ที่ใดที่หนึ่งลงที่ถนน 1833 01:22:22,950 --> 01:22:25,590 แต่เวลาที่คุณเห็น ที่ที่คุณไปลง 1834 01:22:25,590 --> 01:22:28,710 ผ่านส่วนที่เหลือของฉัน ฟังก์ชั่นหลักที่ฉันต้องการ 1835 01:22:28,710 --> 01:22:33,800 คุณในการรักษาที่เป็นฟังก์ชั่น ที่จะเข้าจำนวนเต็มหนึ่ง 1836 01:22:33,800 --> 01:22:37,970 >> และดังนั้นเมื่อคอมไพเลอร์ลงไป ผ่านทางนี้ก็เห็นสัญญาว่า 1837 01:22:37,970 --> 01:22:40,220 และเมื่อได้รับลง ช่วยให้ไปเก็บไป, 1838 01:22:40,220 --> 01:22:43,060 พบครั้งแรก printDots เป็นที่กล่าวถึง 1839 01:22:43,060 --> 01:22:46,910 และมันก็บอกว่าโอ้คุณให้ ฉันญนี้ เจเป็นจำนวนเต็ม 1840 01:22:46,910 --> 01:22:49,570 >> ดีที่คุณสัญญากับฉันที่จะ เป็นจำนวนเต็มและที่เหมาะสม 1841 01:22:49,570 --> 01:22:51,370 มันโอเค. 1842 01:22:51,370 --> 01:22:53,880 และแล้วในที่สุดก็ลดลง ที่ด้านล่างมาก 1843 01:22:53,880 --> 01:22:58,340 ก่อนที่ผมจะได้รับการสิ้นสุดของฉัน ไฟล์ที่ผมทำตามสัญญาของฉัน 1844 01:22:58,340 --> 01:22:59,896 และฉันกำหนดมัน 1845 01:22:59,896 --> 01:23:01,868 ตกลง? 1846 01:23:01,868 --> 01:23:06,320 >> ลำโพง 35: ดังนั้นจึง saves-- โปรแกรมจะช่วยให้ช่องว่าง 1847 01:23:06,320 --> 01:23:09,570 ว่ามันจะกลับไปและเติมที่สิ้นสุดหรือไม่ 1848 01:23:09,570 --> 01:23:12,140 >> ไบรอัน SCASSELLATI: มันไม่ได้ เกี่ยวกับการจัดสรรหน่วยความจำ 1849 01:23:12,140 --> 01:23:16,800 มันเป็นจริงเพียงเกี่ยวกับสิ่งที่ ชนิดที่คุณคาดหวังว่าจะได้เห็น 1850 01:23:16,800 --> 01:23:19,340 สิ่งนี้ควรจะมีหนึ่ง ข้อโต้แย้งหรือข้อโต้แย้งที่ห้า? 1851 01:23:19,340 --> 01:23:23,590 ควรจะเป็นจำนวนเต็ม มอบให้กับมันหรือสตริง? 1852 01:23:23,590 --> 01:23:25,780 นั่นคือทั้งหมดที่กำลังมองหา จะทำคือการตรวจสอบ 1853 01:23:25,780 --> 01:23:29,303 คุณให้ฉัน ชนิดที่เหมาะสมของการโต้แย้ง 1854 01:23:29,303 --> 01:23:31,560 ตกลง? 1855 01:23:31,560 --> 01:23:32,300 ทั้งหมดขวา 1856 01:23:32,300 --> 01:23:38,570 >> ให้ฉันทำให้คุณมี หนึ่งบิตอื่น ๆ ที่จะมองไปที่ 1857 01:23:38,570 --> 01:23:44,850 ศิลปะ ASCII ไม่ได้เป็นรูปแบบที่ดี ของการเคลื่อนไหวตามที่วันนี้ 1858 01:23:44,850 --> 01:23:50,850 แต่บางคนแน่นอนใช้สิ่ง และพวกเขาผลักดันให้สุดขั้วของพวกเขา 1859 01:23:50,850 --> 01:23:56,790 >> นี้เป็นอย่างดาวิดแสดงให้เห็นถึง ในการบรรยาย, ชิ้นส่วนของรหัส 1860 01:23:56,790 --> 01:24:02,150 ที่คุณควรภายใต้สถานการณ์ที่ไม่มี พยายามที่จะทำซ้ำตัวเอง 1861 01:24:02,150 --> 01:24:05,260 เพราะมันเป็นสไตล์ที่น่ากลัว 1862 01:24:05,260 --> 01:24:11,180 ในความเป็นจริงมันถูกออกแบบมาให้เป็น ยากที่จะเป็นไปได้ที่จะอ่าน 1863 01:24:11,180 --> 01:24:11,680 ตกลง. 1864 01:24:11,680 --> 01:24:16,210 >> ดังนั้นจะทำอีกครั้งขอซูมเข้าที่นี่ 1865 01:24:16,210 --> 01:24:20,120 ฉันจะไปตอนนี้เปลี่ยนไดเรกทอรี 1866 01:24:20,120 --> 01:24:24,050 ฉันจะขึ้นไปอย่างใดอย่างหนึ่ง ระดับกลับไปยังพื้นที่ทำงานของฉัน 1867 01:24:24,050 --> 01:24:29,760 จากนั้นผมก็จะเปลี่ยนไดเรกทอรีเป็นแบบนี้ ไดเรกทอรีอื่น ๆ ที่เราได้สร้าง 1868 01:24:29,760 --> 01:24:36,190 >> และนี่คือนานาชาติ obfuscated C ประกวดการเขียนโปรแกรม 1869 01:24:36,190 --> 01:24:40,650 obfuscated วิธีการอย่างหนัก เป็นไปได้ที่จะเข้าใจ 1870 01:24:40,650 --> 01:24:44,150 ดังนั้นโปรดอย่ากลัวถ้าคุณมอง ที่นี้และไปฉันไม่สามารถอ่านว่า 1871 01:24:44,150 --> 01:24:46,350 ที่จุดของมัน 1872 01:24:46,350 --> 01:24:47,700 ตกลง? 1873 01:24:47,700 --> 01:24:52,770 >> แต่เรามีนี้ โปรแกรมที่ยอดเยี่ยมที่ผม 1874 01:24:52,770 --> 01:24:57,180 จะไปดูที่โดยเพียงแค่การพิมพ์มากขึ้น 1875 01:24:57,180 --> 01:25:01,890 และให้ดูว่าฉันสามารถซูมออก เพียงเล็กน้อยเพื่อให้คุณสามารถมองเห็นได้ 1876 01:25:01,890 --> 01:25:03,940 >> และนี่คือโปรแกรม 1877 01:25:03,940 --> 01:25:08,080 มันชื่อ endo.c. 1878 01:25:08,080 --> 01:25:14,850 และดูเหมือนว่าถังที่มีนี้ ชนิดของตัวอักษร F-L-U-I-D ในนั้น 1879 01:25:14,850 --> 01:25:16,440 >> นี้เป็นจริงโปรแกรม 1880 01:25:16,440 --> 01:25:20,260 มันเขียนในปิดบังมากที่สุด วิธีการที่ผู้เขียนอาจจะ 1881 01:25:20,260 --> 01:25:21,760 เขียนมัน 1882 01:25:21,760 --> 01:25:29,210 แต่มันเป็นชิ้นเล็ก ๆ ที่ยอดเยี่ยมที่ สร้างรูปแบบของการเปลี่ยนแปลงของเหลว 1883 01:25:29,210 --> 01:25:34,870 >> และเพื่อให้เรากำลังจะให้ ว่ารูปแบบการป้อนข้อมูลที่ 1884 01:25:34,870 --> 01:25:42,520 ลักษณะเช่นนี้ของ staired ตั้งของภาชนะบรรจุ 1885 01:25:42,520 --> 01:25:45,820 ด้วยของเหลวบาง ของเหลวขึ้นที่ด้านบน 1886 01:25:45,820 --> 01:25:48,790 และเราจะมีมันจำลอง สิ่งที่เกิดขึ้นกับมัน 1887 01:25:48,790 --> 01:25:52,415 >> ดังนั้นผมจึงจะเรียกฟังก์ชั่นที่ Endo 1888 01:25:52,415 --> 01:25:59,000 และฉันจะให้มันว่า แฟ้มข้อมูลที่ผมเคยมี 1889 01:25:59,000 --> 01:26:02,830 และมีสิ่งที่ดีเลิศของเราคือศิลปะ ASCII 1890 01:26:02,830 --> 01:26:08,960 จำลองแบบไดนามิกเต็มรูปแบบของเหลว ทำงานในเพียงไม่กี่บรรทัดของรหัส 1891 01:26:08,960 --> 01:26:13,750 >> ตอนนี้สิ่งที่เป็นจริงจริงๆ ที่น่าตื่นตาตื่นใจเกี่ยวกับโปรแกรมนี้น้อย 1892 01:26:13,750 --> 01:26:17,280 คือว่าผมต้องการที่จะหยุดได้ในขณะนี้ ดังนั้นฉันจะใช้สิ่งที่คำสั่ง? 1893 01:26:17,280 --> 01:26:18,660 >> ผู้ชม: การควบคุม-C 1894 01:26:18,660 --> 01:26:20,390 >> ไบรอัน SCASSELLATI: การควบคุม-C ตกลง. 1895 01:26:20,390 --> 01:26:22,960 ดังนั้นผมจะใช้การควบคุม-C C ที่จะหยุดมันได้ 1896 01:26:22,960 --> 01:26:25,330 ฉันจะล้างอีกครั้ง 1897 01:26:25,330 --> 01:26:31,210 และตอนนี้ฉันจะเรียก โปรแกรมรันโปรแกรม 1898 01:26:31,210 --> 01:26:33,740 โดยใช้ตัวเองเป็นอินพุท 1899 01:26:33,740 --> 01:26:36,760 1900 01:26:36,760 --> 01:26:42,700 >> และเราจะเห็นแบบไดนามิกของเหลว แบบจำลองของมันละลาย 1901 01:26:42,700 --> 01:26:43,830 ตกลง. 1902 01:26:43,830 --> 01:26:48,180 กรุณาอย่าให้โปรแกรมที่ เป็นสิ่งที่สร้างความสับสนให้กับคุณ 1903 01:26:48,180 --> 01:26:52,220 มันเป็นเพียงเพื่อให้เราสามารถสิ้นสุดในวันที่ สิ่งที่เย็นและน่าสนใจ 1904 01:26:52,220 --> 01:26:53,930 ตกลง. 1905 01:26:53,930 --> 01:26:56,330 >> ดีที่สุดของโชคกับชุดปัญหาของคุณได้ 1906 01:26:56,330 --> 01:26:59,030 เราจะมีความสุขที่จะตอบ คำถามหลังเลิกเรียน 1907 01:26:59,030 --> 01:27:01,180 ขอบคุณมากครับ 1908 01:27:01,180 --> 01:27:02,793