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