1 00:00:00,000 --> 00:00:15,059 >> [เสียงเพลง] 2 00:00:15,059 --> 00:00:19,170 >> นี่คือ CS50-- ฮาร์วาร์ แนะนำมหาวิทยาลัย 3 00:00:19,170 --> 00:00:22,070 กับทางปัญญา ผู้ประกอบการของวิทยาศาสตร์คอมพิวเตอร์ 4 00:00:22,070 --> 00:00:23,800 และศิลปะของการเขียนโปรแกรม 5 00:00:23,800 --> 00:00:27,020 และชื่อของฉันคือดาวิดลันและ ผมคิดว่าเช้าวันนี้ 6 00:00:27,020 --> 00:00:33,120 จะได้รับที่น่าอัศจรรย์ใจ 20 ปีในวันนี้ ตั้งแต่ฉันสุดท้ายนั่งที่พวกคุณทำตอนนี้ 7 00:00:33,120 --> 00:00:33,840 >> มันเป็น 1996 8 00:00:33,840 --> 00:00:37,550 ผมเป็นนักเรียนปีที่สองและผมกำลัง CS50 เป็นครั้งแรกมาก 9 00:00:37,550 --> 00:00:40,890 และผมไม่ได้อากาศได้ถึงเส้นประสาท ที่จะใช้มันเองน้องปี 10 00:00:40,890 --> 00:00:42,500 ส่วนหนึ่งเป็นเพราะเวลา 11 00:00:42,500 --> 00:00:44,782 วิทยาการคอมพิวเตอร์ให้ฉัน เป็นชนิดของชอบ Meh 12 00:00:44,782 --> 00:00:46,990 ฉันเป็นบิตของ geek เติบโต แต่ฉันไม่ได้จริงๆ 13 00:00:46,990 --> 00:00:49,180 มีทางปัญญาใด ๆ สนใจในสิ่งที่ปรากฏ 14 00:00:49,180 --> 00:00:51,920 เพียงแค่จะทั้งกลุ่ม คนเขียนโปรแกรมตลอดเวลา 15 00:00:51,920 --> 00:00:53,904 >> และฉันก็กลัวที่จะซื่อสัตย์ 16 00:00:53,904 --> 00:00:56,820 หลักสูตรวิทยาการคอมพิวเตอร์และอื่น ๆ อีกมากมาย มักจะได้รับและมีขอบเขต 17 00:00:56,820 --> 00:01:01,230 ยังคงมีชื่อเสียงของสนามนี้ ระวังถ้าเพียงเพราะเราหลายคน 18 00:01:01,230 --> 00:01:04,410 ไม่คุ้นเคยกับมันและไม่แน่ใจว่ามัน 19 00:01:04,410 --> 00:01:08,480 และมันจริงๆมันไม่ได้จนกว่าฉันจะซื้อ ชั้นนี้ว่าปี fall-- 20 00:01:08,480 --> 00:01:10,880 และได้แล้วผมลงทะเบียนเท่านั้น เพราะ professor-- 21 00:01:10,880 --> 00:01:13,950 หนึ่งในที่ปรึกษาครั้งแรกของฉัน, ไบรอัน Kernighan ในขณะนี้ที่ Princeton-- 22 00:01:13,950 --> 00:01:15,700 ให้ผมใช้ผ่านระดับล้มเหลว 23 00:01:15,700 --> 00:01:18,020 และแน่นอนว่าทำไม วันนี้เราอนุญาตและให้กำลังใจ 24 00:01:18,020 --> 00:01:20,030 นักเรียนที่จะเรียนนี้ SAT / unsat 25 00:01:20,030 --> 00:01:22,040 >> และเพียงแล้วโดย สิ้นสุดภาคการศึกษา 26 00:01:22,040 --> 00:01:24,870 ฉันไม่ตระหนักถึงความเหมือนวานนี้ ไม่ได้เช่นสนามที่ไม่คุ้นเคย 27 00:01:24,870 --> 00:01:26,850 อันที่จริงเรื่องนี้เป็น เพิ่มขีดความสามารถมากฟิลด์ 28 00:01:26,850 --> 00:01:28,970 และอื่น ๆ อีกโลดโผน โดยเฉพาะอย่างยิ่งในภายหลัง 29 00:01:28,970 --> 00:01:32,809 ขณะที่ผมเอาหลักสูตรใน นาฏศิลป 101 และละติน 30 00:01:32,809 --> 00:01:34,600 และแล้วในที่สุด โบราณคดีโรงเรียนที่จบ, 31 00:01:34,600 --> 00:01:37,860 ฉันไม่จริงๆเริ่มที่จะเห็น ทางแยกของสนามนี้คอมพิวเตอร์ 32 00:01:37,860 --> 00:01:41,979 วิทยาศาสตร์กับมนุษยศาสตร์ วิทยาศาสตร์ธรรมชาติศิลปะ, ยา, 33 00:01:41,979 --> 00:01:42,520 และไม่ชอบ 34 00:01:42,520 --> 00:01:44,420 และนั่นคือสิ่งที่เป็นเพียงเพื่อให้ ระเบียบเกี่ยวกับวิทยาการคอมพิวเตอร์ 35 00:01:44,420 --> 00:01:46,930 ท้ายที่สุดเท่าที่เราหวังว่าคุณจะ see-- คือการบังคับใช้ 36 00:01:46,930 --> 00:01:50,280 ไปยังเขตอื่น ๆ เหล่านี้และวิธีที่คุณสามารถทำได้ ใช้เวลาบางส่วนของวันนี้และภาคการศึกษาของ 37 00:01:50,280 --> 00:01:53,070 ความคิดและทักษะการปฏิบัติ กลับไปยังโดเมนของคุณเอง 38 00:01:53,070 --> 00:01:58,200 และจริงสำรวจทางแยก ศิลปศาสตร์และวิทยาศาสตร์ 39 00:01:58,200 --> 00:02:02,690 >> ดังนั้น 73% ของคุณถ้าสุดท้าย ปีบ่งชี้ใด ๆ 40 00:02:02,690 --> 00:02:04,390 ไม่เคยนำหลักสูตร CS ก่อน 41 00:02:04,390 --> 00:02:06,389 ดังนั้นถ้าเช่นฉันคุณเป็น ความรู้สึกนิด ๆ หน่อย ๆ 42 00:02:06,389 --> 00:02:09,190 กลัวหรือตรงไปตรงมาคุณไม่ได้ แน่ใจจริงๆว่าทำไมคุณถึงแม้ที่นี่ 43 00:02:09,190 --> 00:02:11,510 บางทีคุณอาจจะเป็นเพียงบางส่วนตาม เพื่อนไปยังแซนเดอในขณะนี้ 44 00:02:11,510 --> 00:02:12,490 ที่ดีทั้งหมด 45 00:02:12,490 --> 00:02:15,059 เป้าหมายที่นี่คือการขอ คุณและเพื่อสร้างความมั่นใจให้คุณ 46 00:02:15,059 --> 00:02:17,100 ว่าถ้าคุณมองไปที่ ด้านซ้ายและด้านขวา 47 00:02:17,100 --> 00:02:21,480 คุณกำลังจะไปดูกับเพื่อนร่วมชั้น เป็นประสบการณ์น้อยหรือมาก 48 00:02:21,480 --> 00:02:22,890 ที่คุณเองอาจจะมี 49 00:02:22,890 --> 00:02:25,280 และแน่นอนเราจะร่วมกัน สถิติบางอย่างในวันนี้ภายหลัง 50 00:02:25,280 --> 00:02:28,120 เป็นสิ่งที่ประชากรของ ระดับมักจะมีลักษณะเหมือน 51 00:02:28,120 --> 00:02:31,440 >> และในขณะที่เพิ่ม reassurance-- และเรานี้ หมายความว่าตั้งแต่ผมเข้ามาแน่นอน 52 00:02:31,440 --> 00:02:33,252 บางปี ago-- ใน รายวิชาที่ 53 00:02:33,252 --> 00:02:35,460 เป็น this-- ว่าสิ่งที่ท้ายที่สุด เรื่องในหลักสูตรนี้ 54 00:02:35,460 --> 00:02:38,040 เป็นไม่มากที่คุณจะจบ ขึ้นเมื่อเทียบกับเพื่อนร่วมชั้นของคุณ 55 00:02:38,040 --> 00:02:43,110 แต่ที่คุณในสัปดาห์ที่ 11 ท้ายของ ภาคการศึกษาที่จบลงเมื่อเทียบกับตัวเอง 56 00:02:43,110 --> 00:02:46,280 ในสัปดาห์ที่ 0 ซึ่งเป็น ที่เราอยู่ที่นี่ในวันนี้ 57 00:02:46,280 --> 00:02:48,704 และนี่คือสิ่งที่ฉันตระหนัก ทุกปีที่ผ่านมา 58 00:02:48,704 --> 00:02:50,620 และฉันรู้ว่าจำนวนมาก เรียนพูดแบบนี้ แต่มันก็เป็น 59 00:02:50,620 --> 00:02:52,450 โดยเฉพาะอย่างยิ่งในด้านวิทยาศาสตร์คอมพิวเตอร์ 60 00:02:52,450 --> 00:02:55,320 ในตอนท้ายของวันที่ข้อมูลนี้ ไม่คุ้นเคยเพราะมันเป็นอะไรกับผม 61 00:02:55,320 --> 00:02:58,590 และอาจจะมีการที่คุณเป็นจริง เพียงเกี่ยวกับการแก้ปัญหา 62 00:02:58,590 --> 00:03:01,324 และเป็นเช่นนี้ก็ไม่ได้นี้ การบังคับใช้จะได้รับสาขาอื่น ๆ 63 00:03:01,324 --> 00:03:03,490 และในความเป็นจริงถ้าเราพยายาม ที่จะสกัดสิ่งนี้หมายความว่า 64 00:03:03,490 --> 00:03:06,897 นี้คือการแก้ปัญหา ในสาระสำคัญของผม daresay 65 00:03:06,897 --> 00:03:09,480 มี input-- ดังนั้นสิ่งที่มัน คือการที่คุณกำลังพยายามที่จะแก้ปัญหา 66 00:03:09,480 --> 00:03:12,264 มีการส่งออกซึ่งเป็นความหวัง วิธีการแก้ปัญหาที่ 67 00:03:12,264 --> 00:03:14,180 แล้วที่เราจะ กล่าวว่าในวิทยาการคอมพิวเตอร์ 68 00:03:14,180 --> 00:03:17,310 มีกล่องสีดำนี้ใน กลางที่คุณไม่จำเป็นต้อง 69 00:03:17,310 --> 00:03:19,450 มีการดูแลเกี่ยวกับวิธีการทำงาน 70 00:03:19,450 --> 00:03:22,230 ตัวคุณที่สุดอาจ ใช้สิ่งที่อยู่ภายในกล่อง 71 00:03:22,230 --> 00:03:25,194 แต่สำหรับวัตถุประสงค์ของว​​ันนี้และอื่น ๆ โดยทั่วไปในชีวิตทั้งหมดที่คุณดูแลเกี่ยวกับ 72 00:03:25,194 --> 00:03:26,610 คือว่าปัญหาเหล​​่านี้ได้รับการแก้ไข 73 00:03:26,610 --> 00:03:29,340 >> และสิ่งที่หลักสูตรนี้เป็น ท้ายที่สุดคือการสำรวจเกี่ยวกับ 74 00:03:29,340 --> 00:03:31,700 จุดตัดของ ปัจจัยการผลิตเหล่านี้และเอาท์พุท 75 00:03:31,700 --> 00:03:34,410 และเหล่านี้เรียกว่า ขั้นตอนวิธีการที่เราจะเห็นทันที 76 00:03:34,410 --> 00:03:37,450 ที่ใช้สิ่งที่มีอยู่ ใต้มีเครื่องดูดควัน 77 00:03:37,450 --> 00:03:40,487 แต่ปัจจัยการผลิตเหล่านี้และเหล่า outputs-- สิ่งที่ไม่จริงหมายถึงอะไร 78 00:03:40,487 --> 00:03:43,570 ดีในตอนท้ายของวันที่เราต้อง วิธีการเป็นตัวแทนของข้อมูลบางอย่าง 79 00:03:43,570 --> 00:03:46,660 นี่คือความจริงโดยเฉพาะอย่างยิ่งในเครื่องคอมพิวเตอร์ ซึ่งเป็นแฟนซีและซับซ้อนเท่าที่มัน 80 00:03:46,660 --> 00:03:48,160 อาจจะดูเหมือนเป็นอุปกรณ์ใบ้สวย 81 00:03:48,160 --> 00:03:52,240 มันต้องใช้เวลา electricity-- ไม่ว่าจะจาก สายเคเบิลหรือแบตเตอรี่ input-- 82 00:03:52,240 --> 00:03:55,820 และจากนั้นก็ผลิตบางส่วน การตอบสนอง preprogramed บนหน้าจอ 83 00:03:55,820 --> 00:03:57,970 >> แต่วิธีการที่เราจะได้รับจาก ต้นจนจบมี? 84 00:03:57,970 --> 00:03:59,470 ดีสิ่งที่เป็นปัญหาที่จะแก้ไข? 85 00:03:59,470 --> 00:04:01,050 ดีบางทีเราอาจที่ จุดเริ่มต้นของภาคการศึกษาใด ๆ 86 00:04:01,050 --> 00:04:02,841 พยายามที่จะเข้าร่วมประชุม ในห้องพักเช่นนี้ 87 00:04:02,841 --> 00:04:04,750 ดังนั้นผมอาจจะทำเหมือนหนึ่งสองสาม 88 00:04:04,750 --> 00:04:07,060 หรือบางทีถ้าฉันไม่ได้ การเรียงลำดับของการติดตาม 89 00:04:07,060 --> 00:04:10,560 ของ myself-- เพื่อติดตาม things-- ฉันได้อย่างรวดเร็วสามารถวิ่งออกมาจากนิ้วมือ 90 00:04:10,560 --> 00:04:14,650 ดังนั้นฉันก็อาจจะทำให้กัญชา marks-- หนึ่ง คนที่สองสามสี่ห้าหก 91 00:04:14,650 --> 00:04:15,431 เจ็ดแปด 92 00:04:15,431 --> 00:04:17,930 และเราทุกคนอาจ การกระทำเช่นนี้ไม่ว่าจะเป็นในมือของคุณ 93 00:04:17,930 --> 00:04:19,680 หรือชิ้นส่วนของกระดาษ 94 00:04:19,680 --> 00:04:22,140 และนี้เป็นจริงเพียง สิ่งที่เรียกว่า notation-- เอก 95 00:04:22,140 --> 00:04:26,130 ซึ่งถ้าคุณมีเพียงหนึ่งตัวอักษร ในตัวอักษรหนึ่งหรือกัญชาของคุณ 96 00:04:26,130 --> 00:04:29,440 เครื่องหมายในกรณีนี้สำหรับทุก การป้อนข้อมูลที่คุณต้องการที่จะนับ 97 00:04:29,440 --> 00:04:32,330 คุณจะต้องใส่ลงหนึ่งของเหล่านี้ letters-- หนึ่งของเครื่องหมายเหล่านี้ 98 00:04:32,330 --> 00:04:32,510 >> ก็ดี 99 00:04:32,510 --> 00:04:34,790 นั่นคือทั้งหมดที่ดีและดีและ ไม่ได้ทั้งหมดที่มีความซับซ้อน 100 00:04:34,790 --> 00:04:37,800 แต่คอมพิวเตอร์ไม่ทั้งหมด ที่ซับซ้อนมากขึ้น 101 00:04:37,800 --> 00:04:40,770 อันที่จริงส่วนใหญ่ของคุณอาจจะ รู้ว่าแม้ว่าคุณจะไม่ได้จริงๆ 102 00:04:40,770 --> 00:04:44,080 ถือว่าเป็นสิ่งที่นี้หมายความว่า คอมพิวเตอร์เพียงเข้าใจศูนย์ 103 00:04:44,080 --> 00:04:45,870 และ ones-- ที่เรียกว่าระบบเลขฐานสอง 104 00:04:45,870 --> 00:04:49,390 มนุษย์เราโดยคมชัดจึง ความซับซ้อนมากขึ้นตราบเท่า 105 00:04:49,390 --> 00:04:51,770 ที่เราเข้าใจผ่านศูนย์เก้า 106 00:04:51,770 --> 00:04:55,740 >> แต่ถึงแม้ว่าไบนารีคือในตอนแรก ได้อย่างรวดเร็ว, ไม่ได้ทั้งหมดที่คุ้นเคย 107 00:04:55,740 --> 00:05:00,330 มันจะเปิดออกก็เช่นเดียวกับระบบ และความคิดที่ว่าเรารู้อยู่แล้วว่า 108 00:05:00,330 --> 00:05:02,420 ดังนั้นสำหรับตัวอย่างเช่นพิจารณานี้ 109 00:05:02,420 --> 00:05:03,896 นี่เป็นเพียงลำดับของสัญลักษณ์ 110 00:05:03,896 --> 00:05:05,770 และทุกท่านเมื่อ วินาศภัยที่มันอาจจะ 111 00:05:05,770 --> 00:05:09,380 คิดว่าไม่มีอะไร 123-- มีที่น่าสนใจจริงๆ 112 00:05:09,380 --> 00:05:11,940 แต่ทำไมมันเป็นจำนวนนี้ 123? 113 00:05:11,940 --> 00:05:14,440 เหล่านี้เป็นเพียงร่ายมนตร์บน screen-- เพียงแค่รูปแบบ 114 00:05:14,440 --> 00:05:16,387 ที่บางคนอาจจะได้วาดหรือพิมพ์ 115 00:05:16,387 --> 00:05:18,970 แต่ถ้าคุณต้องการฉันคุณ อาจจะจำได้จากโรงเรียนประถมศึกษา 116 00:05:18,970 --> 00:05:21,610 ว่ามีการเรียงลำดับของ คอลัมน์หรือสถานที่ที่นี่ 117 00:05:21,610 --> 00:05:25,340 มีสถานที่หนึ่งของและเป็น สถานที่สิบและสถานที่ที่ร้อย 118 00:05:25,340 --> 00:05:29,820 และเหตุผลที่ว่านี้คือ 123 และ ไม่ได้เป็นเพียงรูปแบบของสามสัญลักษณ์ 119 00:05:29,820 --> 00:05:33,090 เป็นเพราะแน่นอนถ้าเรา มีหนึ่งในสถานที่หลายร้อย, 120 00:05:33,090 --> 00:05:36,610 คุณทำคณิตศาสตร์ 100 ครั้งหนึ่ง แล้วสถานที่ที่สองในสิบของ 121 00:05:36,610 --> 00:05:41,390 ดังนั้นที่ 10 ครั้งที่ 2 และสาม สถานที่หนึ่งของและที่ 1 ครั้งที่ 3 122 00:05:41,390 --> 00:05:45,670 และเมื่อคุณเพิ่มทั้งหมดของผู้ที่ขึ้นของ แน่นอนว่าคุณจะได้รับ 100 บวก 20 บวก 3 123 00:05:45,670 --> 00:05:48,220 >> ดังนั้นเราจึงเริ่มมีเพียงรูปแบบ ของ symbols-- alphabet-- 124 00:05:48,220 --> 00:05:51,670 แต่แล้วเราแมปความหมายบน มันโดยวิธีการของคอลัมน์เหล่านี้ 125 00:05:51,670 --> 00:05:54,450 ดีก็ปรากฎว่า คอมพิวเตอร์มันไม่ 126 00:05:54,450 --> 00:05:56,300 ทุกสิ่งที่แตกต่างจากคุณและฉัน 127 00:05:56,300 --> 00:06:01,840 แต่แทนที่จะใช้อำนาจของ 10 เพื่อที่จะ speak-- 1, 10, 100, 1,000, 128 00:06:01,840 --> 00:06:04,330 10,000 สถานที่และอื่น ๆ forth-- พวกเขาจริง 129 00:06:04,330 --> 00:06:08,930 เพียงแค่ใช้อำนาจของ 2-- ดังนั้นหนึ่ง, 2, 4 และจากนั้น 130 00:06:08,930 --> 00:06:12,810 ถ้าเราใส่ตัวเลขมากขึ้น, 8, 16, 32, 64, 128, และอื่น ๆ 131 00:06:12,810 --> 00:06:16,050 ดังนั้นนี้เป็นวิธีที่คอมพิวเตอร์ จะเป็นตัวแทนของจำนวน 0, 132 00:06:16,050 --> 00:06:17,300 เช่นเดียวกับมนุษย์เรา 133 00:06:17,300 --> 00:06:21,660 >> 0, 0, 0-- และคุณอาจจะสามารถคาดเดา สิ่งที่รูปแบบของศูนย์และคน, 134 00:06:21,660 --> 00:06:24,610 ถ้าคอมพิวเตอร์สามารถเท่านั้น พูด 0 หรือสิ่งที่ 1- 135 00:06:24,610 --> 00:06:29,110 รูปแบบที่เป็นไปได้ที่จะเป็นตัวแทน จำนวนมนุษย์เรารู้ว่าเป็น 1? 136 00:06:29,110 --> 00:06:30,590 Yeah-- 0, 0, 1 137 00:06:30,590 --> 00:06:31,090 ก็ดี 138 00:06:31,090 --> 00:06:35,900 ดังนั้น 0, 0, 1 เป็นวิธีการที่เราเป็นตัวแทน 1 ดังนั้นคุณอาจจะมีแนวโน้มที่แล้ว 139 00:06:35,900 --> 00:06:39,510 เพื่อเป็นตัวแทนของหมายเลข 2 ถ้าคุณมี สถานที่ที่สี่และสถานที่ที่สอง 140 00:06:39,510 --> 00:06:48,290 เป็นสถานที่หนึ่งที่คุณอาจจะบอกว่าดี ถ้าเรามี 1 ในสถานที่หนึ่งของ 141 00:06:48,290 --> 00:06:50,430 และตอนนี้เราต้องการที่จะ นับถึง 2 คุณอาจ 142 00:06:50,430 --> 00:06:53,310 ทำเช่นนี้และออกจากนี้ไปจะเป็นศูนย์ 143 00:06:53,310 --> 00:06:56,397 แต่หลักสูตรนี้ไม่ได้เป็นวิธี ระบบทศนิยมทำงานอย่างใดอย่างหนึ่ง 144 00:06:56,397 --> 00:06:58,230 ถ้าคุณใส่ในหลัก ทั้งสองคอลัมน์เหล่านั้น 145 00:06:58,230 --> 00:06:59,563 คุณได้มีการทำเลขคณิต 146 00:06:59,563 --> 00:07:01,930 ดังนั้นสิ่งที่จำนวนไม่ฉัน ตั้งใจเพียงแค่แทน? 147 00:07:01,930 --> 00:07:06,710 >> ดังนั้นจึงเป็นที่ 3 เพราะ 2 ครั้งที่ 1 บวก 1 ครั้งที่ 1 ของหลักสูตรที่จะช่วยให้เราสาม 148 00:07:06,710 --> 00:07:08,340 ดังนั้นนี้จะเป็นสอง 149 00:07:08,340 --> 00:07:12,730 บิตเรียงลำดับของการพลิกเพื่อที่จะพูดเป็น 0 กลายเป็นหนึ่งเหมือนบทบาทมากกว่า 9 150 00:07:12,730 --> 00:07:14,840 และกลายเป็น 0 เมื่อคุณพกพา 1 151 00:07:14,840 --> 00:07:16,510 นี้ก็จะสามของหลักสูตร 152 00:07:16,510 --> 00:07:20,170 Four-- อีกสิ่งที่น่าสนใจ เกิดขึ้นที่คนเกลือกกลิ้ง 153 00:07:20,170 --> 00:07:21,750 และคุณดำเนินการ 1 เพื่อที่จะพูด 154 00:07:21,750 --> 00:07:23,320 ดังนั้นนี้แน่นอนเป็น 4 155 00:07:23,320 --> 00:07:25,160 >> แต่ถ้าคุณไปข้างหน้าอย่างรวดเร็วในขณะนี้ สิ่งที่หมายเลขที่ใหญ่ที่สุดไป 156 00:07:25,160 --> 00:07:26,660 เป็นไปได้ว่าคอมพิวเตอร์สามารถแทน? 157 00:07:26,660 --> 00:07:30,420 158 00:07:30,420 --> 00:07:32,380 ดังนั้นจึงเป็นเพียงเจ็ดในกรณีนี้ใช่มั้ย? 159 00:07:32,380 --> 00:07:35,570 เพราะคุณมีหนึ่งในสี่, หนึ่งในสองเป็นหนึ่งในหนึ่ง 160 00:07:35,570 --> 00:07:36,900 ดังนั้นที่ 4 บวก 2 บวก 1 161 00:07:36,900 --> 00:07:37,972 เพื่อที่จะช่วยให้คุณเจ็ด 162 00:07:37,972 --> 00:07:39,680 และแน่นอนว่ามันจะ ดูเหมือนได้อย่างรวดเร็วก่อน 163 00:07:39,680 --> 00:07:43,750 ว่าคอมพิวเตอร์สามารถนับ ไม่สูงกว่านี้ 164 00:07:43,750 --> 00:07:45,210 >> แต่ของหลักสูตรนี้ไม่เป็นความจริง 165 00:07:45,210 --> 00:07:48,243 สิ่งใดที่มนุษย์เราจะทำอย่างไรเมื่อเราต้องการ การนับสูงกว่าเช่น 999? 166 00:07:48,243 --> 00:07:51,000 167 00:07:51,000 --> 00:07:53,900 เพียงแค่ดำเนินการอย่างหนึ่งและเพียงแค่ เพิ่มหลักที่สี่ไปทางซ้าย 168 00:07:53,900 --> 00:07:55,070 และเพื่อที่เราจะทำได้แน่นอน 169 00:07:55,070 --> 00:07:57,900 เราอาจมีแปด วางและสถานที่ของ 16 170 00:07:57,900 --> 00:08:02,000 และสถานที่ที่ 32, 64, และคุณ 128-- ก็สามารถเก็บไปได้ถึงอินฟินิตี้ 171 00:08:02,000 --> 00:08:04,640 ดังนั้นศูนย์เหล่านี้และ ones-- ที่เรียกว่า system-- ไบนารี 172 00:08:04,640 --> 00:08:10,290 เป็นสิ่งที่นักวิทยาศาสตร์คอมพิวเตอร์จะ โดยทั่วไปเรียกบิตหรือเลขฐานสอง 173 00:08:10,290 --> 00:08:13,590 >> แต่ตอนนี้ทำอย่างไรเราจะได้รับจาก แนวคิดหรือกราฟิกของสิ่งเหล่านี้ 174 00:08:13,590 --> 00:08:14,620 ไปยังคอมพิวเตอร์ที่เกิดขึ้นจริง? 175 00:08:14,620 --> 00:08:17,170 เราดูเหมือนจะข้ามขั้นตอนที่นี่ 176 00:08:17,170 --> 00:08:20,210 ดีป้อนข้อมูลเพียงในตอนท้าย ของวันที่แล็ปท็อปของฉันที่นี่ 177 00:08:20,210 --> 00:08:22,060 การไหลของกระแสไฟฟ้านี้ 178 00:08:22,060 --> 00:08:24,560 แม้ว่าจะได้รับเป็นเวลานาน เวลาตั้งแต่ที่คุณคิดเกี่ยวกับ 179 00:08:24,560 --> 00:08:26,580 หรือไม่เคยคิดเกี่ยวกับ วิธีการไฟฟ้าทำงาน 180 00:08:26,580 --> 00:08:30,909 มีอิเล็กตรอนไหลในหรือ ออกมาและที่เป็นชนิดของการป้อนข้อมูลของฉัน 181 00:08:30,909 --> 00:08:34,659 >> ดังนั้นถ้านั่นคือทั้งหมดที่เรา ได้รับเป็นข้อมูลที่นี่ 182 00:08:34,659 --> 00:08:36,830 สิ่งที่เราสามารถทำอะไรกับข้อมูลที่? 183 00:08:36,830 --> 00:08:40,040 ดีเราอาจคิดว่าเป็นศูนย์ เป็นเพียงกรณีที่ไม่มีไฟฟ้า 184 00:08:40,040 --> 00:08:42,540 ไม่มีอะไรที่เป็น flowinw ไม่มีอะไร ย้ายไม่มีอะไรเกิดขึ้น 185 00:08:42,540 --> 00:08:44,690 นั่นเป็นเพียงการเริ่มต้นศูนย์ state-- 186 00:08:44,690 --> 00:08:48,200 แต่ถ้ามีไฟฟ้าไหลทำไม เราไม่เพียงโดยพลการ แต่ทั่วโลก 187 00:08:48,200 --> 00:08:50,250 อย่างต่อเนื่องเรียกว่าหนึ่ง 188 00:08:50,250 --> 00:08:54,760 >> ดังนั้นเพียงโดยมีไม่มีอำนาจ เรามีศูนย์ใช่อำนาจ 189 00:08:54,760 --> 00:08:57,520 เรามี one-- ไม่มีอำนาจใช่อำนาจ 190 00:08:57,520 --> 00:09:01,520 และในทางที่ใช้บางสิ่งบางอย่าง กายมากขึ้นหรืออิเล็กทรอนิกส์ 191 00:09:01,520 --> 00:09:05,340 เราจะเริ่มต้นที่จะใช้ความคิดนี้ บางสิ่งบางอย่างอย่างใดอย่างหนึ่งหรือเป็นศูนย์ 192 00:09:05,340 --> 00:09:07,230 อันที่จริงเราก็จะทำมันมากกว่าที่นี่ 193 00:09:07,230 --> 00:09:10,590 ดังนั้นที่นี่ฉันไม่สาม แต่ แปดหลอดไฟซึ่งแต่ละ 194 00:09:10,590 --> 00:09:11,810 มีสวิทช์ของตัวเอง 195 00:09:11,810 --> 00:09:15,760 >> ดังนั้นถ้าผมต้องการที่จะเป็นตัวแทน จำนวนเจ็ดนี่ 196 00:09:15,760 --> 00:09:18,510 ผมอาจจะเปิดทั้งสามหลอดไฟ 197 00:09:18,510 --> 00:09:21,470 และแน่นอนภายในของ คอมพิวเตอร์ของฉันเป็นล้าน 198 00:09:21,470 --> 00:09:25,650 พันล้านของสิ่งที่เป็นเพียง มีขนาดเล็กกว่าที่เรียกว่าทรานซิสเตอร์ 199 00:09:25,650 --> 00:09:27,330 สวิทช์ที่คุณเพิ่งเปิดและปิด 200 00:09:27,330 --> 00:09:30,420 ดังนั้นเหล่านี้เป็น big-- ค่อนข้าง สวิทช์ big-- ภายใน laptop-- ของฉัน 201 00:09:30,420 --> 00:09:32,150 เป็นจำนวนมากหลายหลาย สวิทช์อื่น ๆ อีกมากมาย 202 00:09:32,150 --> 00:09:35,160 แต่สิ่งที่พวกเขาทำคือว่าในปัจจุบันผู้ เปิดบางสิ่งบางอย่างเกี่ยวกับการเปิดปิดบางสิ่งบางอย่าง 203 00:09:35,160 --> 00:09:38,076 และเป็นเช่นคอมพิวเตอร์สามารถเป็นตัวแทน กับผู้คนนับล้านหรือพันล้าน 204 00:09:38,076 --> 00:09:40,480 ของทรานซิสเตอร์จำนวนมากและ จำนวนของศูนย์และคน 205 00:09:40,480 --> 00:09:43,160 และมีฮาร์ดแวร์อื่น ๆ ยังคงที่ ช่วยให้คุณเก็บข้อมูลระยะยาว 206 00:09:43,160 --> 00:09:45,243 เพื่อที่ว่าเมื่อคุณดึง เสียบ, คุณไม่ได้สูญเสียมันไป 207 00:09:45,243 --> 00:09:46,900 แต่ที่เรื่องสำหรับวันอื่น 208 00:09:46,900 --> 00:09:51,170 >> ดังนั้นสิ่งที่เราสามารถทำอะไรกับบิตเหล่านี้หรือไม่ 209 00:09:51,170 --> 00:09:54,309 เราก็อาจจะใช้ ดันออกจาก me-- 210 00:09:54,309 --> 00:09:56,600 บางคนอาจจะต้องการที่จะมา ขึ้นที่นี่และมีขึ้นสาธิต? 211 00:09:56,600 --> 00:09:57,516 ผมเห็นมือนี้เป็นครั้งแรก 212 00:09:57,516 --> 00:09:58,709 คุณชื่ออะไร? 213 00:09:58,709 --> 00:09:59,250 Maday: Maday 214 00:09:59,250 --> 00:10:00,542 DAVID ลัน: Maday มาขึ้น 215 00:10:00,542 --> 00:10:01,250 ยินดีที่ได้พบคุณ. 216 00:10:01,250 --> 00:10:02,390 Maday: ยินดีที่ได้พบคุณ 217 00:10:02,390 --> 00:10:02,930 >> DAVID ลัน: มาทางนี้ 218 00:10:02,930 --> 00:10:04,182 ฉันจะไม่ต้องริมฝีปากคุณขึ้น 219 00:10:04,182 --> 00:10:04,682 ก็ดี 220 00:10:04,682 --> 00:10:11,090 ดังนั้นที่นี่เรามี notice-- หนึ่ง two-- เราจะแก้ไขที่ out-- หนึ่งสองสี่ 221 00:10:11,090 --> 00:10:13,350 แปด, 16, 32, 64, 128 222 00:10:13,350 --> 00:10:14,220 นี่คือเจตนา 223 00:10:14,220 --> 00:10:17,370 มีแปดบิตเป็น here-- ศูนย์ digits-- ไบนารีและคน 224 00:10:17,370 --> 00:10:21,460 และบิตเป็นหน่วยงานของ measure-- ไม่เป็นประโยชน์หน่วยของการวัด 225 00:10:21,460 --> 00:10:21,999 ลงบนตัวของมันเอง 226 00:10:21,999 --> 00:10:24,290 โดยปกติแล้วคุณต้องการอย่างน้อย แปดสิ่งเหล่านี้หรือที่เรียกว่า 227 00:10:24,290 --> 00:10:24,790 ไบต์ 228 00:10:24,790 --> 00:10:26,230 ดังนั้นเราจึงมีไบต์ของบิตที่นี่ 229 00:10:26,230 --> 00:10:31,130 >> ดังนั้นถ้าเราต้องการที่จะท้าทายคุณด้วย เช่นสะกดออกในไบนารี 230 00:10:31,130 --> 00:10:33,230 ค่านี้ here-- 42 231 00:10:33,230 --> 00:10:35,140 ต้องการที่จะใช้แทงที่ว่า? 232 00:10:35,140 --> 00:10:36,034 >> Maday: [ไม่ได้ยิน] 233 00:10:36,034 --> 00:10:38,700 DAVID ลัน: ใช่เพียงแค่ผลักดัน สวิทช์สีขาวเล็ก ๆ น้อย ๆ ในด้านหน้า 234 00:10:38,700 --> 00:10:41,290 และคุณต้องการที่จะสะกด ออก 42 และขึ้นสำหรับการคว้า 235 00:10:41,290 --> 00:10:44,061 ความเครียด CS50 นี้ ลูกถ้าคุณได้รับนี้ 236 00:10:44,061 --> 00:10:44,560 ก็ดี 237 00:10:44,560 --> 00:10:46,420 เพื่อให้คุณมี 32 238 00:10:46,420 --> 00:10:48,430 เรากำลังจะต้อง 42 239 00:10:48,430 --> 00:10:51,410 ดังนั้นที่แปดดังนั้นที่ 40 240 00:10:51,410 --> 00:10:54,160 และทำอย่าง excellent-- มาก 241 00:10:54,160 --> 00:10:55,186 ขอขอบคุณ. 242 00:10:55,186 --> 00:10:58,790 >> [APPLAUSE] 243 00:10:58,790 --> 00:10:59,290 ก็ดี 244 00:10:59,290 --> 00:11:00,623 ดังนั้นเราจึงมีความเครียดมากขึ้นลูกหนึ่ง 245 00:11:00,623 --> 00:11:03,595 ลองทำเช่นนี้อีกครั้ง แต่ถ้าเราจะ 246 00:11:03,595 --> 00:11:05,368 หนึ่งในอาสาสมัครอื่น ๆ ? 247 00:11:05,368 --> 00:11:07,970 ลูกความเครียดฟรีลูกความเครียดฟรี 248 00:11:07,970 --> 00:11:08,470 ตกลง. 249 00:11:08,470 --> 00:11:11,640 มากกว่าที่นี่อยู่ตรงกลาง คุณต้องการที่จะลงมา? 250 00:11:11,640 --> 00:11:14,100 ก็ดี 251 00:11:14,100 --> 00:11:15,552 ฉันรู้ว่า. 252 00:11:15,552 --> 00:11:16,360 เราจะไปที่นั่น. 253 00:11:16,360 --> 00:11:20,818 >> ดังนั้นตัวเลข here-- มาลง 254 00:11:20,818 --> 00:11:21,567 คุณชื่ออะไร? 255 00:11:21,567 --> 00:11:21,984 >> DAVEY: ดาวี่ 256 00:11:21,984 --> 00:11:22,820 >> DAVID ลัน: ดาวี่ 257 00:11:22,820 --> 00:11:23,320 ตกลง. 258 00:11:23,320 --> 00:11:24,810 มาถึงดาวี่ 259 00:11:24,810 --> 00:11:25,890 ยินดีที่ได้พบคุณ. 260 00:11:25,890 --> 00:11:28,639 และสิ่งที่เรากำลังจะมีคุณ spell-- ถ้าคุณสามารถมีอิทธิพล 261 00:11:28,639 --> 00:11:32,810 เพียงหนึ่ง moment-- เป็นจำนวน 50 262 00:11:32,810 --> 00:11:36,293 แต่ แต่ แต่ แต่ แต่เหล่านี้เป็น แม่เหล็กโรงเรียนเกรดเหตุผล 263 00:11:36,293 --> 00:11:39,370 264 00:11:39,370 --> 00:11:43,327 เพียงแค่มีเพียงเล็กน้อยยากทั้งหมดใช่มั้ย? 265 00:11:43,327 --> 00:11:44,160 ยังคงมีแปด 266 00:11:44,160 --> 00:11:46,820 267 00:11:46,820 --> 00:11:47,320 ก็ดี 268 00:11:47,320 --> 00:11:48,486 ดังนั้นสิ่งที่เรามีอยู่ที่นั่น? 269 00:11:48,486 --> 00:11:51,356 เรามี 32 270 00:11:51,356 --> 00:11:54,344 ดี 271 00:11:54,344 --> 00:11:58,610 32 บวก 16 จะช่วยให้เรา 48-- เพื่อให้ใกล้เคียง 272 00:11:58,610 --> 00:12:00,390 และที่ยอดเยี่ยม 273 00:12:00,390 --> 00:12:02,831 ขอแสดงความยินดีดาวี่เช่นกัน 274 00:12:02,831 --> 00:12:05,720 >> [APPLAUSE] 275 00:12:05,720 --> 00:12:06,516 >> ก็ดี 276 00:12:06,516 --> 00:12:09,390 ดังนั้นเราจึงสามารถทำเช่นนี้ได้นานตลอดวันและ จะไม่ได้รับทุกสิ่งที่มากขึ้น 277 00:12:09,390 --> 00:12:10,800 ที่น่าสนใจและท้าทายมากขึ้น 278 00:12:10,800 --> 00:12:13,250 แต่ที่จริง point-- เป็นวิธีการที่ค่อนข้างง่าย 279 00:12:13,250 --> 00:12:16,930 มันเป็นในตอนท้ายของวันที่สิ่งที่ คอมพิวเตอร์ไม่ในการจัดเก็บข้อมูล 280 00:12:16,930 --> 00:12:21,740 ในการจัดเก็บปัจจัยการผลิตและในท้ายที่สุด เก็บหรือเป็นตัวแทนของผู้ที่เอาท์พุท 281 00:12:21,740 --> 00:12:23,750 แต่ตัวเลขเพียงอย่างเดียวไม่ได้ ทุกสิ่งที่น่าสนใจ 282 00:12:23,750 --> 00:12:26,069 >> ดังนั้นมนุษย์บางปีที่ผ่านมา ตัดสินใจที่คุณรู้อะไรไหม 283 00:12:26,069 --> 00:12:27,860 มันคงจะดีถ้า คอมพิวเตอร์ไม่ใช่แค่ 284 00:12:27,860 --> 00:12:31,030 เครื่องคิดเลขสำหรับการคำนวณที่ การดำเนินงาน แต่จริงอาจ 285 00:12:31,030 --> 00:12:35,209 ทำสิ่งที่ต้องการการประมวลผลคำหรือ อีเมลหรือสาขาที่ทันสมัย​​มากขึ้น 286 00:12:35,209 --> 00:12:36,500 เหล่านี้ชนิดของเทคโนโลยี 287 00:12:36,500 --> 00:12:40,680 และเพื่อให้โลกตัดสินใจ โดยพลการ แต่อย่างกว้างขวาง 288 00:12:40,680 --> 00:12:44,380 ว่าถ้าคุณต้องการที่จะเก็บเงินทุน ตัวอักษร A ในคอมพิวเตอร์คุณรู้อะไรไหม 289 00:12:44,380 --> 00:12:47,730 ขอเพียงทุกคนยอมรับในการจัดเก็บ รูปแบบของศูนย์และ ones-- บาง 290 00:12:47,730 --> 00:12:52,422 bits-- ว่าในท้ายที่สุด หมายถึงจำนวนทศนิยม 65 291 00:12:52,422 --> 00:12:53,630 เราจะเป็นเพียงแค่ทั้งหมดเห็นด้วยกับที่ 292 00:12:53,630 --> 00:12:56,620 >> 66 จะเป็นตัวแทน B, 67 จะเป็นตัวแทนของ C, 293 00:12:56,620 --> 00:13:00,210 และมีรูปแบบที่อัดแน่นของอื่น ๆ ของ ศูนย์และคนหรือหมายเลขอ้างอิง 294 00:13:00,210 --> 00:13:02,224 ที่จะเป็นตัวแทนของ ตัวอักษรอื่น ๆ ยังคง 295 00:13:02,224 --> 00:13:04,390 ดังนั้นหากคุณชนิดของจิตใจ ดูดซับนี้สักครู่ 296 00:13:04,390 --> 00:13:10,900 ฉันจงใจนำขึ้นผ่าน ฉันที่ H 72 และฉันคือ 73 297 00:13:10,900 --> 00:13:15,830 หากคอมพิวเตอร์จากนั้นในบริบทของ โปรแกรมประมวลผลคำหรือ e-mail, 298 00:13:15,830 --> 00:13:19,620 เปิดเผยภายใต้เครื่องดูดควันที่จะมีการ รูปแบบเหล่านี้ของแบบแผน bits-- 299 00:13:19,620 --> 00:13:22,500 เป็นตัวแทนของบิต 72 แล้ว 73 แล้ว 33-- 300 00:13:22,500 --> 00:13:26,640 สิ่งนี้อาจสะกดในโปรแกรมที่? 301 00:13:26,640 --> 00:13:28,150 >> ดังนั้นสวัสดีและแล้วสิ่งที่ 302 00:13:28,150 --> 00:13:31,460 เราไม่จำเป็นต้องรู้ แต่แน่นอน 33-- ไม่ได้อยู่ในแผนภูมิ earlier-- 303 00:13:31,460 --> 00:13:33,170 เป็นเพียงเครื่องหมายอัศเจรีย์ 304 00:13:33,170 --> 00:13:38,870 ดังนั้น 72 H, 73 คือผม 33 ที่เกิดขึ้น จะเป็นเครื่องหมายอัศเจรีย์ยังคง 305 00:13:38,870 --> 00:13:41,719 แต่นั่นคือทั้งหมดที่ดีและดี และในความเป็นจริงในปัจจุบันมากกว่า 306 00:13:41,719 --> 00:13:43,760 เพียงแค่ใช้เจ็ดหรือแปด บิตขอบคุณบางสิ่งบางอย่าง 307 00:13:43,760 --> 00:13:46,530 เรียกว่าเมื่อเทียบกับ Unicode เพื่อ ASCII กลับในวันที่ 308 00:13:46,530 --> 00:13:50,010 เราสามารถเป็นตัวแทนของจริงมากยิ่งขึ้น ตัวละครที่น่าสนใจมากกว่าเพียงแค่ 309 00:13:50,010 --> 00:13:52,980 ต้นฉบับตัวอักษรภาษาอังกฤษเหล่านี้ลำเอียง 310 00:13:52,980 --> 00:13:56,030 แต่เราก็ยังสามารถเป็นตัวแทนของแม้กระทั่ง สิ่ง neater เช่นสี 311 00:13:56,030 --> 00:13:59,750 >> หากคุณเคยได้ยินคำย่อ RGB, สีแดง, สีเขียว, สีฟ้า, ว่า 312 00:13:59,750 --> 00:14:03,510 ก็หมายความว่าคอมพิวเตอร์ มักจะใช้สามชุด bits-- 313 00:14:03,510 --> 00:14:06,760 จำนวนบิตบางอย่างที่เป็นตัวแทนของ จำนวนเท่าใดสีแดงที่คุณต้องการ 314 00:14:06,760 --> 00:14:08,940 อีกชุดหนึ่งของบิตสำหรับ เท่าใดสีเขียวที่คุณต้องการ 315 00:14:08,940 --> 00:14:11,430 และอีกจำนวนชุดสำหรับ วิธีการสีฟ้าที่คุณต้องการ 316 00:14:11,430 --> 00:14:14,457 ดังนั้นจำนวนมากหมายความว่าจำนวนมาก สีแดงเล็ก ๆ จำนวนมากหมายความว่าไม่มีสีแดง 317 00:14:14,457 --> 00:14:16,290 และอื่น ๆ เหล่านี้เป็นชนิด ค่ากลางที่นี่ 318 00:14:16,290 --> 00:14:20,180 >> ดังนั้นให้ฉันแดงบางส่วนให้ฉันบาง สีเขียวและให้ฉันนิด ๆ หน่อย ๆ สีฟ้า 319 00:14:20,180 --> 00:14:24,260 และถ้าคุณผสมทั้งสามเฉดสี สีร่วมกันในกรณีนี้ 320 00:14:24,260 --> 00:14:26,850 คุณจะได้รับร่มเงามืดนี้ สีเหลืองหรือสีน้ำตาล 321 00:14:26,850 --> 00:14:32,330 แต่รูปแบบของแปดบวก แปดบวก eight-- ดังนั้น 24 bits-- 322 00:14:32,330 --> 00:14:36,550 จากซ้ายไปขวาคือวิธีที่คอมพิวเตอร์ จะเป็นตัวแทนของสีที่เฉพาะเจาะจง 323 00:14:36,550 --> 00:14:38,090 ตอนนี้เป็นเพียงจุดบนหน้าจอ 324 00:14:38,090 --> 00:14:42,230 ถ้าคุณมองอย่างใกล้ชิดจริงๆที่ทีวีของคุณ คอมพิวเตอร์ของคุณจะเห็นจุดหรือพิกเซล 325 00:14:42,230 --> 00:14:45,420 และถ้าคุณมีตารางทั้งหมดของ พิกเซลในแนวนอนและแนวตั้ง 326 00:14:45,420 --> 00:14:46,630 คุณมีภาพ 327 00:14:46,630 --> 00:14:49,029 แล้วถ้าคุณใช้ ภาพและแล้วล้าง 328 00:14:49,029 --> 00:14:52,070 แสดงตัวเองภาพอื่นอีก ภาพภาพอีกภาพอีกแบบหนึ่ง 329 00:14:52,070 --> 00:14:54,760 ได้อย่างรวดเร็วจริงๆคุณแน่นอนมีภาพยนตร์ 330 00:14:54,760 --> 00:14:56,109 >> และเพื่อให้ทราบที่เราเริ่มต้น 331 00:14:56,109 --> 00:14:57,650 เราเริ่มต้นด้วยศูนย์เหล่านี้และคน 332 00:14:57,650 --> 00:15:00,570 เราทำงานจากที่นั่นไปทศนิยม ตัวเลขวิธีการที่เราเป็นตัวแทนของพวกเขา 333 00:15:00,570 --> 00:15:02,070 ตอนนี้เรามีตัวอักษรของตัวอักษร 334 00:15:02,070 --> 00:15:05,664 แต่ในบริบทอื่น ๆ รอเราสามารถใช้ ไม่กี่บิตมากขึ้นและสีแทน 335 00:15:05,664 --> 00:15:07,830 ทันทีที่คุณมี ความสามารถในการแสดงสี, 336 00:15:07,830 --> 00:15:11,200 คุณมีความสามารถที่จะเป็นตัวแทน ภาพถ่ายและภาพเคลื่อนไหว GIF 337 00:15:11,200 --> 00:15:13,780 และตัวละครอื่น ๆ บนหน้าจอ 338 00:15:13,780 --> 00:15:17,160 และเมื่อคุณมีทั้งกลุ่มของ ภาพการบินที่บินโดยมนุษย์ในครั้งเดียว 339 00:15:17,160 --> 00:15:21,480 ดูเหมือนว่าภาพเคลื่อนไหว และเพื่อให้คุณได้รับวิดีโอเช่นกัน 340 00:15:21,480 --> 00:15:23,460 >> ดังนั้นการใช้เหล่านี้มาก วิทยาการง่ายทำเรา 341 00:15:23,460 --> 00:15:28,070 มีวิธีการที่เป็นตัวแทนของ ท้ายที่สุดทุกรูปแบบของสื่อเหล่านี้ 342 00:15:28,070 --> 00:15:30,450 และเราได้แยกอีกครั้ง และอีกครั้งและอีกครั้งจนกว่าเรา 343 00:15:30,450 --> 00:15:33,467 ได้รับจากระดับต่ำสุด ให้อยู่ในระดับสูงสุดนี้ 344 00:15:33,467 --> 00:15:35,550 เพื่อที่จะช่วยให้เรานี้ ความคิดทั่วไปของสิ่งที่เป็นนามธรรม 345 00:15:35,550 --> 00:15:36,990 แต่เราเริ่มต้นที่นี่ 346 00:15:36,990 --> 00:15:38,790 >> ที่นี่ตอนนี้เราอาจจะ เป็นตัวแทนในคอมพิวเตอร์ 347 00:15:38,790 --> 00:15:41,920 ปัจจัยการผลิตของเรามีศูนย์และคน, เอาท์พุทของเราในศูนย์และคน, 348 00:15:41,920 --> 00:15:43,640 แต่สิ่งที่จะไปภายในกล่อง? 349 00:15:43,640 --> 00:15:46,080 นั่นคือสิ่งที่คอมพิวเตอร์ วิทยาศาสตร์ได้รับน่าสนใจ 350 00:15:46,080 --> 00:15:49,770 นั่นคือสิ่งที่คุณนำมาจริงของคุณ จิตใจของตัวเองที่จะแบกรับในการแก้ปัญหา 351 00:15:49,770 --> 00:15:52,590 ตอนนี้เราสามารถกำหนดสำหรับ ส่วนที่เหลือของภาคการศึกษาใช่ 352 00:15:52,590 --> 00:15:53,870 ฉันรู้ว่าการทำงานวิธีไบนารี 353 00:15:53,870 --> 00:15:57,942 ผมจำได้ว่า Ascii หรือ Unicode-- การทำแผนที่เพื่อ letters-- งาน 354 00:15:57,942 --> 00:15:59,650 และแน่นอนยืน เราจะให้เหตุผลว่า 355 00:15:59,650 --> 00:16:03,470 จะเป็นตัวแทนของสีแดงและสีเขียวและ สีฟ้า, และเป็นตัวแทนของมัลติมีเดียเช่นกัน 356 00:16:03,470 --> 00:16:05,390 แต่นี้เป็นสิ่งที่น่าสนใจ 357 00:16:05,390 --> 00:16:09,790 นี่คือสิ่งที่ทำให้ใครบางคน ความสามารถในการแก้ปัญหา 358 00:16:09,790 --> 00:16:11,980 >> และเป็นหนึ่งในปัญหาดังกล่าว เราชอบที่จะทำจริง 359 00:16:11,980 --> 00:16:15,345 คือการเข้าร่วมประชุมหรือ การทำเช่นนี้อัลกอริทึม 360 00:16:15,345 --> 00:16:16,470 และอีกครั้งผมอาจจะทำเช่นนี้ 361 00:16:16,470 --> 00:16:19,580 ฉันอาจจะทำหนึ่งสองสามสี่ ห้าหกเจ็ดแปดเก้า 362 00:16:19,580 --> 00:16:21,520 และฉันจะเขียนมัน ลงไปติดตามได้ 363 00:16:21,520 --> 00:16:23,769 แต่นั่นเป็นเพียงวิธีการที่ฉันจะ แทนข้อมูล 364 00:16:23,769 --> 00:16:27,550 หรือฉันสามารถทำเช่นนี้ faster-- สองสี่ หกแปดสิบ, 12, 14, 16, 18, 20, 365 00:16:27,550 --> 00:16:30,380 22-- มันรู้สึกเหมือนสองครั้ง เป็นไปอย่างรวดเร็ว แต่ก็ยังคง 366 00:16:30,380 --> 00:16:32,050 จะใช้เวลามากทั้งเวลา 367 00:16:32,050 --> 00:16:35,990 >> แต่ปรากฎว่าถ้าเราใช้ประโยชน์เลย อีก resource-- และแน่นอนคอมพิวเตอร์ 368 00:16:35,990 --> 00:16:38,940 วันนี้มีหลายซีพียูหรือสมอง 369 00:16:38,940 --> 00:16:41,970 มันจะเปิดออกคอมพิวเตอร์สามารถ ทำหลายสิ่งหลายอย่างในครั้งเดียว 370 00:16:41,970 --> 00:16:44,460 และแน่นอนเราในห้องนี้ อาจหมายถึงตรงนี้ 371 00:16:44,460 --> 00:16:47,130 >> ดังนั้นจึงเป็นเรื่องเล็ก ๆ น้อย ๆ เพื่อเข้าสังคม ที่น่าอึดอัดใจ แต่ถ้าคุณจะมีอารมณ์ขันฉัน 372 00:16:47,130 --> 00:16:51,550 เพียงสามขั้นตอนให้ ผมขอให้ทุกคนในสถานที่ที่มีเพียงแค่ 373 00:16:51,550 --> 00:16:54,640 ที่จะยืนขึ้นสักครู่ 374 00:16:54,640 --> 00:16:57,380 ยืนขึ้น. 375 00:16:57,380 --> 00:17:01,580 ดังนั้นคิดว่าตัวเองจำนวน one-- เพื่อให้ทุกคนในห้องนี้ 376 00:17:01,580 --> 00:17:05,010 ยกเว้นคนที่ไม่ได้ บังคับกำลังคิดจำนวนหนึ่ง 377 00:17:05,010 --> 00:17:06,510 เพื่อให้เป็นหมายเลขของคุณในขณะนี้ 378 00:17:06,510 --> 00:17:09,399 นั่นคือขั้นตอนแรกหรือเป็น นักวิทยาศาสตร์คอมพิวเตอร์หรือโปรแกรมเมอร์ 379 00:17:09,399 --> 00:17:11,827 โดยทั่วไปแล้วจะทำอย่างไรเราจะ ที่จะเริ่มต้นนับที่ศูนย์ 380 00:17:11,827 --> 00:17:14,410 หากหมายเลขที่เล็กที่สุดที่เราสามารถทำได้ แทนด้วยหลอดไฟเหล่านั้น 381 00:17:14,410 --> 00:17:17,410 เป็นศูนย์โดยเพียงแค่ออกจากพวกเขา ทั้งหมดปิดฉันอาจมีเพียง 382 00:17:17,410 --> 00:17:19,271 เริ่มนับจาก เป็นศูนย์แทนหนึ่ง 383 00:17:19,271 --> 00:17:21,020 และนั่นคือสิ่งที่ นักวิทยาศาสตร์คอมพิวเตอร์ทำ 384 00:17:21,020 --> 00:17:23,750 ดังนั้นขั้นตอนศูนย์ยืนขึ้นและ คิดว่าจำนวนหนึ่ง 385 00:17:23,750 --> 00:17:26,339 ขั้นต่อไปคือคู่ this-- ปิดกับใครบางคนที่ยืนอยู่ 386 00:17:26,339 --> 00:17:27,660 และเพิ่มจำนวนของคุณร่วมกัน 387 00:17:27,660 --> 00:17:30,660 388 00:17:30,660 --> 00:17:32,850 ยอดเยี่ยม 389 00:17:32,850 --> 00:17:37,640 >> ดังนั้นในขณะนี้ในเวลา ทุกคนมีส่วนร่วมอย่างแท้จริง 390 00:17:37,640 --> 00:17:41,930 เป็นความคิดของหมายเลข 2 ยกเว้น สำหรับคนคนหนึ่งแปลกถ้าเรามี 391 00:17:41,930 --> 00:17:43,450 เป็นเลขคี่ของผู้คนในห้องพัก 392 00:17:43,450 --> 00:17:50,640 และตอนนี้ขั้นตอนที่สามนี่เป็นไปได้ จะ this-- หนึ่งของคุณควรจะนั่งลง 393 00:17:50,640 --> 00:17:54,490 หนึ่งของคุณควรจะนั่งลง และถ้าคุณยังคงยืน 394 00:17:54,490 --> 00:17:56,590 กลับไปขั้นตอนที่หนึ่ง 395 00:17:56,590 --> 00:18:44,799 396 00:18:44,799 --> 00:18:45,790 ก็ดี 397 00:18:45,790 --> 00:19:00,760 398 00:19:00,760 --> 00:19:01,650 ก็ดี 399 00:19:01,650 --> 00:19:03,880 ดังนั้นผู้คนมากขึ้น ควรจะนั่งลง 400 00:19:03,880 --> 00:19:08,280 ขอให้สังเกตว่านี้ได้ชักนำให้เกิด loop-- ชนิดของวงจรบาง 401 00:19:08,280 --> 00:19:11,983 บางส่วนของคุณควรจะติดอยู่อย่างเชื่องช้า จะกลับมาระหว่างขั้นตอนเดียว 402 00:19:11,983 --> 00:19:14,180 และสองหนึ่งและสองหนึ่งและสอง 403 00:19:14,180 --> 00:19:21,190 404 00:19:21,190 --> 00:19:21,810 ไม่เป็นไร. 405 00:19:21,810 --> 00:19:22,630 ข้อผิดพลาดครั้งแรกของเรา 406 00:19:22,630 --> 00:19:24,740 เราจะจัดการกับที่ 407 00:19:24,740 --> 00:19:25,320 ก็ดี 408 00:19:25,320 --> 00:19:27,370 ให้ฉันพยายามที่จะกระตุ้นให้เกิดสิ่งที่พร้อม 409 00:19:27,370 --> 00:19:31,454 >> ในทางทฤษฎีเพียงคนคนหนึ่งที่ยืนอยู่ ที่ทุกคนยังคงจับคู่ปิด 410 00:19:31,454 --> 00:19:33,870 แต่ให้ฉันเร็วขึ้น กับคนที่ยังคงยืนอยู่ 411 00:19:33,870 --> 00:19:35,480 สิ่งที่คุณคิดว่าการที่จำนวน? 412 00:19:35,480 --> 00:19:36,070 46 413 00:19:36,070 --> 00:19:36,570 ตกลง. 414 00:19:36,570 --> 00:19:37,820 ไปข้างหน้าและนั่งลง 415 00:19:37,820 --> 00:19:39,190 พวกคุณยังคงยืนอยู่ 416 00:19:39,190 --> 00:19:42,130 ผู้ที่ยังคงยืนอยู่? 417 00:19:42,130 --> 00:19:45,240 สิ่งที่คุณคิดว่าการที่จำนวน? 418 00:19:45,240 --> 00:19:46,160 ตกลง. 419 00:19:46,160 --> 00:19:47,900 >> ดังนั้นเราจะกลับมาที่คุณ 420 00:19:47,900 --> 00:19:49,630 ข้างหลัง? 421 00:19:49,630 --> 00:19:50,790 นั่นคืออะไร? 422 00:19:50,790 --> 00:19:53,100 22 423 00:19:53,100 --> 00:19:56,540 ตกลงคนอื่นขึ้น top-- ใช่? 424 00:19:56,540 --> 00:19:57,720 34 425 00:19:57,720 --> 00:19:58,300 ตกลง. 426 00:19:58,300 --> 00:20:02,780 กว่าที่นี่ใน right-- ของฉันขึ้นที่นี่? 427 00:20:02,780 --> 00:20:06,820 132, ดีมาก 428 00:20:06,820 --> 00:20:08,380 22? 429 00:20:08,380 --> 00:20:08,990 >> ตกลง. 430 00:20:08,990 --> 00:20:10,031 และผู้ที่ยังคงยืนอยู่? 431 00:20:10,031 --> 00:20:11,000 กว่าที่นี่? 432 00:20:11,000 --> 00:20:14,520 46, ดีมาก 433 00:20:14,520 --> 00:20:16,890 72 434 00:20:16,890 --> 00:20:18,220 ฉันไม่สามารถแผงลอยมากอีกต่อไป 435 00:20:18,220 --> 00:20:20,520 ใช่? 436 00:20:20,520 --> 00:20:22,490 30 ดี 437 00:20:22,490 --> 00:20:24,120 กว่าที่นี่? 438 00:20:24,120 --> 00:20:26,200 23? 439 00:20:26,200 --> 00:20:27,270 23 440 00:20:27,270 --> 00:20:30,920 >> และผมคิดว่าของทุกคน ยกเว้นพวกคุณไม่มีความกดดัน 441 00:20:30,920 --> 00:20:32,860 โอ้รอ 442 00:20:32,860 --> 00:20:33,360 28? 443 00:20:33,360 --> 00:20:37,500 444 00:20:37,500 --> 00:20:38,281 เพียงแปด 445 00:20:38,281 --> 00:20:38,780 ตกลง. 446 00:20:38,780 --> 00:20:41,030 เพียงแปด 447 00:20:41,030 --> 00:20:42,580 ลงที่นี่? 448 00:20:42,580 --> 00:20:44,570 30 449 00:20:44,570 --> 00:20:47,344 23 450 00:20:47,344 --> 00:20:47,843 24 451 00:20:47,843 --> 00:20:50,810 452 00:20:50,810 --> 00:20:52,310 18 453 00:20:52,310 --> 00:20:54,690 นี่คือการดำเนินการที่เลวร้ายที่สุด ขั้นตอนวิธีการนี​​้เคย 454 00:20:54,690 --> 00:20:55,190 ตกลง. 455 00:20:55,190 --> 00:20:59,760 เพื่อให้ทุกคนอื่น? 456 00:20:59,760 --> 00:21:00,421 ใครอีกไหม? 457 00:21:00,421 --> 00:21:00,920 ตกลง. 458 00:21:00,920 --> 00:21:03,300 อีกหนึ่ง. 459 00:21:03,300 --> 00:21:04,400 16? 460 00:21:04,400 --> 00:21:04,900 ตกลง. 461 00:21:04,900 --> 00:21:05,510 16 462 00:21:05,510 --> 00:21:06,010 ก็ดี 463 00:21:06,010 --> 00:21:09,070 ดังนั้นถ้าฉันไม่ได้คิดถึงทุกคนใน แสงจ้าที่นี่เมื่อผมกด Enter, 464 00:21:09,070 --> 00:21:13,091 เราจะเห็นได้ว่าอัลกอริทึมที่ จำนวนรวมของคนในแซนเดอ 465 00:21:13,091 --> 00:21:16,340 เพราะอีกครั้งมันเหมือนกับว่าทุกคน ในขณะที่คุณนั่งลงผ่านหมายเลขของคุณออก 466 00:21:16,340 --> 00:21:19,215 ให้คนอื่นให้คนอื่น ให้กับบุคคลอื่นเพื่อที่ว่าในทางทฤษฎี 467 00:21:19,215 --> 00:21:22,304 ในท้ายที่สุดเพียงคนเดียวที่น่าอึดอัดใจ คนที่ควรจะทิ้งให้ยืน 468 00:21:22,304 --> 00:21:22,970 แต่ที่ดี 469 00:21:22,970 --> 00:21:24,290 เราเร่งขึ้นด้วยตนเอง 470 00:21:24,290 --> 00:21:27,590 มันเป็นเรื่องยากโดยเฉพาะอย่างยิ่งที่จะเห็น ในพื้นที่นี้โดยเฉพาะอย่างยิ่ง 471 00:21:27,590 --> 00:21:34,200 >> และจำนวนรวมของผู้คน เราคิดว่ามีอยู่ที่นี่เป็น 546 472 00:21:34,200 --> 00:21:37,330 จำนวนทั้งหมดที่ฉันถูกส่ง โดยทุนการเรียนการสอน 473 00:21:37,330 --> 00:21:40,660 ใครเป็นคนทำเก่า โรงเรียนทางช้าเป็น 820 474 00:21:40,660 --> 00:21:43,660 >> [หัวเราะ] 475 00:21:43,660 --> 00:21:47,170 >> [APPLAUSE] 476 00:21:47,170 --> 00:21:48,670 >> ไม่เป็นไร. 477 00:21:48,670 --> 00:21:50,740 ดังนั้นแน่นอนแล้วมีข้อบกพร่องเหล่านี้ 478 00:21:50,740 --> 00:21:51,460 และที่ดี 479 00:21:51,460 --> 00:21:53,810 และอื่น ๆ คิดว่ากลับเกี่ยวกับเรื่องนี้ บางสิ่งบางอย่างเป็นครั้งแรก 480 00:21:53,810 --> 00:21:55,420 คุณเขียนไม่จำเป็นต้องทำงาน 481 00:21:55,420 --> 00:21:57,620 นี้ได้เกิดขึ้นกับฉันที่นี่เช่นกัน 482 00:21:57,620 --> 00:22:00,844 แต่ตอนนี้ขอพิจารณาว่าเราอาจจะ ใช้ความคิดเดียวกันนี้ให้กับบางสิ่งบางอย่าง 483 00:22:00,844 --> 00:22:03,760 คุณอาจได้เห็นมาก่อนซึ่ง นี่คือ here-- เทคโนโลยีโรงเรียนเก่า 484 00:22:03,760 --> 00:22:05,130 สมุดโทรศัพท์ใหญ่จริงๆ 485 00:22:05,130 --> 00:22:09,380 และคิดว่าหนังสือเล่มโทรศัพท์นี้ มี 1,000 หน้าและ 1,000 ชื่อ 486 00:22:09,380 --> 00:22:11,360 และตัวเลขตัวอักษรภายในของมัน 487 00:22:11,360 --> 00:22:14,860 >> ดีเราชนิดของสามารถนำไปใช้ที่คล้ายกัน ความคิดในการแก้ไขปัญหาทางกายภาพอย่างนี้ 488 00:22:14,860 --> 00:22:16,270 เพียงแค่ใช้ฉัน 489 00:22:16,270 --> 00:22:18,810 ฉันเพียงแค่ชนิดของการโกง โดยใช้ประโยชน์จากทุกท่าน 490 00:22:18,810 --> 00:22:23,240 ที่มีจำนวนมากและจำนวนมากของซีพียูที่แตกต่างกัน หรือสมองของอัลกอริทึมการดำเนินการบางอย่าง 491 00:22:23,240 --> 00:22:25,440 แต่ถ้ามันเป็นเพียงเล็กน้อย เก่าฉันฉันยังคงสามารถ 492 00:22:25,440 --> 00:22:29,630 ใช้ประโยชน์จากที่เดียวกันสาระสำคัญของความคิด การแบ่งและพิชิตปัญหาที่ 493 00:22:29,630 --> 00:22:32,970 อีกครั้งและอีกครั้งโดยครึ่งหนึ่งของคุณ ครึ่งหนึ่งของคุณครึ่งหนึ่งของคุณครึ่งหนึ่งของคุณ 494 00:22:32,970 --> 00:22:35,830 ในทางทฤษฎีเก็บไว้นั่งลง จนกว่าเราจะถูกทิ้งไว้ในทางทฤษฎี 495 00:22:35,830 --> 00:22:36,990 มีเพียงคนคนหนึ่ง 496 00:22:36,990 --> 00:22:39,810 >> ดังนั้นในการนี​​้โรงเรียนเก่า technology-- เราทำไม่ได้ 497 00:22:39,810 --> 00:22:43,030 ต้องนี้ map-- นี้ โรงเรียนเทคโนโลยีเก่า 498 00:22:43,030 --> 00:22:47,300 เราอาจจะเริ่มมองหาใครบางคน เหมือนไมค์สมิ ธ หนึ่งหน้าในเวลา 499 00:22:47,300 --> 00:22:49,410 และผมเห็นว่าไม่มีไมค์ไม่ได้ที่นี่ 500 00:22:49,410 --> 00:22:51,110 ฉันยังคงอยู่ในส่วน 501 00:22:51,110 --> 00:22:53,900 ในที่สุดผมพบ ตัวเองในส่วนข 502 00:22:53,900 --> 00:22:56,910 และนี่คือ algorithm-- ขั้นตอนโดยขั้นตอนการเรียนการสอน 503 00:22:56,910 --> 00:22:59,890 เริ่มต้นที่จุดเริ่มต้นและเป็นหนึ่งในหน้าเว็บ ในเวลาที่มองหาไมค์สมิ ธ 504 00:22:59,890 --> 00:23:03,410 นี่คือ correct-- นี้ ขั้นตอนวิธีการหรือวิธีการ? 505 00:23:03,410 --> 00:23:04,550 >> ใช่มันถูกต้อง 506 00:23:04,550 --> 00:23:06,840 ถ้าไมค์ที่นี่ในที่สุด ฉันจะได้รับให้กับเขา 507 00:23:06,840 --> 00:23:08,139 แต่มันก็ไม่ได้มีประสิทธิภาพ 508 00:23:08,139 --> 00:23:09,180 มันเห็นได้ชัดช้ามาก 509 00:23:09,180 --> 00:23:11,340 ดังนั้นผมจึงสามารถใช้ประโยชน์จาก twosies เดียวกันเข้าใกล้ 510 00:23:11,340 --> 00:23:15,350 ฉันสามารถทำเรียงลำดับของทั้งสอง สี่หกแปด, 10, 12 511 00:23:15,350 --> 00:23:16,330 มันเป็นสองเท่าที่รวดเร็ว 512 00:23:16,330 --> 00:23:18,290 ฉันจะได้รับไปยังไมค์ ได้เร็วขึ้นถ้าเขามี 513 00:23:18,290 --> 00:23:20,770 มันเป็นสิ่งที่ถูกต้องหรือไม่ 514 00:23:20,770 --> 00:23:22,320 ใช่ แต่ผมได้ยินไม่มี little-- 515 00:23:22,320 --> 00:23:24,200 ตอนนี้ฉันไม่ได้ยิน 516 00:23:24,200 --> 00:23:24,700 ใช่. 517 00:23:24,700 --> 00:23:26,190 มีข้อผิดพลาดที่อาจเกิดขึ้นคือ 518 00:23:26,190 --> 00:23:29,374 บางทีไมค์แค่บังเอิญได้รับ คั่นกลางระหว่างสองหน้า 519 00:23:29,374 --> 00:23:31,290 เพราะฉันบินผ่าน สองในเวลา 520 00:23:31,290 --> 00:23:33,580 ดังนั้นอย่างน้อยเราต้องมี ชนิดของการแก้ไขเงื่อนไข 521 00:23:33,580 --> 00:23:35,330 ฉันต้องบอกว่าเดี๋ยวก่อน ถ้าผมตีคนที่มี 522 00:23:35,330 --> 00:23:39,190 ชื่อขึ้นต้นด้วย T แทน S, ฉันดีกว่าเป็นสองเท่ากลับมาอย่างน้อยหนึ่งหน้า 523 00:23:39,190 --> 00:23:40,767 ดังนั้นรถในตอนแรก แต่แน่นอน 524 00:23:40,767 --> 00:23:43,850 แต่ไม่มีเราจะไปมองหา ไมค์สมิ ธ ผ่านโทรศัพท์ 1,000 หน้า 525 00:23:43,850 --> 00:23:45,290 เล่มหนึ่งหน้าในเวลา 526 00:23:45,290 --> 00:23:48,486 อะไรที่คนปกติจะทำอย่างไร 527 00:23:48,486 --> 00:23:50,860 คุณกำลังจะไปที่ S ของ ถ้าคุณรู้ที่ S ของ 528 00:23:50,860 --> 00:23:54,230 คุณอาจจะไปประมาณกลาง หรือเบ้เล็กน้อยในตอนท้าย 529 00:23:54,230 --> 00:23:56,850 และผมมองลงมาที่นี่ ผมอยู่ในส่วน M 530 00:23:56,850 --> 00:23:58,952 แต่สิ่งที่คุณรู้ว่า เกี่ยวกับปัญหานี้ในขณะนี้ 531 00:23:58,952 --> 00:24:02,160 ว่าเราไม่จำเป็นต้องรู้ก่อน ที่มีทั้งหมดของเราเพียงแค่นับตัวเอง 532 00:24:02,160 --> 00:24:03,030 เท่ากัน? 533 00:24:03,030 --> 00:24:06,010 ดีไมค์เป็นไปอย่างเห็นได้ชัด จะอยู่ในช่วงครึ่งปีของหนังสือเล่มนี้ 534 00:24:06,010 --> 00:24:07,920 ถ้าเขาอยู่ที่นี่เลยเพราะมันเรียง 535 00:24:07,920 --> 00:24:10,160 >> และเพื่อให้คุณสามารถ dramatically-- มาก 536 00:24:10,160 --> 00:24:11,250 >> [หอบ] 537 00:24:11,250 --> 00:24:12,300 >> ฉันรู้ว่า. 538 00:24:12,300 --> 00:24:16,940 >> [APPLAUSE] 539 00:24:16,940 --> 00:24:19,450 >> มันเป็นจริงได้ง่ายจริงๆถ้า คุณทำมันลงกระดูกสันหลังมี 540 00:24:19,450 --> 00:24:22,070 แต่แล้วคุณสามารถโยน ครึ่งหนึ่งของปัญหาที่เกิดขึ้นทันที 541 00:24:22,070 --> 00:24:25,950 ตอนนี้ฉันทิ้งให้อยู่กับ problem-- เดียวกัน หาไมค์สมิ ธ ในโทรศัพท์ book-- 542 00:24:25,950 --> 00:24:29,610 แต่ตอนนี้สมุดโทรศัพท์เริ่มต้นที่ M และไปถึง Z แต่ก็ครึ่งหนึ่งเป็นใหญ่ 543 00:24:29,610 --> 00:24:30,890 >> แต่นี่คือสิ่งที่น่าประทับใจ 544 00:24:30,890 --> 00:24:34,170 เช่นเดียวกับในทางทฤษฎีพวกคุณเมื่อ คุณทุกคนนั่งลงเพียงครึ่งหนึ่งในเวลา 545 00:24:34,170 --> 00:24:37,150 ปัญหาที่เกิดขึ้นได้ครึ่งหนึ่งเป็นใหญ่ ครึ่งหนึ่งเป็นใหญ่อีกครั้งและอีกครั้ง 546 00:24:37,150 --> 00:24:40,260 ดังนั้นปัญหานี้ได้กลายเป็น ปัญหาเดียวกัน แต่ครึ่งหนึ่งเป็นใหญ่ 547 00:24:40,260 --> 00:24:42,670 ตอนนี้มันเป็นปัญหาที่หน้า 250 548 00:24:42,670 --> 00:24:45,340 เร็วที่สุดเท่าที่ผมทราบดีว่าโอ้ฉัน ในส่วนทีเผลอ 549 00:24:45,340 --> 00:24:46,590 ผมเคยไปไกลเกินไป 550 00:24:46,590 --> 00:24:48,500 ฉันสามารถโยนครึ่งหนึ่ง ของสมุดโทรศัพท์ออกไป 551 00:24:48,500 --> 00:24:50,410 ตอนนี้ผมลงไป ไตรมาสของปัญหา 552 00:24:50,410 --> 00:24:53,910 >> และคุณสามารถทำซ้ำซ้ำ ทำซ้ำจนกว่าในทางทฤษฎีคุณ 553 00:24:53,910 --> 00:24:55,460 ที่เหลือมีเพียงหนึ่งหน้า 554 00:24:55,460 --> 00:24:59,010 และถ้าไมค์เป็นในหน้านั้น ตอนนี้ผมสามารถแก้ปัญหานี้ 555 00:24:59,010 --> 00:25:00,810 แต่วิธีการอย่างรวดเร็วผมไม่แก้มันได้หรือไม่ 556 00:25:00,810 --> 00:25:05,420 ในกรณีแรกก็เอาผมชอบ บางที 1,000 ขั้นตอนในการหาไมค์สมิ ธ 557 00:25:05,420 --> 00:25:09,260 มันอาจจะมีการดำเนินการ me-- ฉันหยิบสมุดโทรศัพท์ 558 00:25:09,260 --> 00:25:11,440 และผมเริ่มมองหา หน้าหนึ่งที่เวลา 559 00:25:11,440 --> 00:25:13,480 และไมค์อาจจะมี 1,000 หน้าภายหลัง 560 00:25:13,480 --> 00:25:16,020 >> แนวทางที่สองอาจจะ ฉันจะใช้เวลา 500 ขั้นตอน 561 00:25:16,020 --> 00:25:17,960 เพราะฉันบิน ผ่านสองในเวลา 562 00:25:17,960 --> 00:25:21,082 และแนวทางที่สามแม้ว่า มันมีประสิทธิภาพโดยเฉพาะอย่างยิ่ง 563 00:25:21,082 --> 00:25:23,790 แต่ขอพิจารณาสิ่งที่เราจริง ทำด้วยวิธีการที่สามนี้ 564 00:25:23,790 --> 00:25:27,590 ฉันจะมีสิ่งที่ฉันจะเรียกเพียงเหล่านี้ งบที่นี่ในช่วงเวลาหนึ่ง 565 00:25:27,590 --> 00:25:28,560 Pick up สมุดโทรศัพท์ 566 00:25:28,560 --> 00:25:30,130 เปิดไปตรงกลางของหนังสือเล่มโทรศัพท์ 567 00:25:30,130 --> 00:25:31,419 ดูรายชื่อ 568 00:25:31,419 --> 00:25:33,960 และแล้วสิ่งที่ได้รับน้อย เพิ่มเติมความรู้ที่น่าสนใจ 569 00:25:33,960 --> 00:25:35,170 ถ้ายังง่าย 570 00:25:35,170 --> 00:25:38,350 หากสมิ ธ เป็นหนึ่งใน ชื่อบนหน้าปัจจุบันว่า 571 00:25:38,350 --> 00:25:40,170 แล้วทำบางสิ่งบางอย่างมีเงื่อนไข 572 00:25:40,170 --> 00:25:41,840 มันก็เหมือนกับการแยกในถนน 573 00:25:41,840 --> 00:25:42,660 โทรไมค์ 574 00:25:42,660 --> 00:25:44,930 ถ้าไมค์เป็นหนึ่งในชื่อ บนหน้าเว็บที่เรียกว่าไมค์ 575 00:25:44,930 --> 00:25:49,720 แต่ทำสายสี่หากสาย ต้นไม้ถ้าคุณจะเป็นความจริง 576 00:25:49,720 --> 00:25:51,590 คำตอบสำหรับคำถามที่ว่าคือใช่ 577 00:25:51,590 --> 00:25:55,520 >> อื่นถ้าสมิ ธ เป็นก่อนหน้านี้ใน book-- ในคำอื่น ๆ ถ้าผมอยู่ในส่วน M 578 00:25:55,520 --> 00:25:58,540 และฉันกำลังมองหาคนที่จะ ด้านซ้ายแล้วสิ่งที่ฉันควรจะทำอย่างไร 579 00:25:58,540 --> 00:26:00,300 บางสิ่งบางอย่างที่คล้ายกันมาก 580 00:26:00,300 --> 00:26:03,440 แล้วฉันควรจะเปิดไปตรงกลาง ในช่วงครึ่งซ้ายของหนังสือเล่มนี้ 581 00:26:03,440 --> 00:26:07,930 ดังนั้นไปทางซ้ายแล้ว กลับไปขั้นตอนที่สอง 582 00:26:07,930 --> 00:26:09,290 ดูรายชื่อผู้มี 583 00:26:09,290 --> 00:26:12,779 >> ดังนั้นในคำอื่น ๆ ที่ทำในสิ่งเดียวกัน แต่ปัญหาที่ได้รับการลดลงครึ่งหนึ่ง 584 00:26:12,779 --> 00:26:13,570 คุณจะรู้ว่าสิ่งที่คนอื่น? 585 00:26:13,570 --> 00:26:16,470 หากสมิ ธ เป็นต่อมาในหนังสือเล่มนี้ ขึ้นอยู่กับหน้าฉันมองหาที่ 586 00:26:16,470 --> 00:26:18,790 เปิดไปตรงกลางของ ครึ่งทางขวาของหนังสือเล่มนี้ 587 00:26:18,790 --> 00:26:22,050 แล้วกลับไปอีกครั้ง ที่ขั้นตอนที่สอง else-- 588 00:26:22,050 --> 00:26:24,000 มีความเป็นไปได้ที่สี่ที่นี่ 589 00:26:24,000 --> 00:26:28,830 ไมค์ทั้งที่นี่หรือไปทางซ้าย หรือไปทางขวาหรือไม่มี 590 00:26:28,830 --> 00:26:30,570 และที่นี่เราดีขึ้นพิจารณานี้ 591 00:26:30,570 --> 00:26:33,360 และในความเป็นจริงถ้าคุณเคยมี คอมพิวเตอร์ของคุณก็ผิดพลาดกับคุณ 592 00:26:33,360 --> 00:26:36,822 ที่บางครั้ง แต่ไม่เสมอไปที่ ผลมาจากการเป็นเพียงแค่โปรแกรมเมอร์ของมนุษย์ไม่ได้ 593 00:26:36,822 --> 00:26:39,280 ตระหนักถึงโอ้ยิงมี จริงนี้สถานการณ์ที่สี่ 594 00:26:39,280 --> 00:26:41,650 และถ้าคุณไม่ได้เขียนรหัส ที่จะจัดการกับสถานการณ์ที่ 595 00:26:41,650 --> 00:26:43,220 บางครั้งคุณไม่ทราบว่า สิ่งที่คอมพิวเตอร์อาจจะทำ 596 00:26:43,220 --> 00:26:44,770 และแน่นอนโปรแกรมที่อาจผิดพลาด 597 00:26:44,770 --> 00:26:47,550 >> แต่ในกรณีนี้ผมคิดว่า เกี่ยวกับมันและผมพูดว่าคนอื่นเลิก 598 00:26:47,550 --> 00:26:49,850 เนื่องจากว่าเป็นวันที่สี่ สถานการณ์ที่เป็นไปตรรกะ 599 00:26:49,850 --> 00:26:51,950 ตอนนี้ขอเพียงแค่เพิ่ม คำศัพท์บางอย่างเพื่อเรา 600 00:26:51,950 --> 00:26:55,320 สามารถเริ่มต้นที่จะโยนไปรอบ ๆ คำที่ เป็นอย่างอื่นที่ใช้งานง่ายสวย 601 00:26:55,320 --> 00:26:57,870 ทุกสิ่งที่ฉันได้เพียงแค่ เน้นสีเหลืองที่นี่ 602 00:26:57,870 --> 00:27:00,140 ฉันแค่ไปที่ ฟังก์ชั่นหรือขั้นตอน 603 00:27:00,140 --> 00:27:01,590 พวกเขากำลังเพียงแค่ชนิดของการกระทำ 604 00:27:01,590 --> 00:27:04,900 ดังนั้นรับเปิดให้ดู ที่โทรเปิดเปิด 605 00:27:04,900 --> 00:27:09,170 quit-- เหล่านี้เป็นเพียงการกระทำหรือเราจะ เรียกพวกเขาอีกอย่างเป็นทางการ, ฟังก์ชั่น 606 00:27:09,170 --> 00:27:11,410 >> ในขณะที่ตอนนี้อยู่ในสีเหลือง ผมได้เน้นสิ่ง 607 00:27:11,410 --> 00:27:14,084 ในปัจจุบันผู้ให้เพียงเริ่มเรียก พวกเขาเงื่อนไขหรือสาขา 608 00:27:14,084 --> 00:27:16,750 เหล่านี้เป็นจุดที่การตัดสินใจ คุณอาจจะไปด้วยวิธีนี้วิธีนี้ 609 00:27:16,750 --> 00:27:18,100 หรือทิศทางอื่น ๆ ยังคง 610 00:27:18,100 --> 00:27:19,430 ดังนั้นผู้ที่จะเป็นเงื่อนไข 611 00:27:19,430 --> 00:27:20,930 และตอนนี้เป็นเพียงเล็กน้อยนักเล่น 612 00:27:20,930 --> 00:27:24,600 ขอเรียกคำถามเหล่านี้ นิพจน์บูลีน 613 00:27:24,600 --> 00:27:26,530 หลังจากที่มีคนที่มีนามสกุล Bool 614 00:27:26,530 --> 00:27:28,340 >> และนิพจน์บูลีน เป็นเพียงบางสิ่งบางอย่าง 615 00:27:28,340 --> 00:27:30,290 ว่าจริงหรือเท็จใช่หรือไม่ 616 00:27:30,290 --> 00:27:35,870 ดังนั้นจึงเป็นคำถามที่มีคำตอบให้คุณ เกี่ยวกับการดูแลเพื่อให้เป็นไปในสภาพที่ 617 00:27:35,870 --> 00:27:39,210 ทำให้ decision-- ได้รับกลับคำตอบ และจากนั้นไปทางซ้ายหรือขวาหรือบางสิ่งบางอย่าง 618 00:27:39,210 --> 00:27:40,450 อื่นทั้งหมด 619 00:27:40,450 --> 00:27:42,860 >> และแล้วในที่สุดเหล่านี้ สาย here-- กลับไป 620 00:27:42,860 --> 00:27:44,737 ที่ขั้นตอนที่สองกลับไป ที่จะก้าว two-- เราสามารถ 621 00:27:44,737 --> 00:27:46,320 ใช้ความคิดนี้ในรูปแบบที่แตกต่างกัน 622 00:27:46,320 --> 00:27:49,028 แล้วบรรดาของคุณด้วย ประสบการณ์การเขียนโปรแกรมอาจจะทำ 623 00:27:49,028 --> 00:27:50,670 หรือสามารถคิดทำเช่นนี้แตกต่างกัน 624 00:27:50,670 --> 00:27:53,170 แต่สำหรับวัตถุประสงค์ของว​​ันนี้ก็ เพียงแค่ความคิดที่มีความสำคัญ 625 00:27:53,170 --> 00:27:55,400 นี้จะกระตุ้นให้เกิดสิ่งที่ เรามักจะเรียก 626 00:27:55,400 --> 00:28:00,110 loop-- ชนิดของวงจรบางอย่างเพราะ มันทำให้ฉันทำอะไรบางอย่างอีกครั้ง 627 00:28:00,110 --> 00:28:03,340 >> ดังนั้นตอนนี้ขอเพียงแค่พิจารณา วิธีการที่ดีขั้นตอนวิธีนี้คือ 628 00:28:03,340 --> 00:28:03,899 ถูกต้อง. 629 00:28:03,899 --> 00:28:06,940 ถ้าไมค์ในหนังสือเล่มนี้ก็เป็นหนึ่งใน บรรดาสี่ scenarios-- อีกครั้งและอีกครั้ง 630 00:28:06,940 --> 00:28:08,023 และอีกครั้งที่เราจะได้พบกับเขา 631 00:28:08,023 --> 00:28:08,890 แต่วิธีการที่ดีมันคืออะไร? 632 00:28:08,890 --> 00:28:10,150 ดีที่เราจะได้ไม่ต้อง เพื่อเป็นทางการเกินไปที่นี่ 633 00:28:10,150 --> 00:28:12,066 แต่ขอเพียงแค่พล็อต บางสิ่งบางอย่าง x และ y ที่จะได้รับ 634 00:28:12,066 --> 00:28:14,470 ความรู้สึกของรูปร่างของปัญหานี้ 635 00:28:14,470 --> 00:28:17,160 >> บนแกน x ที่นี่คือ ขนาดของปัญหาของฉัน 636 00:28:17,160 --> 00:28:20,256 และพวกเขาแกน y ที่นี่ จะเป็นเวลาที่จะแก้ 637 00:28:20,256 --> 00:28:21,630 ดังนั้นอาจจะเป็นจำนวนหน้า 638 00:28:21,630 --> 00:28:24,400 อาจจะเป็นวินาทีหรือ turns-- หน้าสิ่งที่ 639 00:28:24,400 --> 00:28:27,290 แต่คุณต้องการที่จะนับเป็น สิ่งที่ภาพนี้จะเป็นตัวแทนของ 640 00:28:27,290 --> 00:28:30,630 และขั้นตอนวิธีการแรกที่ฉันจะ เพื่ออธิบายเป็นเพียงเป็นเส้นตรง 641 00:28:30,630 --> 00:28:33,120 หากมี n หน้าใน สมุดโทรศัพท์แล้วมัน 642 00:28:33,120 --> 00:28:36,010 อาจจะพาฉันไปเป็นจำนวนมาก เป็นขั้นตอนที่จะหา n ไมค์ 643 00:28:36,010 --> 00:28:38,930 หาก Verizon หรือ บริษัท โทรศัพท์ เพิ่มหน้าอีกหนึ่งปีถัดไป 644 00:28:38,930 --> 00:28:42,170 มันอาจจะพาฉันอีกหนึ่ง step-- หนึ่งหน่วยมากขึ้นเวลาที่จะหาไมค์ 645 00:28:42,170 --> 00:28:44,230 ดังนั้นจึงมีเพียงหนึ่งนี้อัตราส่วนหนึ่ง 646 00:28:44,230 --> 00:28:45,970 มันเป็นความลาดเอียงเส้นตรง 647 00:28:45,970 --> 00:28:49,110 >> ในขณะเดียวกันที่สองที่ algorithm-- หากฉัน 648 00:28:49,110 --> 00:28:51,570 ไปสองที่ time-- สอง สี่หกแปดหรือ double-- 649 00:28:51,570 --> 00:28:54,550 จะผ่านหน้าสองครั้ง ในช่วงเวลาที่สองในเวลา 650 00:28:54,550 --> 00:28:55,710 ก็ยังคงเป็นเส้นตรง 651 00:28:55,710 --> 00:28:58,720 ขณะนี้มี 1-2 อัตราส่วน แต่เพียงเล็ก ๆ น้อย ๆ ที่ต่ำกว่า 652 00:28:58,720 --> 00:29:02,240 ดังนั้นถ้ามีหลายหน้านี้ บนแผนภูมิที่นี่ในสีเหลือง 653 00:29:02,240 --> 00:29:04,800 ที่อาจจะพาฉันนี้ หลายขั้นตอนหรือวินาที 654 00:29:04,800 --> 00:29:07,980 มิฉะนั้นก็จะพาฉัน สองเท่าของจำนวนมากในเส้นสีแดง 655 00:29:07,980 --> 00:29:10,190 >> แต่สายสีเขียวเป็น Takeaway จริง 656 00:29:10,190 --> 00:29:12,290 นี่คือสิ่งที่เรามัก โทรบันทึก logorithm-- 657 00:29:12,290 --> 00:29:13,840 ของ n โดยที่ n คือจำนวนของหน้าเว็บ 658 00:29:13,840 --> 00:29:16,450 แต่มันเป็นรูปทรงที่มีความสำคัญ ในวันนี้เพราะเราไม่ได้มี 659 00:29:16,450 --> 00:29:17,950 แม้แต่คิดเกี่ยวกับพล็อตจุด 660 00:29:17,950 --> 00:29:19,830 >> คิดเกี่ยวกับสถานการณ์ที่รุนแรง 661 00:29:19,830 --> 00:29:23,070 สมมติว่าในวันพรุ่งนี้ Verizon คู่ จำนวนหน้าในสมุดโทรศัพท์ว่า 662 00:29:23,070 --> 00:29:24,900 จาก 1,000 ถึง 2,000 663 00:29:24,900 --> 00:29:28,440 ในขั้นตอนวิธีการแรกผม อาจเสียเพิ่ม 1,000 664 00:29:28,440 --> 00:29:32,080 ขั้นตอนที่มองหาไมค์เพียงเพราะ Verizon เพิ่มขนาดของหนังสือเล่มนี้ 665 00:29:32,080 --> 00:29:34,740 ที่สอง algorithm-- มันอาจ พาฉันเป็นพิเศษ 500 ขั้นตอน 666 00:29:34,740 --> 00:29:38,370 1,000 หน้ามากขึ้นผมไปสองที่ time-- 500 ขั้นตอนที่จะหาไมค์ 667 00:29:38,370 --> 00:29:41,020 >> แต่ที่อัลกอริทึมที่สาม เป็นชนิดของวิเศษ 668 00:29:41,020 --> 00:29:44,270 Verizon คู่จำนวน หน้าเว็บจาก 1,000 ถึง 2,000 669 00:29:44,270 --> 00:29:47,730 แต่วิธีการหลายขั้นตอนมากขึ้นไม่ มันพาฉันไปหาไมค์? 670 00:29:47,730 --> 00:29:51,220 มันเป็นเพียงหนึ่งเพราะผมก็สามารถ ฉีกสมุดโทรศัพท์อีกครั้งหนึ่ง 671 00:29:51,220 --> 00:29:55,280 จากปัญหาที่เกิดขึ้น 2,000 หน้าไปยัง 1,000 ปัญหาหน้าและ voila 672 00:29:55,280 --> 00:29:57,030 ฉันเอากัดขนาดใหญ่ออกมาจากมัน 673 00:29:57,030 --> 00:29:59,405 >> และถ้าคุณไปมากจริงๆ สมมติว่าสมุดโทรศัพท์ 674 00:29:59,405 --> 00:30:03,600 บริษัท ฯ มีสิ่งที่บ้าเหมือน สมุดโทรศัพท์หน้า 4 พันล้าน 675 00:30:03,600 --> 00:30:07,020 ดีวิธีการหลายขั้นตอนอาจใช้เวลา เพื่อหาไมค์สมิ ธ ใน 4 พันล้าน 676 00:30:07,020 --> 00:30:09,990 สมุดโทรศัพท์หน้า? 677 00:30:09,990 --> 00:30:16,450 มันเป็นจำนวนมาก แต่เพียง 4 พันล้าน 2000000000-1000000000 ที่จะ 500 ล้านบาท 678 00:30:16,450 --> 00:30:18,720 250 million-- ยังคง เสียงเหมือนตัวเลขขนาดใหญ่ 679 00:30:18,720 --> 00:30:20,980 แต่ฉันได้อย่างรวดเร็ว การเดินทางไปยังค่าที่มีขนาดเล็ก 680 00:30:20,980 --> 00:30:24,790 >> และในความเป็นจริงถ้าผมทำคณิตศาสตร์ ขวาฉันเท่านั้นที่สามารถแบ่ง 4 พันล้าน 681 00:30:24,790 --> 00:30:28,750 โดยประมาณ 32 ครั้งก่อน ฉันจะได้รับลงไปเพียงหนึ่ง 682 00:30:28,750 --> 00:30:31,640 ดังนั้นถ้าสมุดโทรศัพท์ที่มี 4 พันล้านหน้ายาวไม่มีเรื่องใหญ่ 683 00:30:31,640 --> 00:30:35,270 ภายในไม่กี่วินาทีอาจจะ 32 วินาทีที่ฉันสามารถแบ่งออกในช่วงครึ่งปี 684 00:30:35,270 --> 00:30:39,560 และในที่สุดก็พบว่าไมค์หรือ สรุปได้ว่าเขาไม่ได้มี 685 00:30:39,560 --> 00:30:42,219 และนั่นคือสาระสำคัญของนั้น algorithm-- ขั้นตอนวิธีการที่ดี 686 00:30:42,219 --> 00:30:44,260 และนั่นคือหนึ่งใน เป้าหมายของการเรียนเช่นนี้ 687 00:30:44,260 --> 00:30:47,350 พยายามที่จะคิดออกว่าจะทำผม แก้ปัญหาไม่ได้เป็นเพียงอย่างถูกต้อง 688 00:30:47,350 --> 00:30:52,360 เหมือนที่ผมรู้อยู่เสมอว่าจะทำอย่างใดอย่างหนึ่ง หน้าใน time-- แต่อย่างถูกต้องและดี 689 00:30:52,360 --> 00:30:55,034 ฉันจะออกแบบที่ดี การแก้ปัญหา? 690 00:30:55,034 --> 00:30:57,200 ดังนั้นขอให้ใช้เวลาสักครู่ที่นี่ และให้ความรู้สึกตอนนี้ 691 00:30:57,200 --> 00:31:00,260 ของ CS50 หลักสูตร itself-- แนะนำ หลักสูตรไม่กี่ของสมาชิกในทีม 692 00:31:00,260 --> 00:31:02,010 เพียงก่อน 02:00 เราจะ ใช้เวลาพักผ่อนระยะสั้น 693 00:31:02,010 --> 00:31:03,520 เพื่อให้บรรดาของคุณ ที่กำลังช้อปปิ้งสามารถ 694 00:31:03,520 --> 00:31:05,130 เป็ดออกมาและใช้เวลา ดูที่ชั้นอื่น ๆ 695 00:31:05,130 --> 00:31:06,580 และดูส่วนที่เหลือของออนไลน์นี้ 696 00:31:06,580 --> 00:31:09,250 แต่ตอนนี้ให้ฉันแนะนำ CS50 ชั้นของตัวเอง 697 00:31:09,250 --> 00:31:11,330 และโดยเฉพาะอย่างยิ่งสิ่งที่เป็นของใหม่ 698 00:31:11,330 --> 00:31:13,960 >> ดังนั้นในฤดูใบไม้ผลิที่ผ่านมาเรา ใช้เวลาไม่น้อย time-- 699 00:31:13,960 --> 00:31:17,911 พนักงานของหลักสูตรและ I-- คิด เกี่ยวกับสิ่งที่เราต้องการ CS50 จะเป็น 700 00:31:17,911 --> 00:31:19,910 และจะกลับไปเป็นครั้งแรก หลักการเพื่อที่จะพูด 701 00:31:19,910 --> 00:31:22,760 ที่จะต้องพิจารณาว่ามันคืออะไรที่เราต้องการ หลักสูตรนี้จะมีลักษณะเหมือนและ 702 00:31:22,760 --> 00:31:23,740 เหมือนนักเรียน 703 00:31:23,740 --> 00:31:26,480 ดังนั้นคุณจะเห็นในปัญหา ตั้งศูนย์เป็นอย่างดีคำเชิญ 704 00:31:26,480 --> 00:31:28,780 ที่จะดูว่า URL ซึ่งสรุป 705 00:31:28,780 --> 00:31:33,270 บางส่วนของแรงจูงใจที่อยู่เบื้องหลัง ต่อไปนี้ลักษณะของฤดูใบไม้ร่วง 2016 706 00:31:33,270 --> 00:31:35,570 >> เพื่อที่คุณอาจจะมีการรวบรวม จาก TL: เอกสารประกอบการบรรยาย DR, 707 00:31:35,570 --> 00:31:39,060 หลักสูตรในวันนี้รวมทั้งจาก แคตตาล็อกแน่นอนในปีนี้ใน CS50, 708 00:31:39,060 --> 00:31:42,540 คุณคาดหวังเท่านั้นที่จะเข้าร่วม today-- งานให้ดี done-- 709 00:31:42,540 --> 00:31:45,960 และบรรยายครั้งสุดท้ายเมื่อ 21 พฤศจิกายน 710 00:31:45,960 --> 00:31:49,150 และคุณไม่เป็นไร แต่ไม่คาดว่าจะ เข้าร่วมบรรยายผู้ที่อยู่ตรงกลาง 711 00:31:49,150 --> 00:31:51,180 เพราะสิ่งที่เรากำลังทำ ในปีนี้ถูกยิง 712 00:31:51,180 --> 00:31:52,661 ในเวลาจริงเนื้อหาหลักสูตรของ 713 00:31:52,661 --> 00:31:54,660 เพื่อให้ทุกอย่างจะอยู่ ในปัจจุบันและนิติบุคคลที่จัดตั้งขึ้น 714 00:31:54,660 --> 00:31:57,410 ดีที่สุดเท่าที่เรา can-- เหตุการณ์ปัจจุบัน และการสนทนาที่คนอาจจะ 715 00:31:57,410 --> 00:32:00,400 จะมีในอุตสาหกรรมใน โลก แต่ทำให้วัสดุที่ 716 00:32:00,400 --> 00:32:03,892 สามารถใช้ได้เป็นผลให้แม้ earlier-- สมบูรณ์แบบด้วยการถอดเสียงข้อความเต็ม 717 00:32:03,892 --> 00:32:05,850 และในการค้นหาและ เชื่อมโยงไปยังแหล่งข้อมูลอื่น ๆ 718 00:32:05,850 --> 00:32:07,930 >> และแน่นอนเราได้รับ อ้างบางครั้ง 719 00:32:07,930 --> 00:32:10,830 และเราไม่เชื่อว่านี้ ที่เราสามารถสร้างแบบดิจิทัล 720 00:32:10,830 --> 00:32:15,170 ดื่มด่ำมากขึ้นน่าสนใจมากขึ้น ประสบการณ์การศึกษาเมื่อเทียบ 721 00:32:15,170 --> 00:32:19,110 เพื่อรวบรวมนี่คือบางส่วน 23 ครั้ง ในคนบางคนได้ยินชอบฉัน 722 00:32:19,110 --> 00:32:22,925 เพียงแค่พูดคุยเกี่ยวกับวิทยาการคอมพิวเตอร์ เมื่อเทียบกับการมีส่วนร่วมอย่างแข็งขันมากขึ้น 723 00:32:22,925 --> 00:32:25,800 ดังนั้นคุณจะเห็นในหลักสูตรการเรียนการสอนของ ร่างของภาคการศึกษาที่นี่ 724 00:32:25,800 --> 00:32:27,840 พร้อมกับการบรรยายจะเมื่อ จะถ่ายทำซึ่งคุณ 725 00:32:27,840 --> 00:32:29,710 ยินดีต้อนรับ แต่ไม่คาดหวัง และเมื่อพวกเขาจะ 726 00:32:29,710 --> 00:32:31,640 ได้รับการปล่อยตัวในเว็บไซต์ของหลักสูตร 727 00:32:31,640 --> 00:32:34,300 >> และสิ่งที่เราจะทำที่นี่ใน วันพุธเริ่มต้นสัปดาห์ถัดไป 728 00:32:34,300 --> 00:32:37,362 เป็นจำนวนมากอย่างใกล้ชิดมากขึ้นมีเพียง คนผู้ที่ต้องการที่จะเข้าร่วม 729 00:32:37,362 --> 00:32:39,820 เป็นสิ่งที่เรียกว่าใช้เวลาเดินผ่าน ที่ผมและหัวของหลักสูตร 730 00:32:39,820 --> 00:32:41,730 จริงจะทำในสิ่งที่ เล็ก ๆ น้อย ๆ ใกล้ชิดมากขึ้น 731 00:32:41,730 --> 00:32:44,313 ลงที่นี่ในวงออเคสตรา ส่วนที่ยังคงมีเทคโนโลยีบางอย่าง 732 00:32:44,313 --> 00:32:46,365 และเดินผ่าน ชุดสัปดาห์ปัจจุบันปัญหาของ 733 00:32:46,365 --> 00:32:50,020 และให้คุณ particularly-- ถ้าในหมู่ ผู้ comfortable-- น้อยทั้งหมดเพิ่มเติม 734 00:32:50,020 --> 00:32:52,790 คำแนะนำที่คุณอาจต้องการหรือ จำเป็นสำหรับความท้าทายของสัปดาห์ 735 00:32:52,790 --> 00:32:55,820 และในทำนองเดียวกันสำหรับผู้ที่ไม่สามารถ เข้าร่วมผู้ที่อยู่ในคนไม่มีเรื่องใหญ่ 736 00:32:55,820 --> 00:32:58,486 จะมีการนำเช่นกันโดย หนึ่งในเจ้าหน้าที่ระดับสูงหลักสูตรที่ 737 00:32:58,486 --> 00:33:02,650 Zamalya, โอกาสเดียวกันฝังตัว ในชุดปัญหาตัวเอง 738 00:33:02,650 --> 00:33:04,960 >> ชุดปัญหาในปีนี้ จะได้รับการปล่อยตัวในวันศุกร์ 739 00:33:04,960 --> 00:33:08,080 และไม่ได้ทำเจ็ดวันต่อมา แต่ 10 วัน later-- จงใจ 740 00:33:08,080 --> 00:33:10,910 ที่ทับซ้อนกันกับแต่ละปัญหา ตั้งเพื่อให้เป็นไปดีกว่ารองรับ 741 00:33:10,910 --> 00:33:13,050 เราหวังว่าการลดลงและไหล ในตารางเวลาของนักเรียน 742 00:33:13,050 --> 00:33:16,550 โดยเฉพาะอย่างยิ่งเมื่อ midterms หรือการแข่งขันกีฬา หรือนักวิชาการหรือ extracurriculars 743 00:33:16,550 --> 00:33:18,465 มีแนวโน้มที่จะมาและไป โดยเฉพาะอย่างยิ่งในช่วงกลางเทอม 744 00:33:18,465 --> 00:33:21,340 ที่จะทำให้คุณมีน้อยมาก ดุลยพินิจเป็นไปได้ว่าคุณหน้า 745 00:33:21,340 --> 00:33:25,690 โหลดสัปดาห์ของคุณด้วย CS50 หรือโหลดกลับ มันเกี่ยวกับวันหยุดสุดสัปดาห์ต่อไปนี้แทน 746 00:33:25,690 --> 00:33:28,817 ดังนั้นมองไปที่หลักสูตรของหลักสูตร ที่นี่สำหรับกำหนดการดังกล่าว 747 00:33:28,817 --> 00:33:30,900 และคุณจะสังเกตเห็นในหมู่เกินไป การเปลี่ยนแปลงในปีนี้ 748 00:33:30,900 --> 00:33:34,082 สำหรับผู้ที่คุ้นเคยกับ การเขียนโปรแกรมในอดีตที่ผ่านมา 749 00:33:34,082 --> 00:33:36,290 เราจะเริ่มต้นภาคการศึกษาเป็น เราจะวันนี้ในเกา 750 00:33:36,290 --> 00:33:39,730 มุ่งเน้นโดยเฉพาะอย่างยิ่งกับภาษา เรียกว่า C แล้วเปลี่ยนไม่ได้ 751 00:33:39,730 --> 00:33:43,430 เพื่อ PHP แต่เป็นภาษาที่เรียกว่า งูใหญ่ในช่วงปลายภาคการศึกษา 752 00:33:43,430 --> 00:33:46,565 ในบริบทของการเขียนโปรแกรมเว็บ พร้อมกับ SQL และ JavaScript 753 00:33:46,565 --> 00:33:48,930 HTML, CSS และยังเพิ่มเติม 754 00:33:48,930 --> 00:33:51,790 >> และในการตอบคำถามที่พบบ่อย, มันเป็นจริงกรณี 755 00:33:51,790 --> 00:33:55,520 ที่ลูกค้าไม่ได้น่ากลัวอย่างที่ผมเคย คิดว่ามันเป็น แต่มันเป็นเหมือนการทำงานมาก 756 00:33:55,520 --> 00:33:57,280 เท่าที่ผมเคยได้ยินมาก็อาจจะมี 757 00:33:57,280 --> 00:34:03,210 แต่นี่คือการพูดว่านี่คือบางส่วน สถิติจากฤดูใบไม้ร่วง 2015 นักศึกษา, 758 00:34:03,210 --> 00:34:06,460 โดยเส้นแนวนอนสีฟ้า แทนค่าเฉลี่ยของจำนวนชั่วโมง 759 00:34:06,460 --> 00:34:06,960 รายงาน 760 00:34:06,960 --> 00:34:10,570 และคุณจะเห็นค่าเฉลี่ยของ หกถึง 10 ถึง 16 อาจ 12-- 761 00:34:10,570 --> 00:34:14,580 หรือเพื่อให้และอื่น ๆ แต่มี ความแปรปรวนสูงเพื่อให้มีความชัดเจน 762 00:34:14,580 --> 00:34:18,570 และเพื่อให้ทราบว่ามีไม่ได้เป็นเพียง นักเรียนสะดวกสบายมากขึ้นและน้อย 763 00:34:18,570 --> 00:34:22,150 สะดวกสบายในการเรียนการสอน แต่การสนับสนุนที่สอดคล้องกัน 764 00:34:22,150 --> 00:34:25,699 โครงสร้างในการรับนักเรียนเหล่านั้น ผ่านภาคการศึกษาที่ประสบความสำเร็จ 765 00:34:25,699 --> 00:34:29,409 >> อันที่จริงในการตอบคำถามที่พบบ่อยควร คุณใช้เวลา CS50 เป็นปีแรก? 766 00:34:29,409 --> 00:34:30,139 อย่างแน่นอน 767 00:34:30,139 --> 00:34:32,690 และในความเป็นจริงผมไม่เสียใจ ไม่ได้มีการค้นพบทางของฉัน 768 00:34:32,690 --> 00:34:35,170 หรือพบข้อมูลใหม่ ว่าในปีแรกเช่นกัน 769 00:34:35,170 --> 00:34:39,149 และคุณควรใช้กับ CS50 หลักสูตรอื่น ๆ อย่างแน่นอนเป็น well-- 770 00:34:39,149 --> 00:34:41,940 และคำแนะนำทั่วไปเราอาจจะ ให้นักเรียน CS50 ที่อาจ 771 00:34:41,940 --> 00:34:44,929 ไม่ได้ชนิดของชั้นหรือระดับบทนำ ที่คุณควรใช้เวลากับสาม 772 00:34:44,929 --> 00:34:47,199 อื่น ๆ หรือสี่ชั้น P-ตั้งค่าอื่น ๆ 773 00:34:47,199 --> 00:34:50,583 แต่ถ้าคุณกำลังสอง P-ชุดอื่น ๆ เรียนอย่างอื่นและ CS50, 774 00:34:50,583 --> 00:34:51,499 จัดการได้อย่างแน่นอน 775 00:34:51,499 --> 00:34:54,900 ผมเคยมีนักเรียนจำนวนมากใน ที่ผ่านมาทำเพื่อค่อนข้างประสบความสำเร็จ 776 00:34:54,900 --> 00:34:57,490 >> และจะได้รับคุณไปยังที่ เส้นชัยได้สำเร็จ 777 00:34:57,490 --> 00:35:00,260 ไม่แน่นอนมี sections-- แทร็คที่แตกต่างกันสำหรับนักเรียน 778 00:35:00,260 --> 00:35:03,100 สะดวกสบายน้อยสะดวกสบายมากขึ้น และหนึ่งในระหว่าง 779 00:35:03,100 --> 00:35:04,850 โดยในหลักสูตรของ ปัญหาชุดแรก 780 00:35:04,850 --> 00:35:06,360 คุณจะถูกถามว่าจะอธิบายด้วยตัวคุณเอง 781 00:35:06,360 --> 00:35:09,151 และถ้าคุณอยู่ในหมู่ผู้น้อย สะดวกสบายมันเป็นชนิดของสิ่งที่ 782 00:35:09,151 --> 00:35:10,420 ที่คุณเพิ่งค่อนข้างรู้ 783 00:35:10,420 --> 00:35:13,010 และแน่นอนที่รับ การเจริญเติบโตทางด้านประชากรศาสตร์ใน CS50 784 00:35:13,010 --> 00:35:14,090 ค่อนข้างไม่กี่ปีที่ผ่านมา 785 00:35:14,090 --> 00:35:17,680 >> เมื่อฤดูใบไม้ร่วงที่ผ่านมา ตัวอย่างเช่น 58% ของชั้นเรียน 786 00:35:17,680 --> 00:35:20,560 อธิบายว่าตัวเองเป็น ในหมู่ผู้ที่สะดวกสบายน้อยลง 787 00:35:20,560 --> 00:35:23,210 กับ 9% ในหมู่ผู้ที่มากขึ้น ความสะดวกสบายแล้ว 788 00:35:23,210 --> 00:35:25,900 นักเรียนคนอื่น ๆ ที่มีใน สีแดงของตัวเองอธิบาย 789 00:35:25,900 --> 00:35:27,890 เป็นหนึ่งในระหว่าง 790 00:35:27,890 --> 00:35:31,980 และคุณจะเห็นที่นี่หัวข้อโดยรวม และตารางเวลาของส่วนซึ่งทั้งหมดนี้ 791 00:35:31,980 --> 00:35:34,820 จะนำเสนอในคนใน เวลาจริงกับหลักสูตร 792 00:35:34,820 --> 00:35:38,320 พนักงานที่น่าตื่นตาตื่นใจของเพื่อนการเรียนการสอน และผู้ช่วยแน่นอนบางคน 793 00:35:38,320 --> 00:35:39,660 คุณจะพบในเวลาเพียงสักครู่ 794 00:35:39,660 --> 00:35:42,993 >> ส่วนที่ตัวเองเช่นคุณจะเห็นจะ เป็นวันจันทร์และวันอังคารและวันพุธ 795 00:35:42,993 --> 00:35:45,910 เพื่อช่วยให้คุณสามารถที่จะดำน้ำ หลังจากที่มีส่วนร่วมดังนั้นหากคุณ 796 00:35:45,910 --> 00:35:48,110 เลือกในหลักสูตรของ บรรยายสัปดาห์ก่อนหน้าว่า 797 00:35:48,110 --> 00:35:51,420 และแล้วเวลาทำงานซึ่ง แน่นอนกับปีที่ผ่านแต่ละ 798 00:35:51,420 --> 00:35:54,110 ได้รับไม่น้อยของ ท้าทายสำหรับการเรียนการสอน 799 00:35:54,110 --> 00:35:57,040 และในปีนี้เรากำลังวางแผนไม่ได้ เพียงเพื่อที่จะดำรงตำแหน่ง hours-- หนึ่ง 800 00:35:57,040 --> 00:36:00,300 ในหนึ่งโอกาสสำหรับความช่วยเหลือ นักเรียนในวันพุธวันพฤหัสบดี 801 00:36:00,300 --> 00:36:03,790 และวันอาทิตย์สุดท้ายของคนเหล่านั้น อยู่ในช่วงบ่ายโดยการออกแบบ 802 00:36:03,790 --> 00:36:06,910 เพื่อลดบางส่วนของความเครียดที่ คงเส้นคงวาเกิดขึ้นกับดึก 803 00:36:06,910 --> 00:36:10,180 P-settting กับเส้นตาย looming-- แต่เวลาทำงานจะมีการเสนอ 804 00:36:10,180 --> 00:36:14,920 ในวันจันทร์และวันอังคารและ วันพุธและวันศุกร์และวันเสาร์ 805 00:36:14,920 --> 00:36:17,080 ต้องขอบคุณเพื่อนของเราที่ HSA 806 00:36:17,080 --> 00:36:20,330 >> CS50 ขณะนี้มีพื้นที่ของตัวเอง สำหรับนักศึกษาและบุคลากร CS50, 807 00:36:20,330 --> 00:36:23,070 บนยอด 67 ม้าสีน้ำตาลแดงถนน มีสิทธิในฮาร์วาร์สแควร์ 808 00:36:23,070 --> 00:36:26,340 วิสัยทัศน์ที่ว่า CS50 ของ TFS และ CAs ตลอดทั้งสัปดาห์ 809 00:36:26,340 --> 00:36:29,052 สวยมากตลอดเวลาส่วนใหญ่ วันจะมีที่ให้การสนับสนุน 810 00:36:29,052 --> 00:36:30,760 ดังนั้นถ้าคุณได้มีบางส่วน คำถามเกี่ยวกับ P-ชุด 811 00:36:30,760 --> 00:36:33,093 หรือคุณรู้สึกเล็ก ๆ น้อย ๆ บล็อกหรือน้อยสับสน 812 00:36:33,093 --> 00:36:35,640 และห่าคุณได้มีชั่วโมงหรือ ครึ่งชั่วโมงระหว่างเรียน 813 00:36:35,640 --> 00:36:38,920 โดยเฉพาะอย่างยิ่งใน square-- สามารถคุณ pop ในและมีคำถามที่ตอบ 814 00:36:38,920 --> 00:36:41,720 ของมีความสับสนว่า clarified-- อย่างมากในจิตวิญญาณ 815 00:36:41,720 --> 00:36:45,490 คุณคุ้นเคยของคณิตศาสตร์ ศูนย์เองคำถามคณิตศาสตร์กรม, 816 00:36:45,490 --> 00:36:49,300 แต่สวยมากตลอดเวลาต่อ [? Gcal?] ว่าเราจะโพสต์ออนไลน์ 817 00:36:49,300 --> 00:36:52,400 >> กวดวิชานอกจากนี้ยังมีสำหรับผู้ที่ นักเรียนได้อย่างอิสระจากหลักสูตร 818 00:36:52,400 --> 00:36:54,750 พนักงานของตัวเองถ้าคุณต้องการ ใกล้ชิดแบบหนึ่งต่อหนึ่งมากขึ้น 819 00:36:54,750 --> 00:36:58,940 หรือสองหรือสามเพื่อนร่วมชั้นเรียนเท่านั้นทำงาน กับหนึ่งในหลักสูตรของสมาชิกในทีม 820 00:36:58,940 --> 00:37:02,320 และแน่นอนเหล่านี้ที่นี่เป็นเพียง บางส่วนของหลักสูตรของพนักงาน 821 00:37:02,320 --> 00:37:04,120 ไม่กี่คนที่คุณจะ ตอบสนองในเวลาเพียงสักครู่ 822 00:37:04,120 --> 00:37:07,440 ในความเป็นจริงของตัวเอง CS50 เพื่อนเรียนการสอนหัว 823 00:37:07,440 --> 00:37:09,790 และแน่นอนหัว ผู้ช่วยและพระอุปัชฌาย์ 824 00:37:09,790 --> 00:37:12,998 อาจจะมาขึ้นให้ พวกเขาที่จะกล่าวทักทาย 825 00:37:12,998 --> 00:37:22,498 >> [APPLAUSE] 826 00:37:22,498 --> 00:37:23,456 SPEAKER 1: [ไม่ได้ยิน] 827 00:37:23,456 --> 00:37:51,842 828 00:37:51,842 --> 00:37:57,856 >> [APPLAUSE] 829 00:37:57,856 --> 00:37:58,814 SPEAKER 2: [ไม่ได้ยิน] 830 00:37:58,814 --> 00:38:17,240 831 00:38:17,240 --> 00:38:27,238 >> [APPLAUSE] 832 00:38:27,238 --> 00:38:28,196 SPEAKER 3: [ไม่ได้ยิน] 833 00:38:28,196 --> 00:38:58,951 834 00:38:58,951 --> 00:39:03,120 >> [APPLAUSE] 835 00:39:03,120 --> 00:39:06,740 >> DAVID ลัน: และช่วยให้เราสามารถ นำบนกระดานสอง CS50 มากที่สุด 836 00:39:06,740 --> 00:39:09,730 เจ้าหน้าที่อาวุโสร็อบและ Zamayla เช่นกัน 837 00:39:09,730 --> 00:39:15,120 >> [APPLAUSE] 838 00:39:15,120 --> 00:39:17,226 >> อันที่จริงทั้งร็อบและ Zamayla ได้รับกับเรา 839 00:39:17,226 --> 00:39:19,940 มานานแล้วว่าผมสามารถ ที่จะเข้าไปในที่เก็บของ CS50 840 00:39:19,940 --> 00:39:22,470 และพบนี้ SD มาก ภาพของพวกเขามีส่วนร่วม 841 00:39:22,470 --> 00:39:25,402 บนเวทีตัวเองเมื่อหลายปีก่อน 842 00:39:25,402 --> 00:39:26,110 ROB: [ไม่ได้ยิน] 843 00:39:26,110 --> 00:39:53,660 844 00:39:53,660 --> 00:39:59,247 >> [APPLAUSE] 845 00:39:59,247 --> 00:40:00,080 ZAMAYLA: [ไม่ได้ยิน] 846 00:40:00,080 --> 00:40:50,888 847 00:40:50,888 --> 00:40:52,467 >> [APPLAUSE] 848 00:40:52,467 --> 00:40:53,425 DAVID ลัน: ขอบคุณ 849 00:40:53,425 --> 00:40:56,160 850 00:40:56,160 --> 00:40:58,030 ดังนั้นนอกเหนือจากนี้ สมาชิกในทีมที่นี่ 851 00:40:58,030 --> 00:41:01,662 CS50 มีทีมงานเกือบ 100 สมาชิกในทีมทุกคน 852 00:41:01,662 --> 00:41:04,370 จะสามารถใช้ได้สำหรับส่วน และชั่วโมงสำนักงานและอื่น ๆ อีกมากมาย 853 00:41:04,370 --> 00:41:06,920 และเป็นร็อบกล่าวว่าเกินไปนี้คือ ยกเครื่องที่สำคัญที่สุด 854 00:41:06,920 --> 00:41:09,534 ของ CS50 ในช่วง 10 ปีที่ผ่านมา ฉันได้รับใน [ไม่ได้ยิน] 855 00:41:09,534 --> 00:41:12,200 [ไม่ได้ยิน] มุ่งเน้นโดยเฉพาะอย่างยิ่ง ในการให้บริการโครงสร้างการสนับสนุน 856 00:41:12,200 --> 00:41:14,050 ตัดออกไปจำนวนมาก เป็นกลุ่มที่ได้รับ 857 00:41:14,050 --> 00:41:16,870 สะสมในรอบ 10 ปี การพัฒนาของซ้ำ 858 00:41:16,870 --> 00:41:18,120 ในหลักสูตรของชุดปัญหา 859 00:41:18,120 --> 00:41:21,470 >> ดังนั้นปีนี้ไม่เพียง แต่ในชั้นเรียน แต่ ยังอยู่ในรูปแบบของปัญหาหลักสูตรฯ 860 00:41:21,470 --> 00:41:24,800 ชุดคุณควรหาสิ่งที่จะ จะคล่องตัวมากขึ้น, Trimmer มาก 861 00:41:24,800 --> 00:41:26,700 จัดการได้มากขึ้นกว่า ในปีที่ผ่านมาที่เรา 862 00:41:26,700 --> 00:41:31,330 บางโรงสัมภาระที่ว่า พัฒนาโดยธรรมชาติของการพัฒนาปี 863 00:41:31,330 --> 00:41:32,970 หลังจากปีและการทำซ้ำ 864 00:41:32,970 --> 00:41:35,110 ดังนั้นใหม่และการปรับปรุงจะเริ่มขึ้นในวันนี้ 865 00:41:35,110 --> 00:41:37,860 >> คุณจะตอบสนองบางส่วนเพิ่มเติม พนักงานของหลักสูตรออกมาใน [ไม่ได้ยิน] 866 00:41:37,860 --> 00:41:40,186 ที่ 2:30 ที่เราให้บริการ เป็นประเพณีเค้ก 867 00:41:40,186 --> 00:41:42,060 มีเค้กอีกเล็กน้อยเป็น กว่านั้น แต่คุณจะ 868 00:41:42,060 --> 00:41:44,690 พบอีรินและโทเบียสและอื่น ๆ ยังคง 869 00:41:44,690 --> 00:41:46,470 และให้ฉันให้คุณ ทัวร์ก่อนที่เราจะได้ยิน 870 00:41:46,470 --> 00:41:49,600 จากบางส่วนของเจ้าหน้าที่อื่น ๆ ในชั้นเรียนของสิ่งที่รอคอยเป็นอย่างดี 871 00:41:49,600 --> 00:41:52,730 ในความเป็นจริงเรามักจะเริ่มต้นของ CS50 ภาคการศึกษานี้มาวันเสาร์ 872 00:41:52,730 --> 00:41:54,330 กับสิ่งที่เรียกว่าวัน CS50 ปริศนา 873 00:41:54,330 --> 00:41:56,710 >> มันมีอะไรจะทำอย่างไรกับ วิทยาการคอมพิวเตอร์ต่อ se 874 00:41:56,710 --> 00:41:58,669 แต่มีปัญหาเกี่ยวกับ แก้มากขึ้นโดยทั่วไป 875 00:41:58,669 --> 00:42:01,210 และถ้าคุณจึงเลือกที่จะมีส่วนร่วม, ต่อบางส่วนของคำเชิญ, 876 00:42:01,210 --> 00:42:03,460 คุณอาจได้เห็นประตู ลดลงหรือบนเวทีที่นี่ 877 00:42:03,460 --> 00:42:05,830 มันเป็นโอกาสในทีม สองหรือสามหรือสี่ 878 00:42:05,830 --> 00:42:10,680 จะมีส่วนร่วมสำหรับปริศนาและพิซซ่า และของรางวัลและ more-- วันเสาร์นี้, 879 00:42:10,680 --> 00:42:12,560 ติดตามความคืบหน้ามากขึ้น 880 00:42:12,560 --> 00:42:15,082 >> คุณจะพบว่าทุกเกินไป วันศุกร์ที่ไฟและน้ำแข็ง, 881 00:42:15,082 --> 00:42:16,790 ไม่ CS50 นำ ทั้งกลุ่มของนักเรียน 882 00:42:16,790 --> 00:42:19,100 ไปรับประทานอาหารกลางวันเพื่อให้มีขนาดใหญ่ ระดับความรู้สึกใกล้ชิดมากขึ้น 883 00:42:19,100 --> 00:42:21,820 และโดยทั่วไปจะนำมารวมกัน ศิษย์เก่าและเพื่อน ๆ จากอุตสาหกรรม 884 00:42:21,820 --> 00:42:24,710 ที่จะพูดคุยเกี่ยวกับสิ่งที่พวกเขาได้ รับการขึ้นไปตั้งแต่จบการศึกษา 885 00:42:24,710 --> 00:42:27,820 ในทำนองเดียวกันในปีนี้เราจะ ประเดิมครั้งแรกที่เคย CS50 50 886 00:42:27,820 --> 00:42:31,390 การเข้ารหัส contest-- กลางภาคการศึกษา โอกาสที่จะให้ทุกคน 887 00:42:31,390 --> 00:42:35,430 ในการเลือกในพื้นฐานที่จะมี ความท้าทายของปัญญากับเพื่อนร่วมชั้น 888 00:42:35,430 --> 00:42:39,250 อีกครั้งในทีมงานของสองหรือสามหรือ สี่โดยใช้เพียงการเขียนโปรแกรมว่า 889 00:42:39,250 --> 00:42:41,920 เข้าใจว่าคุณแล้วต้องอยู่ภายใต้ เข็มขัดของคุณหลังจากนั้นเพียงหกหรือเจ็ด 890 00:42:41,920 --> 00:42:44,710 สัปดาห์ที่ผ่านมาของการเรียนและการมีส่วนร่วม ในลักษณะของการแข่งขันครั้งนี้ 891 00:42:44,710 --> 00:42:50,261 online-- หากคุณต้องการที่จะฝึกฝนด้วยตัวคุณเอง ทักษะทั้งหมดที่อื่น ๆ ในความท้าทายที่ 892 00:42:50,261 --> 00:42:52,760 ในตอนท้ายของภาคการศึกษาคือ ที่เรียกว่า CS50 Hackathon-- 893 00:42:52,760 --> 00:42:56,970 โอกาสที่จะเริ่มขึ้นในเวลา 7.00 PM สิ้นสุดที่ 07:00 และไปพร้อมกัน 894 00:42:56,970 --> 00:43:01,900 12 เวลาเย็นในการที่จะดำน้ำ เข้าไปในโครงการที่ท่านสุดท้ายของหลักสูตร 895 00:43:01,900 --> 00:43:04,820 โอกาสที่จะออกแบบและ ใช้อะไรมากที่สุดที่น่าสนใจ 896 00:43:04,820 --> 00:43:06,980 ให้คุณด้วยการเรียนการสอนของคุณ คำแนะนำของเพื่อน 897 00:43:06,980 --> 00:43:09,600 รอบ 09:00 เรามักจะทำ ให้บริการพิซซ่า, 01:00, 898 00:43:09,600 --> 00:43:13,210 ฟิลิปป์และไม่กี่ของเรา ที่ยังคงตื่นตัวในเวลา 05:00, 899 00:43:13,210 --> 00:43:16,310 มีรถรับส่งรถโดยสารลง ถนน IHOP สำหรับอาหารเช้า 900 00:43:16,310 --> 00:43:19,340 >> และจากนั้นไม่กี่วันต่อมา เป็น CS50 เรียกว่า fare-- 901 00:43:19,340 --> 00:43:23,450 ในตอนท้ายของการจัดนิทรรศการในภาคการศึกษา การเฉลิมฉลองของได้ไกลแค่ไหนจำนวนมากดังนั้น 902 00:43:23,450 --> 00:43:28,200 ของ CS50 นักเรียนจะมาจาก สัปดาห์ที่ศูนย์ตลอดทางจนถึงสัปดาห์ 903 00:43:28,200 --> 00:43:32,610 และการเก็บรักษาไว้ในใจว่า 73% ของผู้ที่ เพื่อนร่วมชั้นและคุณปีนี้มี 904 00:43:32,610 --> 00:43:34,840 ไม่เคยนำชั้น CS ก่อน 905 00:43:34,840 --> 00:43:39,226 ในความเป็นจริงจะ reemphasize เท่าที่นี่ เป็นไม่กี่ใบหน้าเพิ่มเติมจากพนักงานของ CS50 906 00:43:39,226 --> 00:43:40,184 ลำโพง 4: [ไม่ได้ยิน] 907 00:43:40,184 --> 00:43:45,909 908 00:43:45,909 --> 00:43:46,867 5 ลำโพง: [ไม่ได้ยิน] 909 00:43:46,867 --> 00:43:51,332 910 00:43:51,332 --> 00:43:52,290 ลำโพง 6: [ไม่ได้ยิน] 911 00:43:52,290 --> 00:43:55,276 912 00:43:55,276 --> 00:43:56,234 SPEAKER 7: [ไม่ได้ยิน] 913 00:43:56,234 --> 00:44:01,727 914 00:44:01,727 --> 00:44:02,643 ลำโพง 8: [ไม่ได้ยิน] 915 00:44:02,643 --> 00:44:10,066 916 00:44:10,066 --> 00:44:11,024 SPEAKER 9: [ไม่ได้ยิน] 917 00:44:11,024 --> 00:44:14,475 918 00:44:14,475 --> 00:44:15,461 >> ลำโพง 4: [ไม่ได้ยิน] 919 00:44:15,461 --> 00:44:16,461 >> SPEAKER 10: [ไม่ได้ยิน] 920 00:44:16,461 --> 00:44:21,456 921 00:44:21,456 --> 00:44:23,438 SPEAKER 11: [ไม่ได้ยิน] 922 00:44:23,438 --> 00:44:24,438 SPEAKER 12: [ไม่ได้ยิน] 923 00:44:24,438 --> 00:44:30,438 924 00:44:30,438 --> 00:44:31,396 SPEAKER 13: [ไม่ได้ยิน] 925 00:44:31,396 --> 00:44:37,360 926 00:44:37,360 --> 00:44:40,342 >> SPEAKER 14: [ไม่ได้ยิน] 927 00:44:40,342 --> 00:44:42,863 >> SPEAKER 13: [ไม่ได้ยิน] 928 00:44:42,863 --> 00:44:43,821 SPEAKER 15: [ไม่ได้ยิน] 929 00:44:43,821 --> 00:44:48,785 930 00:44:48,785 --> 00:44:49,785 SPEAKER 16: [ไม่ได้ยิน] 931 00:44:49,785 --> 00:44:53,761 932 00:44:53,761 --> 00:44:55,252 >> SPEAKER 11: [ไม่ได้ยิน] 933 00:44:55,252 --> 00:44:57,773 934 00:44:57,773 --> 00:44:58,731 5 ลำโพง: [ไม่ได้ยิน] 935 00:44:58,731 --> 00:45:11,250 936 00:45:11,250 --> 00:45:15,130 DAVID ลัน: บางส่วนของทีม เป็นตัวการช้อปปิ้งชั้นเรียน 937 00:45:15,130 --> 00:45:17,760 แต่ถ้าบรรดาสมาชิก พนักงาน CS50 อยู่ที่นี่ 938 00:45:17,760 --> 00:45:19,230 อาจจะมาขึ้นเพื่อรอสักครู่ 939 00:45:19,230 --> 00:45:23,450 CS50 ของ TFS และ CAs และ [? พนักงาน?] สมาชิก here-- เหล่านี้เป็นเพียงไม่กี่ 940 00:45:23,450 --> 00:45:28,880 ของ faces-- หนึ่งในนั้นคุณเพียงแค่ เห็นและไม่กี่ other-- และอื่น ๆ น้อย 941 00:45:28,880 --> 00:45:30,020 ยังคง. 942 00:45:30,020 --> 00:45:33,242 เราไม่ไปข้างหน้าและช่วยให้ทำไม พวกคุณหยุดพักห้านาที 943 00:45:33,242 --> 00:45:35,450 หากคุณจำเป็นต้องเป็ดออกไป เรียนร้านที่ดี 944 00:45:35,450 --> 00:45:38,900 และในห้านาทีเราจะดำเนินการต่อ การดูที่ Scratch-- แรก 945 00:45:38,900 --> 00:45:42,420 ของภาษาการเขียนโปรแกรมของเราตอบสนองความ พนักงานของหลักสูตรที่นี่บางมากขึ้น 946 00:45:42,420 --> 00:45:45,020 และมุ่งเน้นในท้ายที่สุด ในการแก้ปัญหาการตั้งศูนย์ 947 00:45:45,020 --> 00:45:46,710 ดังนั้นเราจะกลับมาในห้านาที 1 00:45:46,864 --> 00:45:47,370 >> ก็ดี 2 00:45:47,370 --> 00:45:48,590 ดังนั้นเราจะกลับมา 3 00:45:48,590 --> 00:45:51,330 และในส่วนที่เหลือของเรา วันนี้เวลาเป้าหมาย 4 00:45:51,330 --> 00:45:54,320 คือการยกระดับสนามเด็กเล่น ในแง่ของคำศัพท์บาง 5 00:45:54,320 --> 00:45:55,297 ในแง่ของความคิดบางอย่าง 6 00:45:55,297 --> 00:45:57,380 เพราะแท้จริงเป็นต่อ บางส่วนของชาร์ตก่อนหน้านี้ 7 00:45:57,380 --> 00:46:00,130 มีเป็นไปได้ช่วงของ ระดับของประสบการณ์ในชั้นเรียน 8 00:46:00,130 --> 00:46:03,210 บางส่วนของนักเรียนซึ่งมี นำมาเขียนโปรแกรมบางส่วนก่อน 9 00:46:03,210 --> 00:46:04,200 บางคนไม่ได้ 10 00:46:04,200 --> 00:46:07,430 และอื่น ๆ ที่มีปัญหานี้เป็นครั้งแรก การตั้งค่าและด้วยภาษานี้เป็นครั้งแรก 11 00:46:07,430 --> 00:46:10,830 เราไม่ได้มีโอกาสที่จะเริ่มต้น เพื่อใช้สำหรับการรับหลังจากวันนี้ 12 00:46:10,830 --> 00:46:12,960 บางคำศัพท์ที่พบบ่อยและความคิด 13 00:46:12,960 --> 00:46:15,590 >> และเราจะทำเช่นนี้โดยวิธีการ languages​​-- แรกของหลักสูตร 14 00:46:15,590 --> 00:46:21,070 นอกเหนือไปจาก C และ Python และ JavaScript และ SQL และ HTML และ CSS, 15 00:46:21,070 --> 00:46:24,450 เราจะมุ่งเน้นไปในตอนแรก และเพียงแค่สำหรับปัญหาการตั้งศูนย์ 16 00:46:24,450 --> 00:46:28,160 กับภาษากราฟิกนี้เรียกว่า รอยขีดข่วนได้รับการพัฒนาโดย MIT Media Lab'S 17 00:46:28,160 --> 00:46:30,880 ลงถนนที่จะช่วยให้ นักเรียนและเด็กโดยเฉพาะอย่างยิ่ง 18 00:46:30,880 --> 00:46:35,070 แสดงออก algorithmically-- ในทางที่สอดคล้องกันมากขึ้นกับสิ่งที่ 19 00:46:35,070 --> 00:46:37,300 เราอาจเรียกการคิดคำนวณ 20 00:46:37,300 --> 00:46:40,985 >> และมันเป็นภาษาที่มีประโยชน์เพราะ อย่างรวดเร็วในสัปดาห์ต่อไปในสัปดาห์หนึ่ง 21 00:46:40,985 --> 00:46:44,360 เราไม่เปลี่ยนไปใช้มากขึ้น ภาษาดั้งเดิมและความลับที่เรียกว่า 22 00:46:44,360 --> 00:46:46,370 C ซึ่งเป็นต้นฉบับเดิมอย่างหมดจด 23 00:46:46,370 --> 00:46:48,930 คุณจะใช้แป้นพิมพ์ของคุณใน เพื่อที่จะเขียนคำแนะนำ 24 00:46:48,930 --> 00:46:50,230 เช่นนี้บนหน้าจอ 25 00:46:50,230 --> 00:46:52,840 แต่แม้ว่าคุณจะไม่เคยเห็น ภาษาการเขียนโปรแกรมมาก่อน 26 00:46:52,840 --> 00:46:55,170 ในเวลาเพียง glancing ที่ นี้ทั้งหมดไม่ว่าจะเป็นความลับ 27 00:46:55,170 --> 00:47:00,010 คุณอาจจะสามารถเดาว่า อาจจะพิมพ์ Hello World 28 00:47:00,010 --> 00:47:02,050 แต่มีจำนวนมาก ค่าใช้จ่ายที่มีประโยค 29 00:47:02,050 --> 00:47:05,770 มีกัญชาแปลกคือ สัญลักษณ์หรือแฮชแท็กขึ้นด้านบน 30 00:47:05,770 --> 00:47:08,900 มีวงเล็บมุมบาง วงเล็บวงเล็บปีกกากึ่ง colon-- 31 00:47:08,900 --> 00:47:11,880 มีเพียงมากภาพ ไวยากรณ์ที่ได้รับในทาง 32 00:47:11,880 --> 00:47:13,940 เราเริ่มต้นด้วยการเรียนการสอน รอยขีดข่วนเพื่อให้ได้รับ 33 00:47:13,940 --> 00:47:17,600 ที่ผ่านมาทั้งหมดของผู้ที่มีความรู้ รบกวนจืด 34 00:47:17,600 --> 00:47:20,290 และมุ่งเน้นแทนในความคิด 35 00:47:20,290 --> 00:47:22,540 >> ในความเป็นจริงนี้อาจจะมีก่อน 36 00:47:22,540 --> 00:47:24,830 นี้สำหรับเรื่องนี้จะเป็นสัปดาห์หลังจาก 37 00:47:24,830 --> 00:47:26,760 นี้ในแบบกราฟิกนี้ Scratch ภาษา 38 00:47:26,760 --> 00:47:29,870 เป็นวิธีที่คุณจะใช้ที่เดียวกัน program-- โปรแกรมที่เมื่อวิ่ง 39 00:47:29,870 --> 00:47:31,340 เพียงแค่พูดว่า Hello World 40 00:47:31,340 --> 00:47:34,740 และสิ่งที่ดีเกี่ยวกับการเกา ว่ามันเป็นการเขียนโปรแกรมแบบกราฟิกนี้ 41 00:47:34,740 --> 00:47:38,780 สภาพแวดล้อมที่ใช้ชิ้นส่วนปริศนาหรือ บล็อกว่ามีเพียงเชื่อมต่อกันด้วยกัน 42 00:47:38,780 --> 00:47:40,440 ถ้ามันทำให้รู้สึกตรรกะที่จะทำเช่นนั้น 43 00:47:40,440 --> 00:47:43,810 และมีรอยขีดข่วนคุณสามารถพัฒนา ภาพเคลื่อนไหวและเกมแบบโต้ตอบ 44 00:47:43,810 --> 00:47:47,270 และศิลปะและจำนวนของสิ่งใด ๆ ที่ คุณอาจคิดในใจของคุณเอง 45 00:47:47,270 --> 00:47:51,200 และดำเนินการได้อย่างง่ายดายด้วย ลากและวางชิ้นส่วนปริศนา 46 00:47:51,200 --> 00:47:54,265 >> และแน่นอนเราจะมีความสามารถ ในการแสดงบางส่วนของความคิดเดียวกัน 47 00:47:54,265 --> 00:47:56,890 ที่ผมกล่าวถึงเพียงสักครู่ ที่ผ่านมาในบริบทของไมค์สมิ ธ 48 00:47:56,890 --> 00:48:00,670 และค้นหาสิ่งที่โทรศัพท์ book-- เช่นฟังก์ชั่นเพียงการกระทำ 49 00:48:00,670 --> 00:48:03,070 สิ่งที่ชอบลูปที่ทำ สิ่งที่อีกครั้งและอีกครั้ง 50 00:48:03,070 --> 00:48:05,170 ตัวแปรซึ่งเป็น สิ่งที่เราจะแนะนำ 51 00:48:05,170 --> 00:48:08,086 แต่มันเป็นเรื่องที่คุ้นเคยอาจจาก algebra-- เพียงชนิดของตัวยึดบางส่วน 52 00:48:08,086 --> 00:48:10,840 เพื่อเก็บค่าบางอย่างที่คุณอาจจะ ต้องแสดงออกบูลีน later--, 53 00:48:10,840 --> 00:48:13,720 ที่เหล่านั้นใช่หรือไม่จริง คำถามที่ผิดพลาดจากก่อน 54 00:48:13,720 --> 00:48:17,117 เงื่อนไขส้อมผู้ที่อยู่ใน road-- สาขาเหล่านั้นเพื่อที่จะพูด 55 00:48:17,117 --> 00:48:19,700 แล้วมีบางคนชอบเล่น คุณสมบัติที่เราจะได้เห็นแม้วันนี้ 56 00:48:19,700 --> 00:48:22,850 เรียกว่าอาร์เรย์และกระทู้และ เหตุการณ์ที่เกิดขึ้นว่าแล้วเราก็จะกลับมายังมากกว่า 57 00:48:22,850 --> 00:48:24,460 เวลาอยู่ในภาษาที่แตกต่าง 58 00:48:24,460 --> 00:48:26,790 แต่รอยขีดข่วนช่วยให้เรา ในการสำรวจทั้งหมดเหล่านี้ 59 00:48:26,790 --> 00:48:30,779 ดังนั้นที่นี่ใน Scratch นี้สีม่วง บล็อกคือสิ่งที่ฟังก์ชั่นเป็นปกติ 60 00:48:30,779 --> 00:48:31,570 จะมีลักษณะเหมือน 61 00:48:31,570 --> 00:48:35,620 ชิ้นนี้จิ๊กซอว์สีม่วงที่มีบางส่วน คำพูดเช่นซึ่งเป็นการดำเนินการ 62 00:48:35,620 --> 00:48:38,490 และจากนั้นก็อาจจะมี การโต้แย้งหรือ parameter-- วิธีการบางอย่าง 63 00:48:38,490 --> 00:48:41,140 ของชนิดของการปรับแต่ง สิ่งที่ไม่บล็อก 64 00:48:41,140 --> 00:48:45,182 เพื่อที่จะไม่ได้ก่อนกำหนดโดย MIT สิ่งที่บล็อกสีม่วงนี้กล่าวว่า 65 00:48:45,182 --> 00:48:47,390 ในความเป็นจริงคุณจะเห็นใน ช่วงเวลาที่ฉันสามารถที่จะพิมพ์ 66 00:48:47,390 --> 00:48:49,931 คำที่เหมือนโลกสวัสดีหรือ สวัสดีเดวิดหรือสวัสดี Zamayla, 67 00:48:49,931 --> 00:48:53,750 หรือสิ่งที่ฉันต้องการในการโต้แย้ง ปริศนาที่ piece-- กล่องสีขาว 68 00:48:53,750 --> 00:48:54,251 ที่นั่น 69 00:48:54,251 --> 00:48:57,166 ในขณะเดียวกันถ้าฉันต้องการห่วงเราจะ เห็นว่ามีชิ้นส่วนปริศนาว่า 70 00:48:57,166 --> 00:48:58,640 มีลักษณะสีส้มเล็ก ๆ น้อย ๆ เช่นนี้ 71 00:48:58,640 --> 00:49:01,690 และรูปร่างของพวกเขาชนิดของการแสดงให้เห็นว่า สิ่งที่เกิดขึ้นครั้งแล้วครั้งเล่า 72 00:49:01,690 --> 00:49:02,680 ในวงจร 73 00:49:02,680 --> 00:49:06,800 >> ดังนั้นถ้าฉันห่อทักทายบล็อกโลก ด้วยการปิดกั้นตลอดไปในเกา 74 00:49:06,800 --> 00:49:10,307 มันเป็นเพียงแค่จะให้พูดว่าสวัสดี โลกตลอดไปค่อนข้างอักษร 75 00:49:10,307 --> 00:49:12,390 ในขณะเดียวกันมีอีก ประเภทของวงในรอยขีดข่วน 76 00:49:12,390 --> 00:49:14,348 ว่าเราจะ see-- ซ้ำ block-- ที่ถ้าคุณ 77 00:49:14,348 --> 00:49:17,940 รู้ล่วงหน้ากี่ครั้ง คุณต้องการวงที่จะดำเนินการ 78 00:49:17,940 --> 00:49:21,850 จำกัด จำนวนครั้งใน fact-- คุณ สามารถระบุได้ว่าโดยการพิมพ์ในจำนวน 79 00:49:21,850 --> 00:49:25,380 หรือแม้กระทั่งการเสียบตัวแปร เช่น X หรือ Y ที่เราจะเห็น 80 00:49:25,380 --> 00:49:27,690 >> ในความเป็นจริงตัวแปรเช่น ผมในกรณีนี้ซึ่ง 81 00:49:27,690 --> 00:49:30,109 เป็นชื่อสามัญสำหรับ ตัวแปรจำนวนเต็มที่ 82 00:49:30,109 --> 00:49:31,900 เพียงแค่เก็บ number-- จำนวนเต็มอาจจะ 83 00:49:31,900 --> 00:49:35,470 การใช้บล็อกสีส้มนี้ที่นี่เพื่อ ตั้งค่าตัวแปรเช่นฉันให้เป็นศูนย์ 84 00:49:35,470 --> 00:49:38,900 นี่คือตัวอย่างที่เป็นสีเขียวของ นิพจน์บูลีนในรอยขีดข่วน 85 00:49:38,900 --> 00:49:43,700 แม้ว่าลักษณะนี้เช่นคณิตศาสตร์ สูตรความไม่เท่าเทียมกันทางคณิตศาสตร์เช่นนี้ 86 00:49:43,700 --> 00:49:45,320 จริงๆมีนิพจน์บูลีน 87 00:49:45,320 --> 00:49:46,570 นี้เป็นจริงหรือเท็จ 88 00:49:46,570 --> 00:49:48,300 ฉันคือน้อยกว่า 50 89 00:49:48,300 --> 00:49:51,815 มันเป็นอย่างใดอย่างหนึ่งใช่หรือไม่คำตอบ หรือคำตอบจริงหรือเท็จ 90 00:49:51,815 --> 00:49:53,940 และเรามักจะเรียก นิพจน์บูลีนเหล่านั้น 91 00:49:53,940 --> 00:49:55,148 และมันไม่จำเป็นต้องเป็น 50 92 00:49:55,148 --> 00:49:57,970 มันอาจจะน้อยกว่า x, y มากกว่า Y เท่ากับ y-- 93 00:49:57,970 --> 00:50:00,020 จำนวนอื่น ๆ คำถามอาจจะถาม 94 00:50:00,020 --> 00:50:03,250 >> ตอนนี้ได้อย่างรวดเร็วก่อนนี้อาจจะดู จู่ ๆ ก็ค่อนข้างหนาที่นี่และมันก็เป็น 95 00:50:03,250 --> 00:50:06,540 แต่แนวคิดที่ชาญฉลาดก็ สวยที่คุ้นเคยจากก่อน 96 00:50:06,540 --> 00:50:09,370 ถ้า x น้อยกว่าปีกว่าจะพูดเท่า 97 00:50:09,370 --> 00:50:12,230 อื่นถ้า x มีมากขึ้น กว่าปีแล้วบอกว่าเท่า 98 00:50:12,230 --> 00:50:14,260 อื่นพูด x เท่ากับ Y 99 00:50:14,260 --> 00:50:17,220 ดังนั้นเราจึงมีตัวอย่าง มีของ scenario-- สาม 100 00:50:17,220 --> 00:50:20,600 เพียง possibility-- x สามเป็นอย่างใดอย่างหนึ่ง มากกว่าน้อยกว่าหรือเท่ากับ 101 00:50:20,600 --> 00:50:22,420 ดังนั้นเราจึงมีทางแยกสามทางในถนน 102 00:50:22,420 --> 00:50:26,290 >> และแจ้งให้ทราบว่ามีอะไร Scratch here-- เย็น ดูเหมือนจะมีเพียงหนึ่งในปริศนา 103 00:50:26,290 --> 00:50:28,840 ชิ้นส่วนในกรณีนี้หากบล็อกอื่น 104 00:50:28,840 --> 00:50:32,090 และยังที่ดูเหมือนจะบ่งบอกถึงการที่คุณสามารถ มีเพียงทางแยกสองทางในถนน 105 00:50:32,090 --> 00:50:34,631 คุณสามารถไปทางซ้ายหรือขวา ​​แต่ สิ่งที่เกี่ยวกับสถานการณ์ที่สามที่? 106 00:50:34,631 --> 00:50:35,760 เกิดอะไรขึ้นถ้า x เท่ากับ Y? 107 00:50:35,760 --> 00:50:36,500 ไม่ใช่เรื่องใหญ่. 108 00:50:36,500 --> 00:50:39,640 ใช้ชิ้นส่วนจิ๊กซอว์หนึ่งใส่ อีกคนหนึ่งภายในของมัน 109 00:50:39,640 --> 00:50:45,759 เพื่อสร้างความหมายเทียบเท่า หากอื่นถ้า else-- และตอนนี้คุณ 110 00:50:45,759 --> 00:50:47,300 มีทางแยกสามทางของคุณในถนน 111 00:50:47,300 --> 00:50:49,091 และการที่เราจะได้เห็น ชิ้นส่วนปริศนารอยขีดข่วน 112 00:50:49,091 --> 00:50:51,820 สามารถยืดและเติบโตเพื่อให้ ในฐานะที่จะยัดเยียดสิ่งอื่น ๆ อีกในพวกเขา 113 00:50:51,820 --> 00:50:54,420 คุณไม่จำเป็นต้องให้พอดี ทุกอย่างในขนาดเริ่มต้นของ 114 00:50:54,420 --> 00:50:56,690 >> นี่คือสิ่งที่เราจะ เร็ว ๆ นี้เห็นจะเรียกว่าอาร์เรย์ 115 00:50:56,690 --> 00:51:00,880 มันเหมือน list-- วิธีการบางอย่าง การจัดเก็บข้อมูลหลายชิ้น 116 00:51:00,880 --> 00:51:02,886 ในตัวแปรที่ไม่เพียงตัวเลข 117 00:51:02,886 --> 00:51:05,760 เหล่านี้เราจะเห็นตัวแทนของ สิ่งที่เรียกว่ามัลติเธรด 118 00:51:05,760 --> 00:51:08,280 ในความเป็นจริงทั้งหมดของคุณ แม็คและพีซีวันนี้ 119 00:51:08,280 --> 00:51:10,810 การสนับสนุนหลายเธรด ซึ่งหมายความว่าคุณสามารถอย่างแท้จริง 120 00:51:10,810 --> 00:51:12,390 ทำในสิ่งที่หลายครั้ง 121 00:51:12,390 --> 00:51:15,390 คุณสามารถมีโปรแกรม Microsoft Word ขึ้นมาใน เบื้องหน้าที่ทำงานเกี่ยวกับการเขียนเรียงความบาง 122 00:51:15,390 --> 00:51:17,160 คุณอาจจะมีเบราว์เซอร์ ในการเปิดพื้นหลัง 123 00:51:17,160 --> 00:51:18,720 G-mail หรือ Facebook หรือชอบ 124 00:51:18,720 --> 00:51:22,730 คอมพิวเตอร์ของคุณสามารถทำสิ่งที่หลาย ๆ วันนี้เพราะมันเป็นแบบมัลติเธรด 125 00:51:22,730 --> 00:51:26,390 และโปรแกรมที่พวกเขาอยู่ในใน โดยเฉพาะอย่างยิ่งนอกจากนี้ยังมีแบบมัลติเธรด 126 00:51:26,390 --> 00:51:28,970 >> มีสิ่งที่เรียกว่าเป็นเหตุการณ์ที่เกิดขึ้น ดีในโลกของรอยขีดข่วน 127 00:51:28,970 --> 00:51:32,640 แล้วมีวิธีที่มากเกินไปจะทำให้ ตัวเองชิ้นส่วนปริศนาของเราเองถ้าสิ่งที่ 128 00:51:32,640 --> 00:51:34,810 ไม่จริงที่มีอยู่ในล่วงหน้า 129 00:51:34,810 --> 00:51:38,260 ดังนั้นขอกระตุ้นให้ดังต่อไปนี้ 130 00:51:38,260 --> 00:51:40,580 บางปีที่ผ่านมาเมื่อฉัน ค้นพบครั้งแรกเกา 131 00:51:40,580 --> 00:51:43,530 เมื่อฉันเป็นจริง นักศึกษาที่สำเร็จการศึกษาที่ MIT เรา 132 00:51:43,530 --> 00:51:45,640 ตัวเองถูกมอบหมายเพื่อให้การบ้าน 133 00:51:45,640 --> 00:51:47,614 และฉัน implemented-- ซึ่งในการหวนกลับ 134 00:51:47,614 --> 00:51:50,780 คือการตัดสินใจที่ดีมากเพราะมันเป็น เพลงโกรธมากที่สุดในโลก 135 00:51:50,780 --> 00:51:53,321 เพื่อฟังสำหรับแปดชั่วโมง ขณะที่ทำงานใน homework-- ของคุณ 136 00:51:53,321 --> 00:51:57,180 แต่สิ่งที่ผมเคยเรียกว่าออสการ์เวลา ซึ่งอาจจะเป็นเพลงที่คุ้นเคย 137 00:51:57,180 --> 00:51:59,820 >> CS50s เจ้าของจอร์แดนฮายาชิซึ่งเป็นหนึ่งใน สมาชิกในทีมงานของเรามากขึ้นอาวุโส 138 00:51:59,820 --> 00:52:03,920 ได้ปรับปรุงมันปี 2015 และ ตอนนี้ปี 2016 ตั้งแต่กลับมาในวันที่ 139 00:52:03,920 --> 00:52:06,610 ฉันมีเพียงแค่ทุกอย่างไป เข้าออสการ์ถังขยะ 140 00:52:06,610 --> 00:52:09,320 ตอนนี้เราสนับสนุนการรีไซเคิลและการทำปุ๋ยหมัก 141 00:52:09,320 --> 00:52:12,050 >> แต่การที่จะวาดภาพ ของสิ่งที่เราสามารถทำอะไรที่นี่ 142 00:52:12,050 --> 00:52:14,130 และเพื่อกระตุ้นให้บางส่วนของ ตัวอย่างที่ระดับต่ำกว่า 143 00:52:14,130 --> 00:52:16,400 เราจะได้รับคนอื่น ๆ อาสาสมัครที่จะเพียงแค่มาขึ้น 144 00:52:16,400 --> 00:52:18,331 และเล่นครั้งแรกของฉัน มอบหมายการบ้านเคย? 145 00:52:18,331 --> 00:52:18,830 มาขึ้น 146 00:52:18,830 --> 00:52:19,250 คุณชื่ออะไร? 147 00:52:19,250 --> 00:52:20,030 >> HENRY: เฮนรี่ 148 00:52:20,030 --> 00:52:22,660 >> DAVID ลัน: เฮนรี่มาขึ้น 149 00:52:22,660 --> 00:52:24,190 มาขึ้น 150 00:52:24,190 --> 00:52:27,070 มุ่งหน้าไปทางใดทางหนึ่งและ คุณจะเห็นในช่วงเวลาที่ 151 00:52:27,070 --> 00:52:29,870 ฉันจะไปข้างหน้าและตี ธงสีเขียวในมือข้างขวาด้านบน 152 00:52:29,870 --> 00:52:31,100 มุมซึ่งหมายความว่าไป 153 00:52:31,100 --> 00:52:33,320 ไอคอนป้ายเล็ก ๆ น้อย ๆ จะไปพูดหยุด 154 00:52:33,320 --> 00:52:35,490 และที่ว่าเมื่อคุณเริ่มต้น และหยุดโปรแกรม 155 00:52:35,490 --> 00:52:36,450 ยินดีที่ได้พบคุณ. 156 00:52:36,450 --> 00:52:36,950 ก็ดี 157 00:52:36,950 --> 00:52:39,100 ดังนั้นเรากำลังจะไปดูคำแนะนำ บนหน้าจอในเวลาเพียงครู่เดียว 158 00:52:39,100 --> 00:52:41,450 และเพียงแค่โดยการเล่นเกมนี้ ไม่กี่ seconds-- เชื่อใจฉัน 159 00:52:41,450 --> 00:52:43,670 เราจะไม่ต้องการที่จะเล่น ทุกวิธีการ end-- ที่คุณจะทำ 160 00:52:43,670 --> 00:52:45,470 รับความรู้สึกของสิ่งที่โปรแกรมไม่ได้ 161 00:52:45,470 --> 00:52:49,170 และมากกว่าเพียงแค่การมุ่งเน้นไปที่เฮนรี่ เป็นคนดีหรือไม่ดีในเกมนี้โฟกัส 162 00:52:49,170 --> 00:52:52,600 และวิธีการที่มันถูกนำมาใช้โดยฉัน แต่เดิมแล้วโดยจอร์แดน 163 00:52:52,600 --> 00:52:54,640 ในคำอื่น ๆ ที่เป็นตัวแปรหรือไม่ 164 00:52:54,640 --> 00:52:55,520 อยู่ที่ไหนลูปหรือไม่ 165 00:52:55,520 --> 00:52:56,520 ที่มีฟังก์ชั่นหรือไม่ 166 00:52:56,520 --> 00:53:00,700 และเราจะดูว่าเราไม่เห็น ผู้ที่อยู่ใต้ฝากระโปรง 167 00:53:00,700 --> 00:53:03,660 >> เพียงแค่คลิกและลากถังขยะ ไปยังถังที่เหมาะสม 168 00:53:03,660 --> 00:54:02,100 >> [เสียงเพลง] 169 00:54:02,100 --> 00:54:02,600 ก็ดี 170 00:54:02,600 --> 00:54:03,160 นั่นเป็นสิ่งที่ดีมาก 171 00:54:03,160 --> 00:54:04,286 ทำไมเราไม่หยุดมันมี 172 00:54:04,286 --> 00:54:04,786 ขอขอบคุณ. 173 00:54:04,786 --> 00:54:05,830 ขอแสดงความยินดีกับเฮนรี่ 174 00:54:05,830 --> 00:54:07,002 ขอขอบคุณ. 175 00:54:07,002 --> 00:54:10,690 >> [APPLAUSE] 176 00:54:10,690 --> 00:54:12,450 >> แค่คิดว่าการแก้จุดบกพร่องของโปรแกรม 177 00:54:12,450 --> 00:54:15,880 หากมีปัญหาสอง นาทีใน song-- แต่เพื่อให้ 178 00:54:15,880 --> 00:54:17,430 สิ่งที่เกิดขึ้นที่นี่จริงๆ? 179 00:54:17,430 --> 00:54:20,900 ซับซ้อนเท่าที่มันอาจ เริ่มต้นที่จะดูเหมือนจะได้รับเมื่อเวลาผ่านไป 180 00:54:20,900 --> 00:54:22,910 แน่นอนมากขึ้น สิ่งที่เริ่มลดลง 181 00:54:22,910 --> 00:54:25,370 สิ่งที่น่าสนใจเกี่ยวกับ ชนิดของ example-- นี้ 182 00:54:25,370 --> 00:54:27,270 และเราจะเห็นเพียงไม่กี่ others-- คือว่าถ้าคุณ 183 00:54:27,270 --> 00:54:30,416 มองผ่านความซับซ้อนหรือ ความซับซ้อนของเกม 184 00:54:30,416 --> 00:54:33,040 มีอาคารที่ง่ายมาก บล็อกที่ play-- ทุกที่ 185 00:54:33,040 --> 00:54:35,840 ถ้าคุณกลั่นให้พวกเขาเหล่านั้น กลุ่มอาคารที่มีความสามารถเข้าถึงได้มาก 186 00:54:35,840 --> 00:54:37,401 และ implementable แก่ตนเอง 187 00:54:37,401 --> 00:54:39,150 ยกตัวอย่างเช่นมันเป็น รับบางเวลา แต่ฉัน 188 00:54:39,150 --> 00:54:42,900 ค่อนข้างมั่นใจว่าสิ่งที่ผมเริ่มทำเมื่อ ทำให้เกมนี้เป็นครั้งแรก 189 00:54:42,900 --> 00:54:44,787 คือผมได้อย่างสมบูรณ์เช่น procrastinated 190 00:54:44,787 --> 00:54:47,120 ฉันไม่ได้มุ่งเน้นไปที่ทุกคนใน ตรรกะหรือชิ้นส่วนปริศนา 191 00:54:47,120 --> 00:54:50,810 ฉันมุ่งเน้นไปที่กราฟิกและการหา โพสต์ถนนและถังขยะกระป๋อง 192 00:54:50,810 --> 00:54:51,540 และทุกที่ 193 00:54:51,540 --> 00:54:53,456 แต่ผู้ที่จำเป็น ส่วนผสมในตอนแรก 194 00:54:53,456 --> 00:54:57,220 และเมื่อฉันเสร็จ procrastinating และ ออกวางกรอบการทำงานที่ครอบคลุมการ 195 00:54:57,220 --> 00:55:00,337 ผมจึงตัดสินใจให้ฉันเพียงแค่ทำให้ใครคนหนึ่ง ชิ้นส่วนของถังขยะตกจากฟ้า 196 00:55:00,337 --> 00:55:02,170 และเราจะเห็นรอยขีดข่วน สนับสนุนสิ่งที่เรียกว่า 197 00:55:02,170 --> 00:55:06,386 ตัวอักษรที่สามารถ sprites-- มีเครื่องแต่งกายที่แตกต่างกันเพื่อให้พวกเขา 198 00:55:06,386 --> 00:55:07,010 ดูแตกต่าง. 199 00:55:07,010 --> 00:55:09,660 >> และดังนั้นฉันใส่ถังขยะ เครื่องแต่งกายในหนึ่งเทพดาดังกล่าว 200 00:55:09,660 --> 00:55:12,007 และฉันก็จำเป็นต้องใช้มัน จะลดลงมาจากฟากฟ้า 201 00:55:12,007 --> 00:55:14,590 และดังนั้นจึงกลับกลายเป็นรอยขีดข่วน ชอบมากที่สุดการเขียนโปรแกรมภาษา 202 00:55:14,590 --> 00:55:18,099 สนับสนุนหมายเลขสุ่มหรือ ตัวเลขสุ่ม pseudocode ทางเทคนิค 203 00:55:18,099 --> 00:55:20,390 เพื่อที่ว่าโดยการลากและ วางชิ้นส่วนปริศนาบางอย่าง 204 00:55:20,390 --> 00:55:22,890 ฉันก็สามารถที่จะมีถังขยะ มาจากทางด้านซ้ายในตอนแรก 205 00:55:22,890 --> 00:55:25,580 แล้วครั้งต่อไปมันลดลงจาก ขวาและจากตรงกลาง 206 00:55:25,580 --> 00:55:28,060 และทุกเกมไม่เป็นเพียงแค่ มีถังขยะที่ตกลงมาจากท้องฟ้า 207 00:55:28,060 --> 00:55:29,770 คุณไม่สามารถชี้ไปที่มันหรือคลิกที่มัน 208 00:55:29,770 --> 00:55:31,103 คุณไม่สามารถเปิดถังขยะ 209 00:55:31,103 --> 00:55:32,160 คุณไม่สามารถทำอะไร 210 00:55:32,160 --> 00:55:34,450 แต่มันก็เป็นขั้นตอนที่ทารก ไปสู่​​วิสัยทัศน์ที่ดีที่สุดของฉัน 211 00:55:34,450 --> 00:55:36,720 >> และหลังจากนั้นที่จริงผม การดำเนินการบางอย่าง 212 00:55:36,720 --> 00:55:41,230 ของการตรวจจับเพื่อที่ว่าถ้าคุณไม่คลิก และลากบนชิ้นส่วนของถังขยะ 213 00:55:41,230 --> 00:55:44,350 มากกว่าถังขยะ, ออสการ์ ฝาจะเปิดและปิด 214 00:55:44,350 --> 00:55:47,650 อะไรจะเกิดขึ้นกับถังขยะ แต่ อย่างน้อยฝาจะเปิดและปิด 215 00:55:47,650 --> 00:55:49,642 ดังนั้นแล้วการตรวจสอบขั้นตอนที่สองของทั้งสอง 216 00:55:49,642 --> 00:55:52,100 และนี่คือสิ่งที่เป็นไปได้ ที่สำคัญในปัญหาทั้งตั้งศูนย์ 217 00:55:52,100 --> 00:55:55,970 และในการเขียนโปรแกรมมากขึ้นโดยทั่วไปคือการ ใช้ขั้นตอนที่ทารกเหล่านี้มากโดยเจตนา 218 00:55:55,970 --> 00:55:59,390 เพราะไม่เพียง แต่มันจะช่วยให้คุณสามารถ รู้สึกประสบความสำเร็จตรงไปตรงมามากขึ้น 219 00:55:59,390 --> 00:56:01,250 quickly-- มันเป็น สิ่งที่แย่ที่สุดในโลก 220 00:56:01,250 --> 00:56:06,149 เพื่อพยายามที่จะดำเนินการทั้งหมดของออสการ์เวลา แล้วชั่วโมงต่อมาตีธงสีเขียว 221 00:56:06,149 --> 00:56:08,440 ไม่มีอะไรและทำงานคาดว่าเป็น เพราะที่คุณทำแม้กระทั่ง 222 00:56:08,440 --> 00:56:11,150 เริ่มต้นในการแก้ปัญหาหรือ แก้ไขปัญหาโปรแกรมที่? 223 00:56:11,150 --> 00:56:12,470 มันเป็นเพียงแค่การครอบงำ 224 00:56:12,470 --> 00:56:16,792 >> และอื่น ๆ อย่างแท้จริงกอดความคิดนี้ ของการใช้ขั้นตอนทารก steps-- อีกครั้ง 225 00:56:16,792 --> 00:56:19,000 และ again-- การสร้างขึ้น บางสิ่งบางอย่างที่ในท้ายที่สุด 226 00:56:19,000 --> 00:56:23,672 จริงๆที่น่าประทับใจและซับซ้อน แต่ ตอนแรกไม่ได้เกือบเป็นอย่างมาก 227 00:56:23,672 --> 00:56:24,630 ในความเป็นจริงเรามาทำเช่นนี้ 228 00:56:24,630 --> 00:56:28,989 ผมขอไปข้างหน้า and-- เกาตัวเอง ที่มีอยู่บนเว็บที่ Scratch.MIT.edu ที่ 229 00:56:28,989 --> 00:56:30,780 และคุณจะบอกว่าเป็น มากอีกครั้งในปัญหา 230 00:56:30,780 --> 00:56:34,200 ตั้งศูนย์ข้อกำหนดสำหรับ ที่มีอยู่แล้วบนเว็บไซต์ของ CS50 231 00:56:34,200 --> 00:56:35,725 >> แต่นี่คือสิ่งที่ตัวเองเป็นรอยขีดข่วน 232 00:56:35,725 --> 00:56:38,210 และมีจริงๆเพียงแค่ สามส่วนหลัก ๆ 233 00:56:38,210 --> 00:56:40,980 ที่ด้านซ้ายบนมี เป็นขั้นตอนที่เรียกว่า 234 00:56:40,980 --> 00:56:41,810 นี้เป็นรอยขีดข่วน 235 00:56:41,810 --> 00:56:43,710 เครื่องแต่งกายเริ่มต้นคือแมว 236 00:56:43,710 --> 00:56:46,950 และนี่คือโลกสี่เหลี่ยม ซึ่งคุณสามารถ move-- ขึ้นลงซ้าย 237 00:56:46,950 --> 00:56:48,130 ที่เหมาะสมและบางสิ่งอื่น ๆ 238 00:56:48,130 --> 00:56:51,839 ที่อยู่ตรงกลางนี่คือหมวดหมู่ของเรา หรือพาเลทของชิ้นส่วนจิ๊กซอว์ของเรา 239 00:56:51,839 --> 00:56:53,630 และสีที่แตกต่างกัน หมายถึงสิ่งที่แตกต่างกัน 240 00:56:53,630 --> 00:56:56,520 และถ้าคุณกระตุ้นรอบคุณจะเห็น สิ่งที่ชอบลูปและเงื่อนไข 241 00:56:56,520 --> 00:56:58,160 และตัวแปรและส่วนผสมอื่น ๆ 242 00:56:58,160 --> 00:57:00,060 >> แล้วที่นี่เป็นพื้นที่สคริปต์ 243 00:57:00,060 --> 00:57:03,020 นี่คือที่ฉันสามารถลากและวาง บรรดาชิ้นส่วนปริศนาที่จะทำสิ่ง 244 00:57:03,020 --> 00:57:04,690 เพื่อขอทำสิ่งนั้นอย่างใดอย่างหนึ่ง 245 00:57:04,690 --> 00:57:06,630 ผมขอไปข้างหน้า and-- และฉันรู้ว่ามันอยู่ที่ไหน 246 00:57:06,630 --> 00:57:10,110 ดังนั้นผมจะไปทันทีคลิกที่ ที่ฉันรู้ว่าสิ่งที่มีความพร้อมที่จะเป็นไปได้ 247 00:57:10,110 --> 00:57:13,140 แต่การชี้และคลิกและ poking รอบอย่างหลีกเลี่ยงไม่ 248 00:57:13,140 --> 00:57:15,320 ดังนั้นเมื่อธงสีเขียวคลิก สิ่งที่ฉันต้องการจะทำอย่างไร 249 00:57:15,320 --> 00:57:17,100 ฉันจะทำเช่นนี้ 250 00:57:17,100 --> 00:57:20,699 ฉันจะลากปริศนาสีม่วงนี้ ชิ้นทักทายสองวินาที 251 00:57:20,699 --> 00:57:21,490 และแจ้งให้เราซูมเข้า 252 00:57:21,490 --> 00:57:23,865 >> และฉันจะมีการเปลี่ยนแปลงนี้ จะเป็นสิ่งที่ฉันต้องการให้ be-- 253 00:57:23,865 --> 00:57:26,471 Hello World สองวินาทีจะปรับ 254 00:57:26,471 --> 00:57:28,970 ตอนนี้ผมกำลังจะไปคลิก ธงสีเขียวหรือถ้าผมต้องการจริงๆ 255 00:57:28,970 --> 00:57:31,820 ฉันเต็มสามารถคัดกรองและจากนั้นกลับมา 256 00:57:31,820 --> 00:57:34,060 มันก็จะทำให้ ทุกอย่างในหน้าต่างเดียว 257 00:57:34,060 --> 00:57:36,141 กรีนเวิลด์ Hello flag-- 258 00:57:36,141 --> 00:57:36,640 ก็ดี 259 00:57:36,640 --> 00:57:38,789 ไม่ใช่สิ่งที่น่าสนใจ 260 00:57:38,789 --> 00:57:40,080 เพื่อให้ฉันไปข้างหน้าและทำเช่นนี้ 261 00:57:40,080 --> 00:57:41,038 ผมขอลองอีกหนึ่ง 262 00:57:41,038 --> 00:57:44,740 เมื่อธงสีเขียว clicked-- ขอ ทำสิ่งที่ชอบเสียง 263 00:57:44,740 --> 00:57:46,880 และสังเกตเห็นว่าออกมาจาก กล่องฟรีที่คุณได้รับ 264 00:57:46,880 --> 00:57:49,910 เสียงแมวที่เป็นผีสางเริ่มต้น 265 00:57:49,910 --> 00:57:52,380 ดังนั้นตอนนี้ให้ฉันไปข้างหน้าและ ตีธงสีเขียวในขณะนี้ 266 00:57:52,380 --> 00:57:53,224 >> [meowing] 267 00:57:53,224 --> 00:57:54,490 >> อัล 268 00:57:54,490 --> 00:57:55,370 ที่น่ารัก 269 00:57:55,370 --> 00:57:57,040 ฉันเขียนโปรแกรม 270 00:57:57,040 --> 00:57:58,550 ดังนั้นสิ่งที่ฉันได้ทำ? 271 00:57:58,550 --> 00:58:00,430 นี้จะเทียบเท่าของโปรแกรม 272 00:58:00,430 --> 00:58:01,600 มันเห็นได้ชัดง่ายสุด 273 00:58:01,600 --> 00:58:05,300 มันไม่ได้จริงๆใช้เวลาทั้งหมดที่มาก ความพยายามและเอ็มไอทีได้มากที่สุดของการทำงาน 274 00:58:05,300 --> 00:58:07,890 แต่เราเรียกฟังก์ชั่น 275 00:58:07,890 --> 00:58:08,940 ฉันได้ใช้ฟังก์ชั่น 276 00:58:08,940 --> 00:58:12,480 ผมได้ทำการกระทำบางอย่างโดยใช้เพียง ว่าชิ้นส่วนจิ๊กซอว์หนึ่งสีม่วง 277 00:58:12,480 --> 00:58:15,960 >> ดีถ้าฉันต้องการจะทำ สาม meows ในแถว? 278 00:58:15,960 --> 00:58:18,570 ให้ฉันไปข้างหน้าและทำสองและสาม 279 00:58:18,570 --> 00:58:20,910 และแจ้งให้ทราบว่าเมื่อคุณ เลื่อนเมาส์ไปวางในบริเวณใกล้เคียงชิ้นส่วนจิ๊กซอว์ 280 00:58:20,910 --> 00:58:22,970 เส้นสีขาวเล็ก ๆ น้อย ๆ จะปรากฏขึ้น การจัดเรียงของสนามแม่เหล็ก 281 00:58:22,970 --> 00:58:25,190 และมันจะสแนป ร่วมกันเมื่อคุณปล่อยให้ไป 282 00:58:25,190 --> 00:58:26,600 ลองมาดูสิ่งที่เกิดขึ้นที่นี่ 283 00:58:26,600 --> 00:58:27,920 >> [meowing] 284 00:58:27,920 --> 00:58:32,390 285 00:58:32,390 --> 00:58:34,510 >> มีข้อผิดพลาดคือ 286 00:58:34,510 --> 00:58:35,650 ฉันเท่านั้นที่ได้ยิน Meow 287 00:58:35,650 --> 00:58:37,440 ทำไมว่าอาจจะมี? 288 00:58:37,440 --> 00:58:39,001 ใช่? 289 00:58:39,001 --> 00:58:39,500 ใช่. 290 00:58:39,500 --> 00:58:41,650 เราไม่ได้จริงๆได้ยินมัน แต่นั่นคือสัญชาตญาณที่ดี 291 00:58:41,650 --> 00:58:43,400 พวกเขากำลังเล่นทั้งหมดในเวลาเดียวกัน 292 00:58:43,400 --> 00:58:44,000 ทำไม? 293 00:58:44,000 --> 00:58:46,587 ดีคอมพิวเตอร์เป็นเพียงการไป ทำในสิ่งที่คุณบอกว่าจะทำอย่างไร 294 00:58:46,587 --> 00:58:48,670 ดังนั้นถ้าคุณจะพูดว่าเสียงเล่น เล่นเสียงเล่นเสียง 295 00:58:48,670 --> 00:58:52,887 แต่คุณไม่ได้บอกว่าจะเล่นจนกว่า คุณทำเสร็จแล้วเล่นจนกว่าคุณจะดำเนินการเสร็จแล้ว 296 00:58:52,887 --> 00:58:54,970 มันจะพัดผ่าน โปรแกรมได้อย่างรวดเร็วจริงๆ 297 00:58:54,970 --> 00:58:56,830 และไม่เพียง แต่สิ่งที่คุณบอกว่าจะทำอย่างไร 298 00:58:56,830 --> 00:58:59,040 >> ดังนั้นที่จริงผมต้องแก้ไข ในสองวิธี 299 00:58:59,040 --> 00:59:00,623 ฉันสามารถทำเช่นนี้ได้รับการกำจัดนี้ 300 00:59:00,623 --> 00:59:04,180 ผมขอลองปริศนาอื่น ๆ piece-- เล่น Meow เสียงจนสุก 301 00:59:04,180 --> 00:59:07,072 แล้วลากสาม เหล่านี้และคลิกเล่น 302 00:59:07,072 --> 00:59:09,430 >> [meowing] 303 00:59:09,430 --> 00:59:13,350 >> มันไม่ได้จริงๆ very-- ขอบคุณ you-- ธรรมชาติมาก 304 00:59:13,350 --> 00:59:16,590 ดังนั้นทำไมคุณไม่ปล่อยให้ I-- ฉันไปในการควบคุมที่นี่ 305 00:59:16,590 --> 00:59:17,090 ดี 306 00:59:17,090 --> 00:59:22,230 รอคนที่สองและตอนนี้ให้ฉันกลับไป เสียงและเล่นเสียงจนสุก 307 00:59:22,230 --> 00:59:24,620 และจากนั้นให้ฉันได้รับรอคนที่สอง 308 00:59:24,620 --> 00:59:28,692 แล้วปล่อยให้ฉันไปและได้รับหนึ่ง เสียงมากขึ้นและที่นี่เราไป 309 00:59:28,692 --> 00:59:31,350 >> [meowing] 310 00:59:31,350 --> 00:59:35,930 >> เล็ก ๆ น้อย ๆ เป็นธรรมชาติมากขึ้น แต่ นี้ไม่ได้มีประสิทธิภาพมาก 311 00:59:35,930 --> 00:59:39,830 เช่นเดียวกับที่ผมได้รับเบื่อทั้งหมดเป็น มันสั้นคลิกกลับมา 312 00:59:39,830 --> 00:59:42,724 และจริงๆซ้ำ work-- ของฉัน คัดลอกสวยมากและวาง 313 00:59:42,724 --> 00:59:44,640 แน่นอนถ้าฉันจะควบคุม คลิกหรือคลิกขวา, 314 00:59:44,640 --> 00:59:46,500 ฉันจะได้คัดลอกและวาง 315 00:59:46,500 --> 00:59:49,870 สิ่งที่จะเป็นดีกว่าสร้างจะใช้? 316 00:59:49,870 --> 00:59:51,090 สิ่งที่คิดจากมาก่อนหรือไม่ 317 00:59:51,090 --> 00:59:51,990 >> ใช่ดังนั้นห่วง 318 00:59:51,990 --> 00:59:54,580 และในความเป็นจริงถ้าเราแหย่ไปรอบ ๆ เราอาจพบว่าที่ 319 00:59:54,580 --> 00:59:57,730 ผมขอไปที่กิจกรรมหรือมากกว่าการควบคุม 320 00:59:57,730 --> 00:59:59,650 ดังนั้น repeat-- ฉันทำไม่ได้ ต้องการให้เป็น 10 ครั้ง 321 00:59:59,650 --> 01:00:01,370 ที่จะได้รับที่น่ารำคาญอย่างรวดเร็ว 322 01:00:01,370 --> 01:00:03,380 แต่ผมจะทำซ้ำสามครั้ง 323 01:00:03,380 --> 01:00:06,355 ผมขอกลับไปเสียงและ เล่นเสียงจนกว่าจะเสร็จ 324 01:00:06,355 --> 01:00:08,480 ผมขอกลับไปควบคุม และเพียงแค่รอคนที่สอง 325 01:00:08,480 --> 01:00:10,271 และแจ้งให้ทราบคุณอาจ คิดว่ามันไม่พอดี 326 01:00:10,271 --> 01:00:13,520 อีกครั้ง แต่ถ้าสนามแม่เหล็กคุณให้มัน สแน็ปในสถานที่ที่มันจะเติบโตในการกรอกข้อมูล 327 01:00:13,520 --> 01:00:14,971 มันเป็นสิ่งที่เล่นตอนนี้? 328 01:00:14,971 --> 01:00:18,500 >> [meowing] 329 01:00:18,500 --> 01:00:19,000 ตกลง. 330 01:00:19,000 --> 01:00:19,660 ดี 331 01:00:19,660 --> 01:00:22,540 และนี่คือสิ่งที่จะเรียกว่า โปรแกรมที่ยังถูกต้อง 332 01:00:22,540 --> 01:00:27,590 มัน meowed สามครั้งอย่างเป็นธรรม ธรรมชาติ แต่มันได้รับการออกแบบที่ดีกว่า 333 01:00:27,590 --> 01:00:29,580 ฉันใช้ความซ้ำซ้อนน้อย 334 01:00:29,580 --> 01:00:30,970 ฉันไม่ได้คัดลอกและวางอะไร 335 01:00:30,970 --> 01:00:32,470 ฉันเพียงแค่ใช้ความคิดที่ดี 336 01:00:32,470 --> 01:00:35,340 >> ตอนนี้ยังคงไม่ได้ทั้งหมดที่ น่าสนใจที่มีรอยขีดข่วนไม่ได้ทำ 337 01:00:35,340 --> 01:00:35,930 สิ่งใด 338 01:00:35,930 --> 01:00:37,388 เพื่อขอทำอย่างอื่นแทน 339 01:00:37,388 --> 01:00:38,670 ขอทำบางสิ่งบางอย่างไปตลอดกาล 340 01:00:38,670 --> 01:00:39,420 และคุณรู้อะไรไหม 341 01:00:39,420 --> 01:00:40,470 ดูเหมือนว่าการเคลื่อนไหวที่น่าสนใจ 342 01:00:40,470 --> 01:00:45,760 ได้ขอให้เขาย้าย 10 ขั้นตอนและกดเล่นตอนนี้ 343 01:00:45,760 --> 01:00:46,570 >> ตกลง. 344 01:00:46,570 --> 01:00:49,300 ดีที่เราสามารถทำได้ชนิดของการลาก เขากลับมาและเขาก็ยังคง 345 01:00:49,300 --> 01:00:51,250 ทำงานเพราะเขาทำเช่นนี้ตลอดไป 346 01:00:51,250 --> 01:00:53,150 ดังนั้นห่วงจะทำ สิ่งที่มันบอกว่าจะทำอย่างไร 347 01:00:53,150 --> 01:00:54,650 แต่นี้ไม่ได้ทั้งหมดที่น่าสนใจว่า 348 01:00:54,650 --> 01:00:55,310 ลงมือทำกันเถอะ. 349 01:00:55,310 --> 01:00:59,870 ผมขอเพิ่มบล็อกการควบคุมและใช้อย่างใดอย่างหนึ่ง ของเงื่อนไขเหล่านั้นเป็นครั้งแรก 350 01:00:59,870 --> 01:01:03,119 >> ดังนั้นมันจะย้าย 10 steps-- 10 จุด 10 พิกเซลบน screen-- 351 01:01:03,119 --> 01:01:04,660 แล้วก็จะถามคำถามนี้ 352 01:01:04,660 --> 01:01:09,340 หากสิ่งที่เป็นความจริงแล้วทำ สิ่งที่อยู่ภายในบล็อกนี้ 353 01:01:09,340 --> 01:01:13,060 ดังนั้นมันจะเปิดออกตรวจจับมีทั้ง พวงของ expressions-- บูลีน 354 01:01:13,060 --> 01:01:16,580 คำถามใช่หรือไม่จริง เท็จ form-- ให้ฉันทำเช่นนี้ 355 01:01:16,580 --> 01:01:19,260 >> หาก touching-- แล้วมี นี้ลดลงน้อยลงเมนู 356 01:01:19,260 --> 01:01:20,410 ฉันสามารถ parameterize มัน 357 01:01:20,410 --> 01:01:23,010 หากสัมผัส edge-- ขอ ทำสิ่งที่ต้องการที่ 358 01:01:23,010 --> 01:01:27,310 ดังนั้นหากสัมผัส edge-- ให้ฉันกลับไปเคลื่อนไหว 359 01:01:27,310 --> 01:01:32,281 และทำไมเราไม่เพียง หันไปรอบ ๆ 180 องศา? 360 01:01:32,281 --> 01:01:32,780 ก็ดี 361 01:01:32,780 --> 01:01:35,070 ดังนั้นตลอดย้าย 10 ขั้นตอน 362 01:01:35,070 --> 01:01:37,670 หากคุณกำลังสัมผัส ขอบเลี้ยว 180 องศา 363 01:01:37,670 --> 01:01:39,720 และที่ไม่สิ้นสุดของโปรแกรม เพราะคุณอยู่ในตลอดไปปิดกั้น 364 01:01:39,720 --> 01:01:42,053 จึงจะไปอีกครั้งและ อีกครั้งและอีกครั้งและอีกครั้ง 365 01:01:42,053 --> 01:01:43,980 ดังนั้นเรามาดูสิ่งที่เกิดขึ้น 366 01:01:43,980 --> 01:01:44,785 ตกลง. 367 01:01:44,785 --> 01:01:48,270 รถม้าชนิดเล็ก ๆ น้อย ๆ แต่ชนิดของเย็น 368 01:01:48,270 --> 01:01:51,710 >> และเราสามารถเพิ่มนี้สิ่งที่โง่บาง ว่าจะไม่ทั้งหมดที่สติปัญญา 369 01:01:51,710 --> 01:01:52,270 น่าสนใจ 370 01:01:52,270 --> 01:01:57,210 แต่ถ้าเราตีเล็ก ๆ นี้ ไมโครโฟน button-- อุ๊ย 371 01:01:57,210 --> 01:01:58,480 ให้ฉันทำความสะอาดนี้ขึ้น 372 01:01:58,480 --> 01:02:01,540 ผมขอเพิ่มประสิทธิภาพนี้เป็น พวกเขาจะบอกว่าในทีวี 373 01:02:01,540 --> 01:02:05,400 สะอาดขึ้นบันทึก ตอนนี้ไปถึงสคริปต์ 374 01:02:05,400 --> 01:02:07,500 >> และตอนนี้ให้ฉันไปเสียง 375 01:02:07,500 --> 01:02:09,002 ผมขอให้มันชื่อ 376 01:02:09,002 --> 01:02:12,440 ฉันจะเรียกสิ่งนี้ว่าอุ๊ย 377 01:02:12,440 --> 01:02:13,840 และตอนนี้เล่นอุ๊ยเสียง 378 01:02:13,840 --> 01:02:16,520 แจ้งให้ทราบว่าจะปรากฏใน ลดลงน้อยลงเมนู 379 01:02:16,520 --> 01:02:17,612 มาดูกัน. 380 01:02:17,612 --> 01:02:20,444 >> [OUCH] 381 01:02:20,444 --> 01:02:24,377 >> [หัวเราะ] 382 01:02:24,377 --> 01:02:25,835 แต่เราสามารถเปลี่ยนเสื้อของเขาเกี่ยวกับการบิน 383 01:02:25,835 --> 01:02:28,106 เราสามารถเป็นสองเท่าที่น่ารำคาญ 384 01:02:28,106 --> 01:02:31,760 >> [OUCH] 385 01:02:31,760 --> 01:02:35,332 >> หรือถ้าเราทำให้มันเหมือน 1,000 ขั้นตอนที่ time-- 386 01:02:35,332 --> 01:02:39,900 387 01:02:39,900 --> 01:02:40,670 >> ตกลง. 388 01:02:40,670 --> 01:02:42,295 ดังนั้นเรากำลังจะออกจากที่หนึ่งเพียงอย่างเดียว 389 01:02:42,295 --> 01:02:45,290 ดังนั้นอีกครั้งสร้าง blocks-- ฉัน เริ่มต้นด้วยสิ่งที่ง่ายสุด 390 01:02:45,290 --> 01:02:47,930 แล้วฉันจะเพิ่มคุณลักษณะ เพิ่มคุณสมบัติให้เพิ่มคุณลักษณะ 391 01:02:47,930 --> 01:02:50,721 และฉันไม่จำเป็นต้องกังวลเกี่ยวกับ วิธีการแรกของคุณสมบัติเหล่านั้น 392 01:02:50,721 --> 01:02:53,690 ถูกนำมาใช้เป็นฉันยังคง สิ่งที่ชั้นบน 393 01:02:53,690 --> 01:02:55,430 ดังนั้นในความเป็นจริงให้ฉันทำอย่างใดอย่างหนึ่งอื่น ๆ ที่นี่ 394 01:02:55,430 --> 01:03:00,580 ให้ฉันไปข้างหน้าและเปิดไฟล์ที่ ผมนำล่วงหน้าที่เรียกว่าแกะ 395 01:03:00,580 --> 01:03:03,970 >> ดังนั้นจึงมีความแตกต่างกันเล็กน้อย ตัวละครที่มีลักษณะเช่นนี้ 396 01:03:03,970 --> 01:03:07,370 และแจ้งให้เราดูว่าฉันไม่สามารถ ทำอะไรบางอย่างโดยใช้เคาน์เตอร์ 397 01:03:07,370 --> 01:03:09,310 ในเรื่องนี้ case-- ตัวแปรที่เรียกว่า 398 01:03:09,310 --> 01:03:15,540 ฉันจะไปข้างหน้าและภายใต้ Events-- ให้ฉันได้รับธงสีเขียวคลิก 399 01:03:15,540 --> 01:03:19,030 ก็ขอให้ข้าไปที่ข้อมูลซึ่งฉันรู้ว่า จากการเล่นรอบก่อน 400 01:03:19,030 --> 01:03:20,214 เป็นที่ที่มีตัวแปร 401 01:03:20,214 --> 01:03:21,880 และฉันจะไปข้างหน้าและลากนี้ 402 01:03:21,880 --> 01:03:25,144 >> ดังนั้นตัวแปรที่เรียกว่าเคาน์เตอร์และ ฉันจะเริ่มต้นมันให้เป็นศูนย์ 403 01:03:25,144 --> 01:03:27,560 ฉันจะเรียกมันว่าอะไรเลย X หรือ Y หรือ z-- แต่ในการเขียนโปรแกรม 404 01:03:27,560 --> 01:03:30,410 เรียกร้องบางสิ่งบางอย่างในความหมาย วิธีที่มีประโยชน์เช่นเคาน์เตอร์ 405 01:03:30,410 --> 01:03:34,540 ที่อธิบายว่ามันคืออะไรมันเป็น มากง่ายต่อการอ่านรห​​ัสของคุณในภายหลัง 406 01:03:34,540 --> 01:03:37,460 ให้ฉันไปข้างหน้าและได้รับ ตลอดไปปิดกั้นที่นี่ 407 01:03:37,460 --> 01:03:41,289 และแจ้งให้เราไปที่รูปลักษณ์ หน้าและทำบล็อกพูด 408 01:03:41,289 --> 01:03:44,330 แต่สิ่งที่ดีๆเกี่ยวกับตัวแปรคือผม ไม่ได้มีเพียงแค่พิมพ์ในบางสิ่งบางอย่าง 409 01:03:44,330 --> 01:03:47,850 เช่น Hello World ซึ่งเราได้แล้ว ทำผมแทนสามารถไปที่ข้อมูล 410 01:03:47,850 --> 01:03:50,690 และลากตัวแปรของฉันและแม้กระทั่ง แม้ว่ารูปร่างจะไม่มาก 411 01:03:50,690 --> 01:03:53,000 ลักษณะเช่นนั้นควรจะพอดี มันจะเติบโตในการกรอกข้อมูล 412 01:03:53,000 --> 01:03:58,396 และฉันก็จะบอกว่านับเป็นเวลาหนึ่ง spoiler-- second-- เขาจะนับ 413 01:03:58,396 --> 01:04:00,380 เราจะบอกว่ามันสำหรับคนที่สอง 414 01:04:00,380 --> 01:04:02,840 แล้วฉันจะไปและ มีเขารอหนึ่งวินาที 415 01:04:02,840 --> 01:04:04,650 ดังนั้นจึงไม่นับขึ้นเร็วเกินไป 416 01:04:04,650 --> 01:04:08,430 แล้วสุดท้ายเปลี่ยนเคาน์เตอร์ โดย one-- ในคำอื่น ๆ 417 01:04:08,430 --> 01:04:13,520 เพิ่มเคาน์เตอร์โดยหนึ่ง มูลค่าเพิ่มและทำเช่นนี้ตลอดไป 418 01:04:13,520 --> 01:04:16,129 >> ดังนั้นแกะเกินไปเช่น โปรแกรมเมอร์นับจาก 0 419 01:04:16,129 --> 01:04:20,350 420 01:04:20,350 --> 01:04:23,740 และถ้าเรารอนานพอ เขาจะทำเช่นนี้ตลอดไป 421 01:04:23,740 --> 01:04:27,740 แต่ที่ไม่เป็นความจริงว่าเพราะ ในความเป็นจริงที่เราจะค้นพบในสัปดาห์หนึ่ง 422 01:04:27,740 --> 01:04:31,871 จำนวนเต็มและคอมพิวเตอร์มากกว่าปกติ ในทางเทคนิคมีเพียง finite-- ดี 423 01:04:31,871 --> 01:04:33,829 ค่อนข้างคอมพิวเตอร์เมื่อ พวกเขาเป็นตัวแทนจำนวนเต็ม 424 01:04:33,829 --> 01:04:35,670 เพียง แต่มีจำนวน จำกัด บิต 425 01:04:35,670 --> 01:04:37,860 ผู้ที่มีหลอดไฟ สามารถนับสูงมาก 426 01:04:37,860 --> 01:04:39,239 ก่อนที่คุณจะออกจากหลอดไฟ 427 01:04:39,239 --> 01:04:41,590 และคอมพิวเตอร์มากเกินไป เพียง แต่มีหน่วยความจำมาก 428 01:04:41,590 --> 01:04:44,640 เพียง แต่มีทรานซิสเตอร์จำนวนมากดังนั้น ดังนั้นจึงสามารถนับสูงมาก 429 01:04:44,640 --> 01:04:47,409 >> ดังนั้นจึงปรากฎว่าแกะ ผมคิดว่าสามารถนับถึง 2 พันล้าน 430 01:04:47,409 --> 01:04:48,409 หรือสิ่งที่สวยขนาดใหญ่ 431 01:04:48,409 --> 01:04:50,325 ดังนั้นเราจึงไม่ได้ไป รอให้เรื่องนี้เกิดขึ้น 432 01:04:50,325 --> 01:04:54,850 แต่ในที่สุดข้อผิดพลาดบางอย่างที่จะเกิดขึ้น ที่สามารถมีโลกแห่งความจริงบางอย่าง 433 01:04:54,850 --> 01:04:55,970 เครือข่าย 434 01:04:55,970 --> 01:04:58,861 แต่นอกเหนือจากแกะที่ เพียงแค่แนะนำตัวแปร 435 01:04:58,861 --> 01:05:01,110 Let 's ไปข้างหน้าและเปิดขึ้น สิ่งที่ฉันทำล่วงหน้า 436 01:05:01,110 --> 01:05:07,430 นี่เรียกว่าสัตว์เลี้ยง Cat-- สัตว์เลี้ยงแมวมากกว่าที่นี่ 437 01:05:07,430 --> 01:05:10,420 และแจ้งให้ทราบที่นี่มันกี่ บล็อก แต่เมื่อธงสีเขียว 438 01:05:10,420 --> 01:05:12,474 คลิกตลอดไปทำดังต่อไปนี้ 439 01:05:12,474 --> 01:05:15,265 หากคุณกำลังสัมผัสเมาส์ pointer-- เพื่อให้เคอร์เซอร์บนหน้าจอ 440 01:05:15,265 --> 01:05:18,529 เล่น arrow-- Meow เสียง แล้วรอสองวินาที 441 01:05:18,529 --> 01:05:19,570 และเพียงแค่ทำเช่นนี้ตลอดไป 442 01:05:19,570 --> 01:05:22,619 เพียงแค่รออย่างต่อเนื่อง เพื่อดูว่า pointer-- 443 01:05:22,619 --> 01:05:24,710 ถ้าแมวสัมผัสตัวชี้ 444 01:05:24,710 --> 01:05:26,060 >> ดังนั้นผมตีเล่น 445 01:05:26,060 --> 01:05:26,920 สิ่งที่เกิดขึ้นไม่มีอะไร 446 01:05:26,920 --> 01:05:28,980 แต่ที่ผมเลื่อนเคอร์เซอร์ไปแมว 447 01:05:28,980 --> 01:05:31,960 >> [meowing] 448 01:05:31,960 --> 01:05:34,750 >> และถ้าผมย้ายมันออกไปไม่ได้ ลูบคลำแมวอีกต่อไป 449 01:05:34,750 --> 01:05:38,090 ดังนั้นบางตรรกะเงื่อนไข ซ้อนกันภายในวง 450 01:05:38,090 --> 01:05:43,070 วิธีการเกี่ยวกับตัวอย่างนี้จงใจ เรียกว่าอย่าเลี้ยงแมว? 451 01:05:43,070 --> 01:05:45,253 สิ่งนี้จะทำอย่างไร 452 01:05:45,253 --> 01:05:47,880 >> [meowing] 453 01:05:47,880 --> 01:05:50,215 >> คุณควรทำไมไม่เลี้ยงแมว? 454 01:05:50,215 --> 01:05:59,440 >> [meowing] 455 01:05:59,440 --> 01:06:00,699 >> ตกลง. 456 01:06:00,699 --> 01:06:03,880 ดังนั้นนี่คือตัวอย่างของถ้าอื่น 457 01:06:03,880 --> 01:06:06,482 มันเป็นจุดตัดสินใจและ เพราะนั่งอยู่ในวง 458 01:06:06,482 --> 01:06:07,690 พวกเขาทั้งสองได้รับการตรวจสอบ 459 01:06:07,690 --> 01:06:08,280 นี่คือความจริง? 460 01:06:08,280 --> 01:06:08,760 นี่คือความจริง? 461 01:06:08,760 --> 01:06:09,250 นี่คือความจริง? 462 01:06:09,250 --> 01:06:09,791 นี่คือความจริง? 463 01:06:09,791 --> 01:06:11,880 และในที่สุดคนหนึ่งของ ผู้ที่จะไปใช้ 464 01:06:11,880 --> 01:06:16,480 และเพื่อให้คุณได้ยินทั้ง Meow หรือ เสียงคำรามของสิงโตในกรณีที่ 465 01:06:16,480 --> 01:06:21,400 >> ดีขอทำเล็กน้อยแฟนซีอีกหนึ่ง ที่ฉันทำล่วงหน้า too-- หัวข้อ 466 01:06:21,400 --> 01:06:25,210 ดังนั้นด้ายเป็นเพียงหนึ่ง สิ่งที่คอมพิวเตอร์สามารถทำได้ 467 01:06:25,210 --> 01:06:29,349 ดังนั้นโปรแกรมแบบมัลติเธรดเป็นโปรแกรมที่ ที่สามารถทำสิ่งที่หลายครั้ง 468 01:06:29,349 --> 01:06:31,140 และทั้งหมดของตัวอย่างเหล่านี้ ป่านนี้มี 469 01:06:31,140 --> 01:06:35,980 เพียงหนึ่งสคริปต์เพื่อที่จะ speak-- โปรแกรมหนึ่งเช่นนี้ขึ้นที่นี่ 470 01:06:35,980 --> 01:06:38,810 แต่สังเกตเห็นโปรแกรมนี้ได้ สองสไปรท์, ตัวละครทั้งสอง 471 01:06:38,810 --> 01:06:40,020 หนึ่งคือนก 472 01:06:40,020 --> 01:06:40,870 หนึ่งคือแมว 473 01:06:40,870 --> 01:06:45,080 >> และแจ้งให้ทราบเมื่อฉันคลิกที่เหล่านี้ลง ซ้ายพวกเขาแต่ละคนมีสคริปต์ของตัวเอง 474 01:06:45,080 --> 01:06:47,120 หรือโปรแกรมที่เกี่ยวข้องกับพวกเขา 475 01:06:47,120 --> 01:06:49,420 และทั้งสองของคนเหล่านั้น โปรแกรมแจ้งให้ทราบล่วงหน้าเริ่มต้น 476 01:06:49,420 --> 01:06:52,600 กับ clicked-- ธงสีเขียวเมื่อ ให้ดูที่ cat-- 477 01:06:52,600 --> 01:06:54,030 เมื่อธงสีเขียวคลิก 478 01:06:54,030 --> 01:06:58,220 และอื่น ๆ แน่นอนเมื่อกดเล่นตอนนี้ สองสิ่งที่กำลังจะเกิดขึ้นในครั้งเดียว 479 01:06:58,220 --> 01:07:01,750 แมวและนกมีทั้ง กำลังจะได้ทำงานไปพร้อม ๆ กัน 480 01:07:01,750 --> 01:07:03,815 เพื่อสร้างผลกระทบนี้ 481 01:07:03,815 --> 01:07:05,440 และคุณอาจคิดว่าเกิดอะไรขึ้น 482 01:07:05,440 --> 01:07:08,340 มีห่วงและนกเป็น และแมวอยู่ในวง 483 01:07:08,340 --> 01:07:11,270 นกเป็นเพียงการตีกลับเช่น ผมเป็นเมื่อก่อนผมบอกว่าอุ๊ย 484 01:07:11,270 --> 01:07:13,040 แต่แมวอย่างชัดเจนมีความได้เปรียบ 485 01:07:13,040 --> 01:07:16,040 มีการตรวจจับบล็อกอื่น ที่ชี้แมวจงใจ 486 01:07:16,040 --> 01:07:19,836 นกในกรณีนี้ได้ที่นี่ 487 01:07:19,836 --> 01:07:22,960 เพื่อให้เราสามารถหยอกล้อกันโดยการมอง ผ่านบล็อกเหล่านั้นสิ่งที่เกิดขึ้น 488 01:07:22,960 --> 01:07:25,460 แต่องค์ประกอบที่สำคัญที่นี่เป็นหนึ่งใน 489 01:07:25,460 --> 01:07:28,520 นกเพื่อให้เกมนี้ไม่ได้ สมบูรณ์ boring-- หรือ animation-- นี้ 490 01:07:28,520 --> 01:07:30,060 เริ่มต้นที่ทิศทางแบบสุ่ม 491 01:07:30,060 --> 01:07:32,890 และคอมพิวเตอร์คือการเลือก จำนวนระหว่าง 90 และ 180 492 01:07:32,890 --> 01:07:36,110 เป็นหลักเพื่อที่จะเล็กน้อย นิเมชั่นที่แตกต่างกันในแต่ละครั้ง 493 01:07:36,110 --> 01:07:39,480 >> และแจ้งให้ทราบแล้วนี่ถ้า แมวสัมผัสนกแล้ว 494 01:07:39,480 --> 01:07:42,030 เล่นสิงโตสี่ sound-- เสียงคำราม 495 01:07:42,030 --> 01:07:46,330 แต่ในขณะเดียวกันในนก จานนี้เรามีนี้ 496 01:07:46,330 --> 01:07:49,229 ตลอดกาลถ้าไม่ได้สัมผัสแมว เพียงแค่ให้ย้ายสามขั้นตอน 497 01:07:49,229 --> 01:07:50,770 แล้วนี่เป็นชิ้นส่วนปริศนาอื่น 498 01:07:50,770 --> 01:07:52,030 ถ้าคุณอยู่ในขอบเด้ง 499 01:07:52,030 --> 01:07:54,840 ดังนั้นนกเป็นเพียงชนิดของ รังเกียจธุรกิจของตัวเอง 500 01:07:54,840 --> 01:07:57,330 เพียงแค่บินไปรอบ ๆ และ ใหญ่และมันจริงๆ 501 01:07:57,330 --> 01:08:01,780 แมวที่มีตรรกะเงื่อนไข เพื่อตรวจสอบว่ามันได้จับนก 502 01:08:01,780 --> 01:08:02,280 ก็ดี 503 01:08:02,280 --> 01:08:08,800 เพื่อขอทำคนอื่น ๆ ที่นี่ คนนี้ถูกเรียกว่าสวัสดีสวัสดีสวัสดี 504 01:08:08,800 --> 01:08:15,100 และเป็นหนึ่งในที่นี่ก็ไม่ นี้ในวงตลอดไป 505 01:08:15,100 --> 01:08:18,925 แต่ notice-- ทำอย่างไรเราจะหยุด โปรแกรมนี้น่ารำคาญมาก? 506 01:08:18,925 --> 01:08:21,600 507 01:08:21,600 --> 01:08:22,640 กดแถบพื้นที่ 508 01:08:22,640 --> 01:08:27,990 เพราะถ้าผมทำอย่างนั้น program-- ซ้ายมือ 509 01:08:27,990 --> 01:08:31,550 แจ้งให้ทราบก็ต่อเนื่อง listening-- เป็นพื้นที่กดคีย์ 510 01:08:31,550 --> 01:08:34,090 ถ้าแถบพื้นที่กด และถ้าเป็นเช่นนั้นสิ่งที่ไม่ได้ทำอย่างไร 511 01:08:34,090 --> 01:08:35,980 มันจะเป็นเทคนิคที่พบบ่อยมาก 512 01:08:35,980 --> 01:08:38,590 ได้กำหนดตัวแปรเท่ากับค่าบางอย่าง 513 01:08:38,590 --> 01:08:39,741 แต่มันสลับค่าที่ 514 01:08:39,741 --> 01:08:41,490 [? ดังนั้นลักษณะ?] ขึ้นอยู่กับผม shape-- 515 01:08:41,490 --> 01:08:43,160 มีตัวแปรที่ฉัน เขียนล่วงหน้าที่เรียกว่า 516 01:08:43,160 --> 01:08:44,770 ปิดเสียงที่เพิ่งกล่าวว่าใช่หรือไม่ 517 01:08:44,770 --> 01:08:45,880 เป็นเสียงปิดเสียงหรือไม่? 518 01:08:45,880 --> 01:08:46,990 ถูกหรือผิด? 519 01:08:46,990 --> 01:08:51,580 และแจ้งให้ทราบผมบอกว่าถ้า this-- ออกเสียงเป็นศูนย์แล้วเปลี่ยนไปอย่างใดอย่างหนึ่ง 520 01:08:51,580 --> 01:08:53,840 อื่นตั้งใบ้มันให้เป็นศูนย์ 521 01:08:53,840 --> 01:08:55,540 ดังนั้นเพียงแค่พลิกค่าจากศูนย์ถึงหนึ่ง 522 01:08:55,540 --> 01:08:58,320 ฉันสามารถมี done-- เปลี่ยน 2-3 และ 3-2 523 01:08:58,320 --> 01:09:00,162 หรือ 4-5 หรือ 4-6 524 01:09:00,162 --> 01:09:01,870 แต่มันไม่สำคัญ ว่าตัวเลขที่ผมใช้ 525 01:09:01,870 --> 01:09:04,090 ตราบใดที่ฉันให้ เปลี่ยนมันตรงข้าม 526 01:09:04,090 --> 01:09:07,290 >> และส่วนใหญ่โปรแกรมเมอร์ใด ๆ ที่จะเป็นเพียงแค่ เลือกศูนย์และ one-- เท็จและจริง 527 01:09:07,290 --> 01:09:09,510 ออกและ on-- เพื่อเป็นตัวแทนนี้ 528 01:09:09,510 --> 01:09:10,930 และสิ่งนี้จะยังคงทำงาน 529 01:09:10,930 --> 01:09:12,190 ถ้าผมตีแถบพื้นที่อีกครั้ง 530 01:09:12,190 --> 01:09:13,590 >> [ซีล SOUNDS] 531 01:09:13,590 --> 01:09:15,440 >> โปรแกรมจะยังคงทำงานอยู่ 532 01:09:15,440 --> 01:09:18,400 เพราะมีสคริปต์อื่น ๆ ที่บอกว่าตลอดไปทำต่อไปนี้ 533 01:09:18,400 --> 01:09:21,390 534 01:09:21,390 --> 01:09:24,770 ถ้าตัวแปรออกเสียงเท่ากับ zero-- ดังนั้นหากคุณไม่ได้ปิดเสียง 535 01:09:24,770 --> 01:09:29,609 เป็น logic-- ถ้ามันเป็นเท็จ หรือไม่มีเลยแล้วเล่นเสียง 536 01:09:29,609 --> 01:09:30,650 เพราะคุณไม่ได้ปิดเสียง 537 01:09:30,650 --> 01:09:33,358 คุณควรจะเล่นเสียงแล้ว คิด Hi Hi Hi สองวินาที 538 01:09:33,358 --> 01:09:35,790 แล้วรอและทำมันได้ อีกครั้งและอีกครั้งและอีกครั้ง 539 01:09:35,790 --> 01:09:40,760 >> และอื่น ๆ ในลักษณะนี้เราจะมีวิธีการหา คน to-- สำหรับโปรแกรมในการโต้ตอบ 540 01:09:40,760 --> 01:09:43,120 และพวกเขาจะได้ไม่ต้อง จะเป็นวันที่คนอื่น ๆ 541 01:09:43,120 --> 01:09:46,280 ในความเป็นจริงโผล่ around-- ไม่มีเล่นสำนวน intended-- 542 01:09:46,280 --> 01:09:49,250 ใครบางคนใช้เวลาเป็นจำนวนมาก เวลาบนอินเทอร์เน็ตการดำเนินการ 543 01:09:49,250 --> 01:09:51,580 PokemonGo ในรอยขีดข่วน 544 01:09:51,580 --> 01:09:55,440 มันยัง geolocates คุณ เคมบริดจ์หรือ Allston ที่นี่ 545 01:09:55,440 --> 01:10:03,120 ดังนั้นถ้าคุณต้องการที่จะเห็นสิ่งที่ผู้คนมากเกินไป สามารถทำได้คือ this-- เมนูแฟนซีมาก 546 01:10:03,120 --> 01:10:04,780 คลิกที่นี่ 547 01:10:04,780 --> 01:10:07,430 >> นี่คือฉันด้วยปุ่มลูกศรของฉันตอนนี้ 548 01:10:07,430 --> 01:10:09,446 ฉันจะไปหลังจากนี้ 549 01:10:09,446 --> 01:10:09,946 คลิก. 550 01:10:09,946 --> 01:10:12,949 551 01:10:12,949 --> 01:10:14,240 และตอนนี้คุณคลิก pokeball 552 01:10:14,240 --> 01:10:17,130 553 01:10:17,130 --> 01:10:20,260 ฉันหมายความว่าฉันคิดว่าคุณ ควรจะคลิก pokeball 554 01:10:20,260 --> 01:10:20,760 ก็ดี 555 01:10:20,760 --> 01:10:22,680 ดังนั้นฉันไม่ว่า 556 01:10:22,680 --> 01:10:23,950 ฉันสามารถไปกว่าที่นี่ 557 01:10:23,950 --> 01:10:27,790 และสมาชิกผู้นี้ดำเนินการเพิ่มเติมบางส่วน Pokeballs กว่า here-- สาม Pokeballs 558 01:10:27,790 --> 01:10:29,950 >> เราจะโพสต์ลิงค์ที่จะถึงนี้ ออนไลน์เพื่อให้คุณสามารถเล่น 559 01:10:29,950 --> 01:10:32,364 แต่สังเกตเห็นมีเพียง บางสร้างพื้นฐาน 560 01:10:32,364 --> 01:10:33,780 มันดูมากนักเล่นและมันก็เป็น 561 01:10:33,780 --> 01:10:35,905 นี้เป็นที่น่าประทับใจและอื่น ๆ กว่าที่เราจะมักจะ 562 01:10:35,905 --> 01:10:37,740 คาดหวังอย่างแน่นอนสำหรับปัญหาการตั้งศูนย์ 563 01:10:37,740 --> 01:10:40,809 ฉันมีความคิดนานแค่ไหน สมาชิกผู้นี้ใช้เวลาออนไลน์ 564 01:10:40,809 --> 01:10:41,850 แต่มันก็แค่ห่วง 565 01:10:41,850 --> 01:10:43,180 มีการเล่นเสียง 566 01:10:43,180 --> 01:10:44,850 มีชนิดของห่วงเป็นบางส่วน สำหรับฟังว่าฉัน 567 01:10:44,850 --> 01:10:47,558 กดปุ่มลูกศรขึ้นหรือลง ลูกศรหรือด้านซ้ายและด้านขวา 568 01:10:47,558 --> 01:10:49,834 แล้วถ้าเป็นเช่นนั้นก็ย้าย มันจำนวนของพิกเซลที่บาง 569 01:10:49,834 --> 01:10:51,750 แล้วถ้าผมคลิก เทพดาอื่นมี 570 01:10:51,750 --> 01:10:53,390 ชนิดของถ้าเงื่อนไขบางอย่างมี 571 01:10:53,390 --> 01:10:54,806 ใช่นี้จะได้รับรุนแรงเกินไป 572 01:10:54,806 --> 01:10:56,100 เรากำลังจะหยุด 573 01:10:56,100 --> 01:10:57,750 มันคือทั้งหมดที่ผู้สร้างพื้นฐาน 574 01:10:57,750 --> 01:11:01,530 ไม่มีส่วนผสมอื่น ๆ อื่น ๆ กว่าคนที่เราได้ตรวจสอบแล้ว 575 01:11:01,530 --> 01:11:04,670 >> และยังอยู่ที่นี่ให้ฉันทำ หนึ่งชุดสุดท้ายของตัวอย่าง 576 01:11:04,670 --> 01:11:06,960 ที่วาดภาพมากเกินไป ของคุณสามารถทำอะไรที่นี่ 577 01:11:06,960 --> 01:11:10,481 นี่เป็นโปรแกรมที่ง่ายมากที่ ก็ไม่ this-- ไอ, ไอ, ไอ 578 01:11:10,481 --> 01:11:12,480 และขึ้นอยู่เฉพาะในสิ่งที่ เราได้มองที่ป่านนี้ 579 01:11:12,480 --> 01:11:14,570 ซึ่งเป็นที่เห็นได้ชัด โอกาสในการปรับปรุง 580 01:11:14,570 --> 01:11:15,570 โปรแกรมนี้เป็นโปรแกรมที่ถูกต้อง 581 01:11:15,570 --> 01:11:17,980 มันไอสามครั้ง ซึ่งเป็นสิ่งที่ผมตั้งใจ 582 01:11:17,980 --> 01:11:19,650 แต่การดำเนินการต่ำ 583 01:11:19,650 --> 01:11:20,600 มันออกแบบมาไม่ดี 584 01:11:20,600 --> 01:11:22,000 ทำไม? 585 01:11:22,000 --> 01:11:22,500 ใช่. 586 01:11:22,500 --> 01:11:23,230 มันไม่ได้เป็นห่วง 587 01:11:23,230 --> 01:11:24,610 และก็ไม่ได้มาก ว่ามันไม่ห่วง 588 01:11:24,610 --> 01:11:26,400 มันเป็นเรื่องที่มีจำนวนมากของการซ้ำซ้อน 589 01:11:26,400 --> 01:11:28,830 มีการคัดลอกและ รหัสวางเพื่อที่จะพูด 590 01:11:28,830 --> 01:11:31,830 และวิธีการแก้ปัญหาอาจ ย่อมเป็นห่วง 591 01:11:31,830 --> 01:11:34,350 เพื่อให้ฉันไปข้างหน้า และปรับปรุงตามที่ 592 01:11:34,350 --> 01:11:36,250 และฉันจะลากเหล่านี้มากกว่าที่นี่ 593 01:11:36,250 --> 01:11:39,986 ให้ฉันไปข้างหน้าและได้รับซ้ำ บล็อกเปลี่ยนเป็นสาม 594 01:11:39,986 --> 01:11:41,860 ฉันจะโยนออกไป บางส่วนของบล็อกที่ 595 01:11:41,860 --> 01:11:43,150 >> และคุณจะสังเกตเห็นว่ามันใช้งานง่ายสวย 596 01:11:43,150 --> 01:11:45,691 คุณสามารถลากและวางและสิ่ง ปรากฏและหายไปในที่สุด 597 01:11:45,691 --> 01:11:49,170 และฉันก็สามารถลากในที่นี่และ ตอนนี้ผมมีรุ่นที่ยังคงทำความสะอาด 598 01:11:49,170 --> 01:11:50,730 แต่คุณรู้อะไรไหม 599 01:11:50,730 --> 01:11:52,940 มีโอกาสนี้เป็น ตอนนี้สำหรับ abstraction-- 600 01:11:52,940 --> 01:11:56,350 ที่จะเริ่มต้นในการกำหนดคำศัพท์ใหม่ ที่เอ็มไอทีไม่ได้คาดหวัง 601 01:11:56,350 --> 01:11:59,110 มีรอและทำซ้ำ และตลอดไปและถ้า 602 01:11:59,110 --> 01:12:02,590 แต่ถ้าอยากจะแนะนำ ไอ Word เป็นบล็อกหรือไม่? 603 01:12:02,590 --> 01:12:06,230 ถ้าฉันต้องการชิ้นส่วนจิ๊กซอว์ วัตถุประสงค์ที่มีในชีวิตคือการไอ? 604 01:12:06,230 --> 01:12:10,720 >> ดีให้ดูที่รุ่นนี้ ที่นี่ซึ่งผมทำดังต่อไปนี้ 605 01:12:10,720 --> 01:12:13,579 อย่างน่าอัศจรรย์ผมได้สร้าง ชิ้นส่วนปริศนานี้ที่นี่ 606 01:12:13,579 --> 01:12:14,870 ซึ่ง Scratch ช่วยให้คุณทำ 607 01:12:14,870 --> 01:12:16,787 และแน่นอน C และ Python และ JavaScript เป็น 608 01:12:16,787 --> 01:12:18,370 จะช่วยให้คุณสามารถทำเช่นนี้ได้เป็นอย่างดี 609 01:12:18,370 --> 01:12:21,830 คุณสามารถสร้างของคุณเอง ชิ้นที่คุณโทรหาสิ่งที่คุณต้องการ 610 01:12:21,830 --> 01:12:24,890 ในกรณีนี้ไอรู้สึก เช่นคำนิยามที่เหมาะสม 611 01:12:24,890 --> 01:12:27,880 แล้วที่มีชิ้นส่วนเหล่านี้ลง ที่นี่คุณสามารถกำหนดมันหมายถึงอะไร 612 01:12:27,880 --> 01:12:30,290 >> ผมลากและลดลงจาก จานนี้ here-- เพิ่มเติม 613 01:12:30,290 --> 01:12:33,500 blocks-- นี้สีม่วงขนาดใหญ่ บล็อกที่ผมพิมพ์ในไอ 614 01:12:33,500 --> 01:12:35,290 เป็นชื่อของชิ้นส่วนปริศนาใหม่ของฉัน 615 01:12:35,290 --> 01:12:39,920 แล้วฉันพูดทุกครั้งที่ผู้ใช้ เรียกชิ้นส่วนจิ๊กซอว์ไอใหม่นี้ 616 01:12:39,920 --> 01:12:41,770 ทำพูดและรอ 617 01:12:41,770 --> 01:12:46,160 และอื่น ๆ ขึ้นที่นี่ในบล็อกซ้ำของฉัน ฉันสามารถไอสามครั้ง 618 01:12:46,160 --> 01:12:49,972 >> และฉันจะยืนยันโดยเฉพาะอย่างยิ่ง ถ้าตอนนี้คุณซ่อนรายละเอียดนี้ 619 01:12:49,972 --> 01:12:51,430 ใครสนใจวิธีการไอจะดำเนินการ? 620 01:12:51,430 --> 01:12:54,390 ทั้งหมดที่ฉันดูแลเกี่ยวกับการเป็น โปรแกรมเมอร์ที่ฉันสามารถไอ 621 01:12:54,390 --> 01:12:56,280 ฉันไม่สนใจวิธีการที่บอกว่าจะดำเนินการ 622 01:12:56,280 --> 01:12:58,620 ฉันเพียงแค่สนใจว่า แมวสามารถพูดอะไรบางอย่าง 623 01:12:58,620 --> 01:13:02,720 ฉันสามารถนามธรรมออกไปที่รายละเอียดและ เพียง แต่มุ่งเน้นสิ่งที่อยู่บนหน้าจอที่นี่ 624 01:13:02,720 --> 01:13:04,400 แต่ฉันสามารถใช้เวลานี้หนึ่งก้าว 625 01:13:04,400 --> 01:13:08,070 >> ขอให้สังเกตว่าที่นี่ผมมี ดำเนินการวงสามครั้ง 626 01:13:08,070 --> 01:13:11,560 แต่สิ่งที่ถ้าแทนฉันคว้ารุ่นนี้? 627 01:13:11,560 --> 01:13:14,640 และสิ่งที่ถ้าแทน ในรุ่นนี้ที่นี่ 628 01:13:14,640 --> 01:13:18,730 ฉันเพียงแค่เปลี่ยนชิ้นส่วนจิ๊กซอว์ของฉันที่จะใช้ ข้อโต้แย้งและใส่พวกตัวเอง? 629 01:13:18,730 --> 01:13:21,100 และใส่ที่สามารถ จำนวนเช่นสาม 630 01:13:21,100 --> 01:13:24,580 ดังนั้นตอนนี้ถ้าผมเขียนโปรแกรม และฉันต้องการแมวไอ 631 01:13:24,580 --> 01:13:28,270 ที่จริงผมสามารถบอกปริศนา ชิ้นกี่ครั้งไอ 632 01:13:28,270 --> 01:13:31,990 เพราะที่ด้านล่างนี่เป็นนักเล่น รุ่นของเหล่านี้ชิ้นส่วนปริศนาที่กำหนดเอง 633 01:13:31,990 --> 01:13:34,500 ให้ผมระบุว่า ไอจริงจะ 634 01:13:34,500 --> 01:13:36,951 input-- ใช้เวลาโต้แย้งเช่นนี้ 635 01:13:36,951 --> 01:13:37,700 และคุณรู้อะไรไหม 636 01:13:37,700 --> 01:13:38,890 บางทีฉันตระหนักดีรอสักครู่ 637 01:13:38,890 --> 01:13:40,680 อาการไอเป็น same-- มันเป็นพื้นฐาน 638 01:13:40,680 --> 01:13:42,120 ความคิดเช่นเดียวกับจาม 639 01:13:42,120 --> 01:13:44,040 มันเป็นเพียงที่แตกต่างกัน คำบนหน้าจอ 640 01:13:44,040 --> 01:13:46,550 ฉันสามารถนามธรรมออกไป และดำเนินการต่อไป 641 01:13:46,550 --> 01:13:48,750 นี้รุ่นสุดท้ายของ ไอซึ่งได้อย่างรวดเร็วก่อน 642 01:13:48,750 --> 01:13:50,660 เป็นวิธีที่ซับซ้อนมากขึ้นมอง 643 01:13:50,660 --> 01:13:52,140 แต่สังเกตเห็นสิ่งที่ผมทำ 644 01:13:52,140 --> 01:13:55,930 ฉันมีตอนนี้ generalized-- genericized really-- ชิ้นส่วนปริศนานี้ 645 01:13:55,930 --> 01:13:59,900 จะเรียกว่าพูดครั้งคำ n 646 01:13:59,900 --> 01:14:04,410 >> และตอนนี้ฉันมีสองชิ้นส่วนปริศนาใหม่ ลงที่นี่กำหนดไอ n ครั้ง 647 01:14:04,410 --> 01:14:06,790 และสิ่งที่ไม่ฟังก์ชั่นไอทำอย่างไร 648 01:14:06,790 --> 01:14:08,420 อะไรชิ้นส่วนจิ๊กซอว์ของฉันที่กำหนดเองทำอย่างไร 649 01:14:08,420 --> 01:14:11,996 มันก็เรียกบล็อกพูด, ผ่านในคำที่ฉันต้องการจะบอกว่า 650 01:14:11,996 --> 01:14:13,870 ผ่านในจำนวน ครั้งที่ฉันอยากจะบอกว่า 651 01:14:13,870 --> 01:14:18,210 เพราะตอนนี้ผมสามารถใช้ จามโดยเพียงแค่พูด Achoo, 652 01:14:18,210 --> 01:14:20,320 ในกรณีนี้จำนวนครั้งบาง 653 01:14:20,320 --> 01:14:22,360 >> และดังนั้นฉัน layering และ layering 654 01:14:22,360 --> 01:14:25,690 และอีกครั้งที่สำคัญที่นี่ไม่ได้ วิธีการที่ฉันนำมาใช้ แต่ความเป็นจริง 655 01:14:25,690 --> 01:14:28,070 ว่าถ้าผมเป็นเพียงแค่ตัวอักษร ย้ายเหล่านี้ออกจากหน้าจอ 656 01:14:28,070 --> 01:14:31,280 ดูวิธีง่ายๆถ้าไม่ได้ สวยโปรแกรมของฉันตอนนี้ดูเหมือน 657 01:14:31,280 --> 01:14:33,930 เพราะสิ่งที่มันไม่ กล่าวว่าฉันได้ใจลอย 658 01:14:33,930 --> 01:14:37,640 ออกไปสิ่งที่อยู่ภายในกล่องสีดำที่ มันเกิดขึ้นเป็นกล่องสีม่วงที่นี่ 659 01:14:37,640 --> 01:14:41,430 แต่ฉันได้บดบังออกไปสิ่งที่อยู่ภายใน เพราะฉันไม่สนใจวิธีการทำงาน 660 01:14:41,430 --> 01:14:43,650 ฉันเพียงแค่ดูแลในขณะนี้ว่าการทำงาน 661 01:14:43,650 --> 01:14:46,375 >> และแน่นอนในปัญหา ตั้งศูนย์ตรงนี้เป็น 662 01:14:46,375 --> 01:14:49,250 ชนิดของการฝังรากลึกของความคิดที่คุณจะ มีโอกาสที่จะสำรวจ 663 01:14:49,250 --> 01:14:53,510 มันตรงโอกาสที่จะ ใช้เทคนิคการแก้ปัญหา 664 01:14:53,510 --> 01:14:55,550 กับสิ่งที่อาจจะ สภาพแวดล้อมที่ไม่คุ้นเคย 665 01:14:55,550 --> 01:14:57,890 และไม่ว่าคุณไม่ได้ตั้งโปรแกรม ก่อนหรือโปรแกรมก่อน 666 01:14:57,890 --> 01:14:59,500 คุณจะพบว่ามี บางสิ่งบางอย่างเล็ก ๆ น้อย ๆ 667 01:14:59,500 --> 01:15:00,874 ในสภาพแวดล้อมนี้สำหรับทุกคน 668 01:15:00,874 --> 01:15:02,770 และมีปัญหาการตั้งค่า หนึ่งในเวลาหนึ่งสัปดาห์ที่ 669 01:15:02,770 --> 01:15:06,630 เราจะมุ่งเน้นไปที่เปลี่ยนไป ในภาษาระดับสูงที่เรียกว่า 670 01:15:06,630 --> 01:15:09,290 C-- หรือค่อนข้างต่ำ ภาษาระดับที่เรียกว่า 671 01:15:09,290 --> 01:15:11,347 C-- ที่มากยิ่งขึ้น ที่มีประสิทธิภาพแม้ว่ามันจะเป็น 672 01:15:11,347 --> 01:15:12,930 เล็ก ๆ น้อย ๆ ที่เป็นความลับมากขึ้นได้อย่างรวดเร็วก่อน 673 01:15:12,930 --> 01:15:16,740 >> และคุณจะตระหนักต่อ TL วันนี้: DR, ว่าปัญหานี้มีการตั้งค่าที่สั้นกว่า 674 01:15:16,740 --> 01:15:19,880 หน้าต่างของเวลากว่าคนในอนาคตเพียง เพราะคุณควรจะพบว่ามันเป็นธรรม 675 01:15:19,880 --> 01:15:20,420 สามารถเข้าถึงได้ 676 01:15:20,420 --> 01:15:22,211 และไม่ต้องกังวลถ้า คุณเพิ่มระดับปลาย 677 01:15:22,211 --> 01:15:23,920 เราจะอยู่ที่อีกไม่นาน 678 01:15:23,920 --> 01:15:28,480 และก่อนที่เราจะเลื่อนสำหรับเค้กขอ จบด้วยเพียงแค่รูปลักษณ์ที่สองนาที 679 01:15:28,480 --> 01:15:30,500 สิ่งที่รอคุณอยู่ที่นี่ใน CS50 680 01:15:30,500 --> 01:15:40,950 681 01:15:40,950 --> 01:17:20,803 [เสียงเพลง] 682 01:17:20,803 --> 01:17:21,302 ก็ดี 683 01:17:21,302 --> 01:17:22,690 นั่นมันสำหรับ CS50 684 01:17:22,690 --> 01:17:23,650 เราจะเห็นคุณเร็ว ๆ นี้ 685 01:17:23,650 --> 01:17:25,526 เค้กเสิร์ฟในขณะนี้ 686 01:17:25,526 --> 01:17:28,998 687 01:17:28,998 --> 01:18:14,267 [เสียงเพลง] 688 01:18:14,267 --> 01:18:16,350 SPEAKER 17: คุณเคยได้ยิน ของแต่งหัวหน้า? 689 01:18:16,350 --> 01:18:29,490 690 01:18:29,490 --> 01:18:31,920 SPEAKER 18: บางทีอาจจะมี มากขึ้นภายใต้ฝากระโปรง 691 01:18:31,920 --> 01:18:38,279