1 00:00:00,000 --> 00:00:02,418 >> [MUSIC CHƠI] 2 00:00:02,418 --> 00:00:10,542 3 00:00:10,542 --> 00:00:12,000 ALLISON BUCHHOLTZ-AU: Hey tất cả mọi người. 4 00:00:12,000 --> 00:00:15,640 Chào mừng bạn đến đầu tiên của bạn phần CS50 chính thức. 5 00:00:15,640 --> 00:00:19,507 Như bạn có thể, xem đây là phần CS50-như, chỉ cần 6 00:00:19,507 --> 00:00:20,840 để kéo lên chương trình nghị sự của chúng tôi cho ngày hôm nay. 7 00:00:20,840 --> 00:00:23,990 Vì vậy, tôi là ai, như tôi là chắc chắn tất cả các bạn đang tự hỏi. 8 00:00:23,990 --> 00:00:25,514 Tôi TF của bạn. 9 00:00:25,514 --> 00:00:27,930 Tôi không phải là chỉ là một sinh viên ngẫu nhiên những người mạo danh TF của bạn. 10 00:00:27,930 --> 00:00:31,190 >> Và tôi sẽ phải đi qua loại có bộ phận sẽ chảy, 11 00:00:31,190 --> 00:00:34,900 mong đợi của chúng ta có, nguồn lực, vv và vv. 12 00:00:34,900 --> 00:00:39,190 Chúng ta sẽ nói về mảng, ASCII chức năng, đối số dòng lệnh, 13 00:00:39,190 --> 00:00:42,020 và nó không phải ở đây, nhưng Tôi cũng sẽ được giúp đỡ 14 00:00:42,020 --> 00:00:45,054 bạn loại suy nghĩ pset tiếp theo của bạn trong tuần này. 15 00:00:45,054 --> 00:00:46,720 Mà tôi chắc chắn tất cả các bạn sẽ đánh giá cao. 16 00:00:46,720 --> 00:00:48,190 17 00:00:48,190 --> 00:00:53,390 >> Vì vậy, đầu tiên question-- tôi là ai, ngoài TF cởi mở của bạn ở đây. 18 00:00:53,390 --> 00:00:55,390 Tôi Alison Buchholtz-Au. 19 00:00:55,390 --> 00:00:57,970 Đây là năm thứ hai của tôi TFing CS50. 20 00:00:57,970 --> 00:01:00,570 Tôi cũng TF CS51 vào mùa xuân. 21 00:01:00,570 --> 00:01:03,930 Bạn có thể thấy một lần nữa có nếu bạn quyết định lấy nó. 22 00:01:03,930 --> 00:01:07,370 Tôi cũng là một PAF, vì vậy bất kỳ Freshmen-- và nếu bạn không phải là sinh viên năm nhất, 23 00:01:07,370 --> 00:01:09,980 đây là năm thứ ba của tôi như là một đồng tư vấn. 24 00:01:09,980 --> 00:01:13,630 Tôi đang rất thành thạo trong tư vấn cho bạn về cuộc sống và các khóa học 25 00:01:13,630 --> 00:01:16,549 trong CS và không nằm trong CS. 26 00:01:16,549 --> 00:01:18,090 Tôi là một khoa học máy tính Bộ tập trung. 27 00:01:18,090 --> 00:01:20,800 Tôi là một cấp cao trong Adams House, ngôi nhà tốt nhất. 28 00:01:20,800 --> 00:01:22,430 29 00:01:22,430 --> 00:01:26,050 Và trước khi tôi chuyển sang CS của tôi Sinh viên năm hai mùa xuân, 30 00:01:26,050 --> 00:01:27,640 Thực sự tôi là một kỹ sư y sinh học. 31 00:01:27,640 --> 00:01:29,020 Tôi đã đi đến Med trường. 32 00:01:29,020 --> 00:01:30,530 Tôi sẽ là một bác sĩ phẫu thuật chấn thương. 33 00:01:30,530 --> 00:01:33,000 Và điều đó đã hoàn toàn thay đổi kể từ khi tôi mất CS50. 34 00:01:33,000 --> 00:01:34,250 35 00:01:34,250 --> 00:01:36,310 Tôi đã khoá học Fall Sinh viên năm hai của tôi. 36 00:01:36,310 --> 00:01:38,920 Đó là giới thiệu đầu tiên của tôi để CS bao giờ hết. 37 00:01:38,920 --> 00:01:44,104 Tôi là một trong số 78% số người bạn đã không kinh nghiệm đến, 38 00:01:44,104 --> 00:01:45,520 và nó hoàn toàn thay đổi cuộc sống của tôi. 39 00:01:45,520 --> 00:01:49,820 Và bây giờ tôi đang làm việc tại Microsoft, và TF đáng yêu của bạn. 40 00:01:49,820 --> 00:01:53,500 Và CS50 có lẽ là một những kinh nghiệm tốt nhất 41 00:01:53,500 --> 00:01:56,210 mà tôi đã có ở đây tại Harvard-- cả hai tham gia các lớp học 42 00:01:56,210 --> 00:01:59,040 và có thể giúp đỡ dạy học sinh như bạn. 43 00:01:59,040 --> 00:02:01,410 >> Vì vậy, tôi thực sự vui mừng rằng bạn là tất cả ở đây. 44 00:02:01,410 --> 00:02:04,270 Trong trường hợp bạn đã ở muộn, có kẹo, 45 00:02:04,270 --> 00:02:07,227 mà bạn nên cảm thấy tự do đến lấy, hoặc gửi 46 00:02:07,227 --> 00:02:08,560 người khác để lấy nó cho bạn. 47 00:02:08,560 --> 00:02:09,399 đó là OK. 48 00:02:09,399 --> 00:02:10,440 Tôi không muốn ăn mà. 49 00:02:10,440 --> 00:02:13,350 Phòng của tôi có đủ sô cô la, vì vậy y'all nên cố gắng và kết thúc. 50 00:02:13,350 --> 00:02:16,730 Tôi biết có 100 miếng, nhưng cũng giống như, 04:00 vào ngày thứ hai, 51 00:02:16,730 --> 00:02:19,000 Tôi nghĩ rằng tất cả mọi người có thể sử dụng một số đường. 52 00:02:19,000 --> 00:02:21,750 >> Vì vậy, tất cả các bạn là ai chính thức trong phần của tôi 53 00:02:21,750 --> 00:02:24,700 nên đã nhận được một email từ tôi với số điện thoại của tôi, 54 00:02:24,700 --> 00:02:29,920 email address-- cảm thấy tự do để thêm tôi trên Gchat, cảm thấy tự do để thêm tôi trên Facebook, 55 00:02:29,920 --> 00:02:33,360 và cũng để phần còn lại của bạn, bạn có thể gửi email cho tôi ngay tại đây. 56 00:02:33,360 --> 00:02:34,450 Có hai của H. 57 00:02:34,450 --> 00:02:37,090 Tất cả mọi người luôn luôn làm giống như hai L's hoặc hai của C. 58 00:02:37,090 --> 00:02:38,260 Hai trong tên cuối cùng H. 59 00:02:38,260 --> 00:02:41,800 Nếu không nó sẽ trả lại, và Tôi sẽ không nhận được email của bạn. 60 00:02:41,800 --> 00:02:46,400 >> Vì vậy, cảm thấy tự do để gửi email cho tôi, liên hệ với tôi bất cứ lúc nào. 61 00:02:46,400 --> 00:02:51,440 Tôi không thể có được trở lại quý vị trong vòng 24 phút, 62 00:02:51,440 --> 00:02:53,760 nhưng tôi hứa sẽ quay trở lại cho bạn trong vòng 24 giờ. 63 00:02:53,760 --> 00:02:54,900 64 00:02:54,900 --> 00:02:58,067 Nếu bạn gọi cho tôi nửa giờ trước pset của bạn là do bạn là như thế nào, 65 00:02:58,067 --> 00:02:59,650 Tôi không có ý tưởng những gì tôi đang làm Allison. 66 00:02:59,650 --> 00:03:00,160 Giúp tôi. 67 00:03:00,160 --> 00:03:04,049 Tôi sẽ bình tĩnh bạn xuống, nhưng vào cuối ngày, 68 00:03:04,049 --> 00:03:07,340 nếu bạn đang gọi điện thoại cho tôi một nửa giờ trước pset của bạn là do không có gì bằng văn bản, 69 00:03:07,340 --> 00:03:11,570 Tôi sẽ như thế nào, tốt, có thể đó là thời gian để sử dụng ngày cuối. 70 00:03:11,570 --> 00:03:15,215 Vì vậy, tôi sẽ trả lời cho tất cả các bạn yêu cầu một cách rất kịp thời. 71 00:03:15,215 --> 00:03:16,482 72 00:03:16,482 --> 00:03:18,190 Điện thoại của tôi thường là gắn liền với bàn tay của tôi. 73 00:03:18,190 --> 00:03:21,530 Tôi thường trả lời nhiều nhanh hơn 24 giờ, 74 00:03:21,530 --> 00:03:25,650 nhưng tôi chỉ có thể đảm bảo một phản ứng 24 giờ. 75 00:03:25,650 --> 00:03:26,580 >> Được rồi. 76 00:03:26,580 --> 00:03:28,410 Vậy tại sao chúng ta ở đây? 77 00:03:28,410 --> 00:03:32,160 Ngoài ra, nếu bạn có thắc mắc tại bất cứ lúc nào, xin vui lòng cho tôi biết. 78 00:03:32,160 --> 00:03:32,780 Tôi nói chuyện rất nhiều. 79 00:03:32,780 --> 00:03:35,320 Tôi nói nhanh, nhưng xin vui lòng cảm thấy tự do để gây cản trở tôi. 80 00:03:35,320 --> 00:03:36,980 Nó mang lại cho tôi thở phòng là tốt. 81 00:03:36,980 --> 00:03:38,159 82 00:03:38,159 --> 00:03:40,200 Vì vậy, phần là một thời gian để chúng tôi thực sự chỉ lặn 83 00:03:40,200 --> 00:03:44,270 trong, có được một số kinh nghiệm thực tiễn, để đi qua các chủ đề mà chúng tôi đề cập 84 00:03:44,270 --> 00:03:49,760 trong lớp học hoặc trong các tài liệu nghiên cứu chúng tôi khuyên bạn nên đến với bạn trực tuyến. 85 00:03:49,760 --> 00:03:52,980 Và chúng ta sẽ thực sự đi qua một số trong những nguồn tài nguyên trong một chút. 86 00:03:52,980 --> 00:03:54,300 87 00:03:54,300 --> 00:03:57,400 >> Vì vậy, một số ghi chú vào phần hỗ trợ. 88 00:03:57,400 --> 00:04:00,250 CS50-- một trong những điều mà làm cho nó là một trong các lớp học yêu thích của tôi 89 00:04:00,250 --> 00:04:02,510 là cảm giác mà bạn sẽ không bao giờ một mình. 90 00:04:02,510 --> 00:04:05,430 Chúng tôi có một đội ngũ nhân viên hơn 100 những người đang ở đây để giúp bạn. 91 00:04:05,430 --> 00:04:08,080 Chúng tôi có giờ văn phòng Thứ Hai đến thứ Năm. 92 00:04:08,080 --> 00:04:13,230 Vì vậy, có rất nhiều người yêu lớp chỉ nhiều như tôi làm 93 00:04:13,230 --> 00:04:15,750 và những người đang thực sự ở đây bởi vì họ muốn được ở đây. 94 00:04:15,750 --> 00:04:19,390 Hầu hết chúng ta là sinh viên, và điều này giống như một lớp thứ năm ngoài 95 00:04:19,390 --> 00:04:20,390 với phần còn lại của công việc của chúng tôi. 96 00:04:20,390 --> 00:04:22,723 >> Và đó là rất nhiều công việc, nhưng chúng tôi làm điều đó bởi vì chúng tôi yêu nó, 97 00:04:22,723 --> 00:04:25,600 và chúng tôi thực sự yêu thương để dạy cho bạn và giúp chia sẻ hứng thú của chúng tôi 98 00:04:25,600 --> 00:04:27,260 cho chủ đề này và lớp này. 99 00:04:27,260 --> 00:04:28,490 Vì vậy, hãy tận dụng lợi thế. 100 00:04:28,490 --> 00:04:29,370 Hãy đến nói chuyện với chúng tôi. 101 00:04:29,370 --> 00:04:33,034 Tôi cảm thấy cô đơn khi học sinh của tôi không nói chuyện với tôi, vì vậy nếu bạn muốn, 102 00:04:33,034 --> 00:04:33,950 đi chơi với tôi. 103 00:04:33,950 --> 00:04:35,200 Nó sẽ là tuyệt vời. 104 00:04:35,200 --> 00:04:37,400 >> Vì vậy, phần là rõ ràng một trong những điều lớn nhất của bạn. 105 00:04:37,400 --> 00:04:41,770 Chúng tôi sẽ đi qua những điều mà bạn đã học trong bài giảng, 106 00:04:41,770 --> 00:04:44,100 làm một số ví dụ ngắn khi chúng tôi có thời gian, 107 00:04:44,100 --> 00:04:46,187 và nói chung loại được một ý tưởng về những điều 108 00:04:46,187 --> 00:04:48,270 bạn nên suy nghĩ về cho vấn đề của bạn thiết lập. 109 00:04:48,270 --> 00:04:49,540 110 00:04:49,540 --> 00:04:53,591 Cách Shorts-- người thực sự nhiều xem đoạn video từ đầu của bạn 111 00:04:53,591 --> 00:04:54,090 ngắn? 112 00:04:54,090 --> 00:04:55,460 113 00:04:55,460 --> 00:04:57,390 Bất cứ ai cũng nhận ra tôi? 114 00:04:57,390 --> 00:04:59,720 Vì vậy, những người rất tuyệt vời. 115 00:04:59,720 --> 00:05:01,210 Bạn chắc chắn nên xem những người. 116 00:05:01,210 --> 00:05:02,880 Rất nhiều công việc đã được đưa vào họ. 117 00:05:02,880 --> 00:05:06,690 Và họ chỉ có nghĩa là phải bite-size miếng cho bạn chỉ cần xem 118 00:05:06,690 --> 00:05:09,760 trong ba hoặc bốn phút và có được một hiểu rõ hơn về một khái niệm. 119 00:05:09,760 --> 00:05:11,147 120 00:05:11,147 --> 00:05:12,980 Đi bộ như thế nào throughs-- nhiều người đã xem 121 00:05:12,980 --> 00:05:14,880 đi bộ-throughs cho những người trước đây? 122 00:05:14,880 --> 00:05:16,240 Zamyla là tuyệt vời, phải không? 123 00:05:16,240 --> 00:05:18,100 Giống như, tôi muốn tôi là Zamyla đôi khi. 124 00:05:18,100 --> 00:05:19,650 125 00:05:19,650 --> 00:05:21,640 Vì vậy, chắc chắn sử dụng đi bộ thuận của bạn. 126 00:05:21,640 --> 00:05:25,070 Cô ấy sẽ phá vỡ nó xuống thành miếng nhỏ, cắn-kích thước. 127 00:05:25,070 --> 00:05:28,079 Và khi bạn có những lớn thông số kỹ thuật từ bộ vấn đề của bạn, 128 00:05:28,079 --> 00:05:30,870 nó sẽ được thực sự quan trọng để có thể chỉ cần tìm một nơi nào đó 129 00:05:30,870 --> 00:05:32,600 để bắt đầu làm việc và từ từ thông qua nó. 130 00:05:32,600 --> 00:05:33,610 131 00:05:33,610 --> 00:05:40,260 >> Được rồi, chúng tôi cũng có Study50, mà là study50.harvard.edu, tôi tin. 132 00:05:40,260 --> 00:05:42,270 Bạn chỉ có thể Google nghiên cứu, và nó sẽ đi lên. 133 00:05:42,270 --> 00:05:45,750 Đây là một trong những nguồn lực tốt nhất chúng ta có. 134 00:05:45,750 --> 00:05:49,800 Đó là PowerPoints với các ghi chú và thực hành các vấn đề cho bạn 135 00:05:49,800 --> 00:05:52,430 với các giải pháp mà bạn thực sự có thể đi bộ qua. 136 00:05:52,430 --> 00:05:57,000 Vì vậy, nếu bạn muốn thực hành nhiều hơn, nhiều hơn chúng tôi trong các phần hoặc nhiều hơn 137 00:05:57,000 --> 00:06:00,700 hơn bộ vấn đề của bạn, đây là thực sự là một nơi tôi khuyến khích bạn đi. 138 00:06:00,700 --> 00:06:03,590 Nó được xây dựng bởi mùa hè năm ngoái một số bạn bè thực sự tốt của tôi. 139 00:06:03,590 --> 00:06:04,480 Và thật tuyệt vời. 140 00:06:04,480 --> 00:06:05,540 141 00:06:05,540 --> 00:06:08,670 Trong thực tế, rất nhiều trong các slide rằng tôi sẽ được sử dụng cho mục 142 00:06:08,670 --> 00:06:10,190 sẽ đến từ Study50. 143 00:06:10,190 --> 00:06:12,000 >> Vì vậy, rất nhiều các TF sử dụng nó. 144 00:06:12,000 --> 00:06:13,920 Và cuối cùng, như tôi nêu trên, giờ hành chính. 145 00:06:13,920 --> 00:06:15,836 Nếu bạn đang gặp rắc rối với bài tập về nhà, bạn 146 00:06:15,836 --> 00:06:18,270 gặp rắc rối với một khái niệm, đến giờ làm việc. 147 00:06:18,270 --> 00:06:20,190 Đi đầu trong tuần này nếu như bạn có thể. 148 00:06:20,190 --> 00:06:23,130 Nhận ra đến quad, bởi vì nó là loại xa. 149 00:06:23,130 --> 00:06:24,780 Không ai thích đi bộ ra khỏi đó. 150 00:06:24,780 --> 00:06:27,090 Nhưng đó là lợi thế của bạn, bởi vì sau đó bạn 151 00:06:27,090 --> 00:06:29,580 sẽ có tất cả những TFs, [Không nghe được] vây quanh bạn. 152 00:06:29,580 --> 00:06:31,920 Và đặc biệt là bây giờ, chỉ là một tip, thứ Năm 153 00:06:31,920 --> 00:06:35,310 rất lạnh ngay bây giờ trong Mather vì psets của bạn 154 00:06:35,310 --> 00:06:36,577 sẽ hết hạn vào ngày thứ Năm. 155 00:06:36,577 --> 00:06:38,410 Và hiểu biết muốn sử dụng ngày cuối của bạn chưa. 156 00:06:38,410 --> 00:06:40,030 >> Vì vậy, nếu bạn đang có rắc rối với các khái niệm, 157 00:06:40,030 --> 00:06:41,780 có rất nhiều người TF đang có để giúp bạn. 158 00:06:41,780 --> 00:06:43,196 Vì vậy, đi ra để Mather hôm thứ Năm. 159 00:06:43,196 --> 00:06:45,280 Nếu bạn muốn nhìn thấy tôi, Tôi sẽ có mặt ở đó. 160 00:06:45,280 --> 00:06:48,870 Tôi thường làm bài tập về nhà của riêng tôi, bởi vì không ai muốn giúp đỡ của tôi. 161 00:06:48,870 --> 00:06:50,260 Vì vậy, đến gặp chúng tôi. 162 00:06:50,260 --> 00:06:51,460 163 00:06:51,460 --> 00:06:52,440 >> Gặp chúng tôi nửa chừng. 164 00:06:52,440 --> 00:06:55,400 Vì vậy, có bao nhiêu người đã tham dự giảng dạy hoặc xem nó trực tuyến? 165 00:06:55,400 --> 00:06:56,570 166 00:06:56,570 --> 00:06:59,140 Có bao nhiêu người đã đến siêu phần tuần trước? 167 00:06:59,140 --> 00:07:00,171 168 00:07:00,171 --> 00:07:00,670 Cool. 169 00:07:00,670 --> 00:07:02,190 Đó thực sự là một số lượng hợp lý. 170 00:07:02,190 --> 00:07:05,425 Làm thế nào nhiều bạn đã đọc của bạn spec cho tuần này, cho pset của bạn? 171 00:07:05,425 --> 00:07:07,081 172 00:07:07,081 --> 00:07:08,461 Ooh, tôi tự hào về các bạn! 173 00:07:08,461 --> 00:07:09,335 Nhiều kẹo cho y'all. 174 00:07:09,335 --> 00:07:11,070 175 00:07:11,070 --> 00:07:13,280 >> Tốt, vì vậy những gì chúng tôi có nghĩa "Gặp chúng tôi nửa chừng," là 176 00:07:13,280 --> 00:07:16,440 phần đó là thực sự chỉ sẽ là siêu hữu ích cho bạn 177 00:07:16,440 --> 00:07:19,810 nếu bạn đi trong khi đọc của bạn đặc điểm kỹ thuật cho pset của bạn. 178 00:07:19,810 --> 00:07:23,859 Bởi vì khi tôi đi qua một cái nhìn tổng quan những điều bạn cần phải tìm ra cho, 179 00:07:23,859 --> 00:07:25,650 nó sẽ không làm cho càng nhiều ý nghĩa nếu bạn 180 00:07:25,650 --> 00:07:28,358 không biết vấn đề của bạn thiết lập sẽ được yêu cầu bạn phải làm. 181 00:07:28,358 --> 00:07:29,020 182 00:07:29,020 --> 00:07:32,590 >> Nếu bạn không đến phần, rõ ràng Tôi không thể là hữu ích cho bạn. 183 00:07:32,590 --> 00:07:36,600 Tôi sẽ không để mất nó nếu cá nhân bạn không đến phần của tôi ngay bây giờ, 184 00:07:36,600 --> 00:07:38,570 nhưng chắc chắn bạn nên. 185 00:07:38,570 --> 00:07:40,090 Nếu bạn không thể, xem chúng trực tuyến. 186 00:07:40,090 --> 00:07:41,230 187 00:07:41,230 --> 00:07:42,519 Họ có một lý do. 188 00:07:42,519 --> 00:07:43,560 Mine sẽ được quyền ở đó. 189 00:07:43,560 --> 00:07:44,187 190 00:07:44,187 --> 00:07:47,270 Như bạn thấy, chúng ta đang được ghi lại, do đó, nó sẽ có ngay cho các bạn. 191 00:07:47,270 --> 00:07:49,110 192 00:07:49,110 --> 00:07:51,570 Cũng như vậy, sẽ lectures-- đó là rõ ràng 193 00:07:51,570 --> 00:07:53,790 nơi bạn đang nhận được bắt đầu của tài liệu của bạn ở đây. 194 00:07:53,790 --> 00:07:57,430 Vì vậy, tôi chắc chắn sẽ cố gắng và giúp bạn nhiều như tôi có thể, 195 00:07:57,430 --> 00:07:58,840 nhưng tôi chỉ có thể gặp bạn cho đến nay. 196 00:07:58,840 --> 00:08:01,220 Bạn cần phải loại gặp chúng tôi nằm ở đó. 197 00:08:01,220 --> 00:08:04,050 >> Grading-- như vậy, tất cả các bạn người nhận được một email từ tôi, 198 00:08:04,050 --> 00:08:05,445 bạn là phần chính thức của tôi. 199 00:08:05,445 --> 00:08:06,470 200 00:08:06,470 --> 00:08:08,120 Tôi sẽ được phân loại psets của bạn. 201 00:08:08,120 --> 00:08:12,870 Và tôi chỉ muốn nói, một điều mà bạn thực sự nên chú ý đến 202 00:08:12,870 --> 00:08:13,820 là những ý kiến. 203 00:08:13,820 --> 00:08:17,390 Các ý kiến ​​hữu dụng hơn hơn số điểm thực tế chúng tôi cung cấp cho bạn. 204 00:08:17,390 --> 00:08:19,890 Và các ý kiến ​​được thực sự nơi tôi dành nhiều thời gian của tôi 205 00:08:19,890 --> 00:08:20,770 khi tôi chấm điểm. 206 00:08:20,770 --> 00:08:22,700 Vì vậy, tôi sẽ đánh giá cao nếu bạn đọc chúng. 207 00:08:22,700 --> 00:08:26,990 Và họ thực sự như thế nào bạn đang đi để tìm hiểu thêm về thiết kế và phong cách 208 00:08:26,990 --> 00:08:29,860 và điều đó là một chút ít cắt và khô. 209 00:08:29,860 --> 00:08:31,770 >> Vì vậy, thực sự chú ý những ý kiến. 210 00:08:31,770 --> 00:08:34,720 Nếu bạn có câu hỏi về họ, hoặc câu hỏi về điểm số của bạn, 211 00:08:34,720 --> 00:08:37,620 hãy đến nói chuyện với tôi hoặc trước khi phần, 212 00:08:37,620 --> 00:08:41,039 Tôi có lẽ sẽ được treo ra ở sảnh, hoặc sau đó. 213 00:08:41,039 --> 00:08:43,559 Nếu bạn muốn lên lịch một một ngày-các cuộc họp về cách 214 00:08:43,559 --> 00:08:46,100 bạn có thể giúp cải thiện sau bộ vấn đề, chỉ cần cho tôi biết. 215 00:08:46,100 --> 00:08:47,520 216 00:08:47,520 --> 00:08:49,750 >> Và sau đó chỉ cần một vài lời khuyên cho các bạn. 217 00:08:49,750 --> 00:08:53,110 Vì vậy, một trong những điều lớn nhất Tôi luôn luôn nhấn mạnh mục của tôi 218 00:08:53,110 --> 00:08:57,700 khi bạn đang học tập thế nào để mã là để viết những điều trên giấy đầu tiên. 219 00:08:57,700 --> 00:09:01,080 Nếu bạn có một kế hoạch trò chơi cho nơi mã của bạn cần phải đi 220 00:09:01,080 --> 00:09:03,230 và những gì nó cần phải làm và nó bị hỏng xuống 221 00:09:03,230 --> 00:09:06,000 vụn của giả code bạn đã viết ra, 222 00:09:06,000 --> 00:09:09,780 bạn sẽ được ít hơn có khả năng làm cho các lỗi cú pháp 223 00:09:09,780 --> 00:09:12,355 hoặc tạo ra một vòng lặp nếu mà không có gì khác. 224 00:09:12,355 --> 00:09:14,064 225 00:09:14,064 --> 00:09:15,980 Nếu bạn biết nơi bạn đang đi tổng thể, bạn 226 00:09:15,980 --> 00:09:19,764 ít có khả năng để làm cho các nhỏ những sai lầm mà đôi khi sẽ đưa bạn 227 00:09:19,764 --> 00:09:22,555 giờ để sửa chữa, bởi vì bạn đang như thế nào, nơi tôi bị mất khung này? 228 00:09:22,555 --> 00:09:23,580 229 00:09:23,580 --> 00:09:27,420 >> Ngày lưu ý rằng, hãy sử dụng Style50. 230 00:09:27,420 --> 00:09:28,820 231 00:09:28,820 --> 00:09:31,590 Đặc biệt là khi bạn đang đi giờ hành chính, 232 00:09:31,590 --> 00:09:34,850 nếu mã của bạn là tất cả chuyển sang một bên, 233 00:09:34,850 --> 00:09:37,740 nó là chính sách nhiên chúng tôi có thể nói, sửa chữa nó 234 00:09:37,740 --> 00:09:41,990 để nó trông giống như Style50 nói nó phải, và sau đó chúng tôi sẽ giúp bạn. 235 00:09:41,990 --> 00:09:43,830 Vì vậy, nó sẽ làm cho cuộc sống của bạn dễ dàng hơn. 236 00:09:43,830 --> 00:09:45,030 Nó sẽ làm cho cuộc sống của chúng tôi dễ dàng hơn. 237 00:09:45,030 --> 00:09:46,000 Tất cả mọi người hạnh phúc hơn. 238 00:09:46,000 --> 00:09:47,290 Mọi người đều nhận được điểm số cao hơn. 239 00:09:47,290 --> 00:09:48,760 Mà không phải là tất cả những gì chúng tôi muốn? 240 00:09:48,760 --> 00:09:50,420 241 00:09:50,420 --> 00:09:53,860 >> Vì vậy, viết những điều trên giấy trước bạn đã bao giờ chạm vào máy tính của bạn. 242 00:09:53,860 --> 00:09:57,540 Nói những điều trên ở mức cao, và chắc chắn rằng bạn biết nơi bạn đang đi. 243 00:09:57,540 --> 00:09:59,940 Và nếu bạn không chắc chắn, ngồi xuống với một người nào đó 244 00:09:59,940 --> 00:10:03,340 và đi bộ chúng thông qua từng bước những gì mã của bạn là phải làm. 245 00:10:03,340 --> 00:10:07,940 Và chín trên 10 lần, bạn sẽ có như, oh, tôi quên mất một điều kiện if 246 00:10:07,940 --> 00:10:12,420 hoặc tôi quên một dấu chấm phẩy đây hoặc Tôi đang cập nhật sai biến này. 247 00:10:12,420 --> 00:10:15,740 Vì vậy, những lời khuyên của tôi cho sự thành công. 248 00:10:15,740 --> 00:10:19,820 >> Vì vậy, kể từ khi khoảng một nửa số bạn nhìn như bạn tham dự siêu phần, 249 00:10:19,820 --> 00:10:24,080 Tôi chỉ cần đi đến rất một thời gian ngắn đi qua các vòng, 250 00:10:24,080 --> 00:10:26,650 mà không phải là trong chương trình nghị ban đầu của chúng tôi. 251 00:10:26,650 --> 00:10:28,190 Nhưng họ có thực sự quan trọng. 252 00:10:28,190 --> 00:10:30,250 Và vì vậy tôi sẽ loại tốc độ thông qua những 253 00:10:30,250 --> 00:10:32,860 trước khi chúng tôi nhận được vào phần thực tế của chúng tôi. 254 00:10:32,860 --> 00:10:36,269 Trước khi tôi làm điều đó, đang có bất kỳ questions-- hậu cần, 255 00:10:36,269 --> 00:10:38,060 cá nhân, là có bất cứ điều gì khác mà bạn muốn 256 00:10:38,060 --> 00:10:40,990 để biết về tôi hoặc về phần hoặc lớp học nói chung? 257 00:10:40,990 --> 00:10:43,195 258 00:10:43,195 --> 00:10:43,880 Tất cả tốt? 259 00:10:43,880 --> 00:10:45,300 OK, mát mẻ. 260 00:10:45,300 --> 00:10:46,781 261 00:10:46,781 --> 00:10:47,280 Đáng yêu. 262 00:10:47,280 --> 00:10:50,071 >> Vì vậy, loops-- các bạn nên tất cả nhận ra những miếng từ đầu. 263 00:10:50,071 --> 00:10:51,310 264 00:10:51,310 --> 00:10:55,220 Vì vậy, các vòng lặp là về cơ bản chỉ một cách để chúng tôi làm điều gì đó 265 00:10:55,220 --> 00:10:58,900 một số số lần, số lặp đi lặp lại hành động dựa trên một số điều kiện. 266 00:10:58,900 --> 00:11:00,140 267 00:11:00,140 --> 00:11:02,090 Vì vậy, chúng tôi có ba loại khác nhau. 268 00:11:02,090 --> 00:11:04,860 Chúng tôi có cho vòng lặp, trong khi, và do-while. 269 00:11:04,860 --> 00:11:06,430 270 00:11:06,430 --> 00:11:11,320 >> Vì vậy, cho loops-- chúng tôi chỉ có một rất bố trí chung, đây là một vòng lặp for. 271 00:11:11,320 --> 00:11:16,110 Và điều này là rất tốt cho khi bạn biết làm thế nào nhiều lần một cái gì đó cần phải thực thi. 272 00:11:16,110 --> 00:11:17,040 273 00:11:17,040 --> 00:11:18,790 Khi chúng ta nói về vòng khác, bạn sẽ 274 00:11:18,790 --> 00:11:20,650 thấy lý do tại sao đó là một sự khác biệt quan trọng. 275 00:11:20,650 --> 00:11:22,530 Nhưng đối với các vòng lặp là một cái gì đó thiết lập. 276 00:11:22,530 --> 00:11:24,590 Bạn biết bạn có thể tính toán số 277 00:11:24,590 --> 00:11:29,230 hoặc bạn biết số lần bạn muốn điều này lặp đi lặp lại ở đầu. 278 00:11:29,230 --> 00:11:32,220 >> Vì vậy, nếu bạn thấy ở đây, chúng tôi chỉ có một loại nói chung 279 00:11:32,220 --> 00:11:34,480 khung xương cho một vòng lặp for ở đây. 280 00:11:34,480 --> 00:11:38,080 Vì vậy, cho-khởi, đây là nơi các biến của bạn được khởi tạo. 281 00:11:38,080 --> 00:11:41,915 Với Mario, tôi chắc chắn rằng các bạn đã làm một cái gì đó giống như int i bằng 0. 282 00:11:41,915 --> 00:11:42,920 283 00:11:42,920 --> 00:11:44,710 Đó là nơi sẽ xảy ra trong màu xanh. 284 00:11:44,710 --> 00:11:48,290 Bạn có điều kiện của bạn, là những gì đang kiểm tra tất cả các thời gian. 285 00:11:48,290 --> 00:11:52,410 Nếu tình trạng này là sự thật, sau đó phần còn lại của đoạn mã thực thi. 286 00:11:52,410 --> 00:11:54,749 Sau đó nó sẽ chạy again-- và yêu cầu. 287 00:11:54,749 --> 00:11:57,290 Và sau đó chúng tôi có cập nhật, nơi bạn đang cập nhật biến của bạn. 288 00:11:57,290 --> 00:12:01,410 Vì vậy, một lần nữa, có như Mario, tôi chắc chắn các bạn đã làm một cái gì đó giống như tôi cộng cộng. 289 00:12:01,410 --> 00:12:04,640 Vì vậy, mỗi lần vòng lặp ran, tôi đã cập nhật để 290 00:12:04,640 --> 00:12:09,370 rằng khi chúng tôi đã kiểm tra nó chống lại một số điều kiện, nó đã được thay đổi. 291 00:12:09,370 --> 00:12:12,570 >> Bởi vì nếu bạn chỉ có một biến tĩnh, 292 00:12:12,570 --> 00:12:15,567 nếu nó thực hiện lần đầu tiên, đó là chỉ cần đi để thực hiện vô cùng. 293 00:12:15,567 --> 00:12:18,025 Vì vậy, bạn phải chắc chắn rằng bạn cập nhật biến của bạn đúng. 294 00:12:18,025 --> 00:12:19,350 295 00:12:19,350 --> 00:12:23,890 Và chúng tôi cũng chỉ có một đại diện hình ảnh đó. 296 00:12:23,890 --> 00:12:24,930 Tất cả mọi người tốt? 297 00:12:24,930 --> 00:12:25,630 Đối với các vòng lặp. 298 00:12:25,630 --> 00:12:27,540 Nên đã thấy những trong pset của bạn. 299 00:12:27,540 --> 00:12:28,840 Cool. 300 00:12:28,840 --> 00:12:31,870 >> Vì vậy, đây chỉ là một ví dụ đơn giản. 301 00:12:31,870 --> 00:12:32,860 In Đây là CS50! 302 00:12:32,860 --> 00:12:33,360 10 lần. 303 00:12:33,360 --> 00:12:34,850 304 00:12:34,850 --> 00:12:37,906 Và vì vậy chúng tôi có khởi tạo của chúng tôi, như chúng ta thấy ở đó, với int i 305 00:12:37,906 --> 00:12:41,280 bằng 0, cho tôi ít hơn 10, và tôi cộng với cộng với. 306 00:12:41,280 --> 00:12:43,090 307 00:12:43,090 --> 00:12:44,540 Và nó sẽ in mà 10 lần. 308 00:12:44,540 --> 00:12:46,230 309 00:12:46,230 --> 00:12:56,781 >> Vì vậy, trong khi loops-- trong khi các vòng lặp là khi tuyệt vời mà bạn không nhất thiết phải 310 00:12:56,781 --> 00:12:59,530 có biết bao nhiêu lần nó sẽ cập nhật trong đầu. 311 00:12:59,530 --> 00:13:00,640 312 00:13:00,640 --> 00:13:02,580 Bạn chỉ cần có một số điều kiện kiểm tra. 313 00:13:02,580 --> 00:13:09,550 Và điều này có thể là một cái gì đó giống như while-- chúng ta hãy lấy một ví dụ từ pset của bạn. 314 00:13:09,550 --> 00:13:12,540 Nếu Mario, bạn cố gắng đầu vào một số âm. 315 00:13:12,540 --> 00:13:13,270 Phải không? 316 00:13:13,270 --> 00:13:15,460 Anh đã dự định lại nhắc người sử dụng của bạn. 317 00:13:15,460 --> 00:13:20,890 Vì vậy, bạn có thể nói, tốt, nếu các yếu tố đầu vào người sử dụng một cái gì đó nhỏ hơn không, lại nhanh chóng 318 00:13:20,890 --> 00:13:21,390 họ. 319 00:13:21,390 --> 00:13:23,890 Và tôi chắc chắn rằng có thể có được cái gì mà một số bạn 320 00:13:23,890 --> 00:13:24,660 được sử dụng trong mã của bạn. 321 00:13:24,660 --> 00:13:26,270 >> Vì vậy, nó là một điều đơn giản. 322 00:13:26,270 --> 00:13:28,490 Bạn có thời gian, một số điều kiện đó được kiểm tra 323 00:13:28,490 --> 00:13:30,460 mỗi lần mã đi để thực thi. 324 00:13:30,460 --> 00:13:32,660 Nếu nó để đánh giá đúng, chúng ta chạy nó. 325 00:13:32,660 --> 00:13:33,820 Nếu chúng ta không làm. 326 00:13:33,820 --> 00:13:35,650 Và những gì thực sự important-- cái gì tôi 327 00:13:35,650 --> 00:13:38,155 nghĩ rằng David đã nói về trong lecture-- là niềng răng. 328 00:13:38,155 --> 00:13:40,760 329 00:13:40,760 --> 00:13:42,930 Bất cứ điều gì của trong niềng răng là những gì đang thực hiện. 330 00:13:42,930 --> 00:13:45,850 Nếu bạn quên những niềng răng, nó chỉ đi 331 00:13:45,850 --> 00:13:48,800 là dòng trực tiếp sau khi được thực hiện. 332 00:13:48,800 --> 00:13:51,040 >> Vì vậy, nếu bạn có ba điều đó có nghĩa vụ 333 00:13:51,040 --> 00:13:54,020 xảy ra khi này điều kiện để đánh giá đúng, 334 00:13:54,020 --> 00:13:58,040 và bạn không có những niềng răng, chỉ điều đầu tiên sẽ xảy ra. 335 00:13:58,040 --> 00:14:01,510 Vì vậy, rất hiểu biết của nơi bạn đặt niềng răng của bạn. 336 00:14:01,510 --> 00:14:04,880 Nếu bạn gắn bó với Style50, điều này chắc chắn sẽ giúp bạn. 337 00:14:04,880 --> 00:14:06,220 338 00:14:06,220 --> 00:14:06,760 Cool. 339 00:14:06,760 --> 00:14:10,835 >> Vì vậy, đây là một đếm ngược từ 10 đến zero. 340 00:14:10,835 --> 00:14:12,380 341 00:14:12,380 --> 00:14:16,210 Và như bạn thấy ở đây, chúng ta khởi tạo một số truy cập bên ngoài của nó. 342 00:14:16,210 --> 00:14:19,250 Một điều đó là khác nhau là chúng ta không khởi tạo biến của chúng tôi 343 00:14:19,250 --> 00:14:20,300 trong vòng lặp trong khi của chúng tôi. 344 00:14:20,300 --> 00:14:22,150 Nó khởi tạo bên ngoài của nó. 345 00:14:22,150 --> 00:14:25,480 Chúng tôi chỉ đơn giản là chỉ cần đặt các điều kiện trong khi cho chúng tôi. 346 00:14:25,480 --> 00:14:28,630 Vì vậy, trong trường hợp này, đó là trong khi số là lớn hơn không. 347 00:14:28,630 --> 00:14:35,134 Và chúng tôi in ra những gì số của chúng tôi là, và sau đó chúng tôi giảm giá trị biến của chúng tôi. 348 00:14:35,134 --> 00:14:36,800 Và đó cũng là một điều cần chú ý. 349 00:14:36,800 --> 00:14:40,440 Cập nhật của chúng tôi không xảy ra trong vòng mà phần đầu tiên của vòng lặp while. 350 00:14:40,440 --> 00:14:44,255 Nó thực sự sẽ xảy ra trong vòng niềng răng, cơ thể của văn bản. 351 00:14:44,255 --> 00:14:46,820 352 00:14:46,820 --> 00:14:51,860 >> Vì vậy, trong khi loops---do-trong khi vòng là tuyệt vời cho người sử dụng xác nhận. 353 00:14:51,860 --> 00:14:54,820 Vì vậy, một số bạn có thể có cũng được sử dụng trong pset của bạn. 354 00:14:54,820 --> 00:14:59,960 Bạn có thể nói, làm gì, như thế nào, yêu cầu người dùng cho đầu vào. 355 00:14:59,960 --> 00:15:04,690 Và sau đó, trong khi, như thế, đầu vào là ít hơn so với một số số. 356 00:15:04,690 --> 00:15:10,700 >> Vì vậy, đối với một trường hợp rõ ràng với Mario, nó sẽ làm printf, nhập một số nguyên, 357 00:15:10,700 --> 00:15:13,820 và sau đó một số nguyên bằng getInt. 358 00:15:13,820 --> 00:15:17,060 Và sau đó nó sẽ thấy thực sự thực thi mã đầu tiên. 359 00:15:17,060 --> 00:15:19,120 Bạn thực sự sẽ có một số loại nguyên. 360 00:15:19,120 --> 00:15:23,380 Và sau đó bạn có thể nói, trong khi số nguyên đó là ít hơn không. 361 00:15:23,380 --> 00:15:26,120 Vì vậy, những gì nó sẽ làm là nó sẽ thực hiện ít nhất một lần. 362 00:15:26,120 --> 00:15:27,536 Nó sẽ kiểm tra điều kiện. 363 00:15:27,536 --> 00:15:29,690 Nếu điều kiện là đúng, nó sẽ chạy một lần nữa. 364 00:15:29,690 --> 00:15:32,900 >> Vì vậy, trong khi các vòng lặp là tuyệt vời cho người sử dụng xác nhận, 365 00:15:32,900 --> 00:15:36,770 bởi vì bạn biết mã sẽ thực hiện ít nhất 366 00:15:36,770 --> 00:15:39,720 một lần, trong khi với trong khi các vòng, bạn không 367 00:15:39,720 --> 00:15:41,630 đảm bảo rằng nó sẽ thực hiện một lần. 368 00:15:41,630 --> 00:15:45,330 Nó sẽ kiểm tra điều kiện đầu tiên và sau đó quyết định để thực hiện nó, 369 00:15:45,330 --> 00:15:48,350 trong khi một do-while sẽ thực thi mã đầu tiên 370 00:15:48,350 --> 00:15:51,110 và sau đó kiểm tra xem liệu bạn cần phải lặp lại nó. 371 00:15:51,110 --> 00:15:52,985 Không phân biệt có ý nghĩa với tất cả mọi người? 372 00:15:52,985 --> 00:15:53,680 373 00:15:53,680 --> 00:15:54,180 OK. 374 00:15:54,180 --> 00:15:55,651 375 00:15:55,651 --> 00:15:56,150 Cool. 376 00:15:56,150 --> 00:15:57,380 377 00:15:57,380 --> 00:15:59,800 >> Vì vậy, trong trường hợp này, đây là loại về những gì tôi đã nói về, 378 00:15:59,800 --> 00:16:02,210 này lại nhắc nhở cho đến khi bạn nhận được một số tích cực. 379 00:16:02,210 --> 00:16:05,060 Vì vậy, chúng ta biết rằng printf "Nhập một số tích cực" 380 00:16:05,060 --> 00:16:08,720 và thực sự yêu cầu cho điều đó đầu vào sẽ xảy ra ít nhất một lần. 381 00:16:08,720 --> 00:16:12,650 Nếu người dùng là ác và giữ nhập một số tiêu cực, người 382 00:16:12,650 --> 00:16:14,210 biết bao nhiêu lần nó sẽ thực hiện. 383 00:16:14,210 --> 00:16:17,500 Tuy nhiên, mã này được đảm bảo để thực hiện ít nhất một lần. 384 00:16:17,500 --> 00:16:20,040 Và đó là lý do tại sao nó là tuyệt vời để phê chuẩn đầu vào. 385 00:16:20,040 --> 00:16:22,300 Và bạn sẽ sử dụng khá một chút. 386 00:16:22,300 --> 00:16:23,870 387 00:16:23,870 --> 00:16:25,830 >> Tất cả các bên phải, bất kỳ câu hỏi cho đến nay? 388 00:16:25,830 --> 00:16:27,080 389 00:16:27,080 --> 00:16:28,030 Chúng tôi tất cả đều tốt? 390 00:16:28,030 --> 00:16:29,513 Tôi có nói quá nhanh? 391 00:16:29,513 --> 00:16:30,520 392 00:16:30,520 --> 00:16:31,130 Chúng tôi có tốt không? 393 00:16:31,130 --> 00:16:31,630 OK. 394 00:16:31,630 --> 00:16:32,960 395 00:16:32,960 --> 00:16:33,800 Đáng sợ 396 00:16:33,800 --> 00:16:35,841 >> Vì vậy, chúng ta sẽ đi trước và nói về mảng. 397 00:16:35,841 --> 00:16:36,660 398 00:16:36,660 --> 00:16:37,600 Cool. 399 00:16:37,600 --> 00:16:40,700 Vì vậy, mảng cơ bản chỉ cấu trúc dữ liệu 400 00:16:40,700 --> 00:16:43,260 cho phép chúng ta lưu trữ những thứ cùng loại. 401 00:16:43,260 --> 00:16:47,920 Vì vậy, nếu bạn đã bao giờ có một mảng, nó hoặc chỉ cần đi để có ints 402 00:16:47,920 --> 00:16:51,590 hoặc nó chỉ là sẽ có nổi hoặc nó chỉ là sẽ phải ký tự. 403 00:16:51,590 --> 00:16:55,440 Bạn sẽ không có một int với một char với một phao với một đôi. 404 00:16:55,440 --> 00:16:56,850 Một điều. 405 00:16:56,850 --> 00:17:00,810 Mảng chỉ là một kích thước, hoặc họ chỉ có một loại. 406 00:17:00,810 --> 00:17:05,679 >> Vì vậy, ở đây chúng tôi có một loạt các kích thước ba với ba số nguyên trong đó. 407 00:17:05,679 --> 00:17:07,970 Họ có thể nổi, nhưng chúng tôi sẽ nói ints họ. 408 00:17:07,970 --> 00:17:09,310 409 00:17:09,310 --> 00:17:16,970 Vì vậy, một điều nhận ra là mảng là một kích thước thiết lập khi bạn khởi tạo 410 00:17:16,970 --> 00:17:22,285 họ, và họ không easily-- vì tất cả các bạn ít cảm thấy thoải mái, 411 00:17:22,285 --> 00:17:25,034 bạn chỉ nên nghĩ về họ như không có khả năng mở rộng kích thước. 412 00:17:25,034 --> 00:17:26,119 413 00:17:26,119 --> 00:17:28,740 Tuy nhiên lớn bạn đặt ra mảng của bạn trong đầu, 414 00:17:28,740 --> 00:17:31,070 đó là kích thước của nó sẽ ở lại, vì mảng 415 00:17:31,070 --> 00:17:33,070 là một khối liên tục của bộ nhớ. 416 00:17:33,070 --> 00:17:34,007 417 00:17:34,007 --> 00:17:35,840 Và khi các bạn có được thành hơn một chút 418 00:17:35,840 --> 00:17:40,820 làm thế nào bộ nhớ thực sự đặt ra trên đĩa và trong heap và stack, 419 00:17:40,820 --> 00:17:42,220 nó sẽ có ý nghĩa nhiều hơn một chút. 420 00:17:42,220 --> 00:17:48,310 >> Nhưng bạn chỉ có thể nghĩ như thế, đó là một dãy các không gian trên đĩa cứng của bạn. 421 00:17:48,310 --> 00:17:52,540 Và bạn không thể đảm bảo rằng có sẽ là không gian trống sau khi nó. 422 00:17:52,540 --> 00:17:55,290 Bạn có thể khởi tạo một mảng ba và sau đó có thể bạn 423 00:17:55,290 --> 00:17:59,190 khởi tạo một mảng của năm sau đó, và nó ngay sau đó. 424 00:17:59,190 --> 00:18:04,000 Vì vậy, nếu bạn đã đi qua chỗ ba trong đó mảng đầu tiên, 425 00:18:04,000 --> 00:18:06,370 bạn sẽ có văn bản trên cái gì khác. 426 00:18:06,370 --> 00:18:10,390 Vì vậy, mảng are-- cho các bạn, chỉ cần nghĩ về họ như một kích thước cố định. 427 00:18:10,390 --> 00:18:12,700 428 00:18:12,700 --> 00:18:16,890 >> Vì vậy, việc tạo ra một array-- bạn đang đi cần phải làm điều này khá một chút. 429 00:18:16,890 --> 00:18:18,240 430 00:18:18,240 --> 00:18:22,080 Vì vậy, trong cùng một cách mà chúng ta có một cấu trúc chung của chúng tôi cho các vòng, 431 00:18:22,080 --> 00:18:24,910 chúng tôi có một vị tướng đẹp cấu trúc cho mảng của chúng tôi. 432 00:18:24,910 --> 00:18:28,430 Bởi vì họ là của một loại, tất cả các các yếu tố trong một mảng là của một loại, 433 00:18:28,430 --> 00:18:30,950 bạn cần phải khởi tạo loại đó là. 434 00:18:30,950 --> 00:18:33,804 >> Vì vậy, như bạn thấy ở đây, chúng ta có một ít kiểu dữ liệu khung tốt đẹp. 435 00:18:33,804 --> 00:18:35,970 Vì vậy, nếu chúng ta đang tạo ra một int mảng, đó sẽ là int. 436 00:18:35,970 --> 00:18:38,830 Nếu chúng ta đang tạo ra một char mảng, nó sẽ được char. 437 00:18:38,830 --> 00:18:41,890 Nếu chúng ta đang tạo ra một chuỗi mảng, nó sẽ được chuỗi. 438 00:18:41,890 --> 00:18:45,140 Và sau đó là tên của mảng của bạn, bất cứ điều gì bạn muốn nó được. 439 00:18:45,140 --> 00:18:51,750 Vì vậy, có lẽ đó là điểm kiểm tra hoặc có thể đó là sinh viên hoặc có thể đó là kẹo. 440 00:18:51,750 --> 00:18:54,440 Dù bạn quyết định đặt tên của bạn mảng, đó là những gì nó sẽ được. 441 00:18:54,440 --> 00:18:57,260 >> Và sau đó trong dấu ngoặc đơn, bạn sẽ có kích thước mà bạn muốn. 442 00:18:57,260 --> 00:19:01,350 Vì vậy, chúng tôi đang lưu trữ 10 học sinh hoặc được chúng tôi lưu trữ 15 loại kẹo? 443 00:19:01,350 --> 00:19:03,200 444 00:19:03,200 --> 00:19:03,920 Những gì không. 445 00:19:03,920 --> 00:19:06,830 Vì vậy, trong ví dụ của chúng tôi ở đây, chúng tôi đang tạo ra một mảng 446 00:19:06,830 --> 00:19:10,100 kích thước ba, mà các bạn thấy ngay tại đây ở bên phải. 447 00:19:10,100 --> 00:19:11,350 448 00:19:11,350 --> 00:19:15,990 Và khi lần đầu tiên chúng ta khởi tạo nó, tất cả mọi thứ được thiết lập để không. 449 00:19:15,990 --> 00:19:18,970 Vì vậy, nó chỉ nghĩ giống như một phiến đá trắng. 450 00:19:18,970 --> 00:19:22,550 Chúng tôi có tất cả các không gian này, chúng tôi có tất cả các hộp chúng ta có thể đưa dữ liệu của chúng tôi vào, 451 00:19:22,550 --> 00:19:25,530 nhưng họ chỉ trống cho thời gian được. 452 00:19:25,530 --> 00:19:28,700 >> Vì vậy, nếu chúng ta muốn thực sự giao cho các giá trị, 453 00:19:28,700 --> 00:19:33,050 chúng ta làm như vậy là ngay dưới đây cho thấy. 454 00:19:33,050 --> 00:19:39,170 Vì vậy, bạn có bất cứ điều gì tên của bạn mảng và sau đó là những gì chỉ số bạn muốn. 455 00:19:39,170 --> 00:19:43,070 Vì vậy, chỉ số này chỉ đề cập đến, như thế nào, khe chúng tôi đang tìm kiếm. 456 00:19:43,070 --> 00:19:47,830 Và một điều quan trọng cần chú ý là mảng được zero-lập chỉ mục. 457 00:19:47,830 --> 00:19:53,160 Vì vậy, nếu chúng ta muốn không gian đầu tiên trong bộ nhớ của mảng của chúng tôi, nó sẽ là số không. 458 00:19:53,160 --> 00:19:54,740 Nếu chúng ta muốn thứ hai, nó sẽ là một. 459 00:19:54,740 --> 00:19:56,198 Nếu chúng ta muốn thứ ba, nó sẽ có hai. 460 00:19:56,198 --> 00:19:57,820 Vv và vv. 461 00:19:57,820 --> 00:20:02,130 >> Đó cũng là lý do tại sao, thông thường, khi chúng ta làm cho loops-- tôi chắc chắn 462 00:20:02,130 --> 00:20:05,030 các bạn đang tự hỏi, tại sao Chúng ta bắt đầu từ 0 so với 1? 463 00:20:05,030 --> 00:20:09,909 Và đó là bởi vì khi chúng ta chuyển vào sử dụng các mảng, nó bản đồ một cách chính xác. 464 00:20:09,909 --> 00:20:11,700 Vì vậy, nếu bạn muốn lặp vào một mảng, nó 465 00:20:11,700 --> 00:20:14,830 có ý nghĩa nhiều hơn để làm i bằng 0, bởi vì chúng tôi 466 00:20:14,830 --> 00:20:17,940 biết rằng sẽ tương ứng đến vị trí đầu tiên trong bộ nhớ. 467 00:20:17,940 --> 00:20:18,990 468 00:20:18,990 --> 00:20:19,990 Mọi người đều tốt với điều đó? 469 00:20:19,990 --> 00:20:21,060 470 00:20:21,060 --> 00:20:21,560 Cool. 471 00:20:21,560 --> 00:20:26,240 >> Và sau đó trên dưới cùng ở đây chỉ là một cách khác để khởi tạo một mảng. 472 00:20:26,240 --> 00:20:29,590 Bạn vẫn có của bạn kiểu dữ liệu và tên, 473 00:20:29,590 --> 00:20:31,960 nhưng thay vì thực sự đặt một kích thước trong đó, 474 00:20:31,960 --> 00:20:33,830 bạn chỉ có thể làm khung trống. 475 00:20:33,830 --> 00:20:36,350 Và sau đó với các xoăn niềng răng ở phía dưới, 476 00:20:36,350 --> 00:20:40,270 bạn chỉ có thể nhập dữ liệu bạn muốn tách bằng dấu phẩy. 477 00:20:40,270 --> 00:20:43,070 Và đó sẽ tự động nói, OK, tôi thấy 478 00:20:43,070 --> 00:20:47,300 rằng bạn có ba điều trong những niềng răng. 479 00:20:47,300 --> 00:20:51,410 Vì vậy, tôi biết rằng tôi cần phải phân bổ ba khối bộ nhớ và sau đó lưu trữ những người. 480 00:20:51,410 --> 00:20:55,300 481 00:20:55,300 --> 00:21:01,670 >> Vì vậy, phiên bản đầu tiên bạn có thể sử dụng nếu bạn đang yêu cầu người dùng của bạn để đầu vào 482 00:21:01,670 --> 00:21:04,770 giá trị để bạn có thể lặp qua mảng 483 00:21:04,770 --> 00:21:07,660 và ask-- nhận được một số int để nhập chúng. 484 00:21:07,660 --> 00:21:10,500 Nếu bạn biết trước các giá trị, nó có ý nghĩa hơn rất nhiều 485 00:21:10,500 --> 00:21:12,110 sử dụng cách thứ hai. 486 00:21:12,110 --> 00:21:17,270 Nhưng trong hầu hết trường hợp, bạn có thể không biết những gì những giá trị đang có được. 487 00:21:17,270 --> 00:21:19,060 488 00:21:19,060 --> 00:21:19,560 Cool. 489 00:21:19,560 --> 00:21:20,393 Bất kỳ câu hỏi khác? 490 00:21:20,393 --> 00:21:21,206 491 00:21:21,206 --> 00:21:21,705 Được rồi. 492 00:21:21,705 --> 00:21:25,960 493 00:21:25,960 --> 00:21:30,370 >> Vì vậy, truy cập elements-- vì vậy một những điều tuyệt vời về mảng 494 00:21:30,370 --> 00:21:33,310 là họ là ngẫu nhiên truy cập, có nghĩa là bạn 495 00:21:33,310 --> 00:21:36,010 không cần phải xem xét thông qua tất cả các khối. 496 00:21:36,010 --> 00:21:38,150 Nếu bạn biết rằng bạn muốn gì trong khối hai, 497 00:21:38,150 --> 00:21:40,820 bạn chỉ có thể nói, cho tôi ngăn chặn hai. 498 00:21:40,820 --> 00:21:44,160 Và đó là lý do tại sao các chỉ số rất quan trọng, 499 00:21:44,160 --> 00:21:46,220 và đó là cách chúng tôi thực sự truy cập chúng. 500 00:21:46,220 --> 00:21:50,660 Vì vậy, trong trường hợp này, như chúng ta đã thấy trước khi chúng tôi đã được gán các giá trị, trong một trong những 501 00:21:50,660 --> 00:21:55,360 trước đây, chúng tôi đã có tên và chỉ số chúng tôi muốn truy cập, phải không? 502 00:21:55,360 --> 00:21:59,370 Vì vậy, trong cùng một cách, đó là tất cả chúng ta làm gì để thực sự kéo mà ra dữ liệu. 503 00:21:59,370 --> 00:22:02,940 Chúng tôi có tên và chúng tôi có chỉ số mà chúng tôi muốn. 504 00:22:02,940 --> 00:22:06,710 >> Vì vậy, trong trường hợp này, vòng lặp for xuống đây ở phía dưới, bất cứ ai 505 00:22:06,710 --> 00:22:09,060 biết những gì nó làm, những gì nó sẽ in ra? 506 00:22:09,060 --> 00:22:13,771 507 00:22:13,771 --> 00:22:14,270 Mmhmm? 508 00:22:14,270 --> 00:22:17,790 509 00:22:17,790 --> 00:22:18,520 Chính xác. 510 00:22:18,520 --> 00:22:20,130 Vì vậy, yeah, nó chỉ là lặp lại thông qua. 511 00:22:20,130 --> 00:22:23,410 i bằng zero-- chúng ta có thể đi bộ thông qua các mã chỉ một cách nhanh chóng. 512 00:22:23,410 --> 00:22:26,680 tôi là bằng không, tôi là ít hơn ba vào thời điểm này, phải không? 513 00:22:26,680 --> 00:22:27,780 Vì vậy, kiểm tra ra. 514 00:22:27,780 --> 00:22:33,370 Và chúng ta nói, OK, in f bất cứ điều gì là nhiệt độ i. 515 00:22:33,370 --> 00:22:37,990 i là không đúng ở đây khi chúng tôi đầu tiên lặp đi lặp lại, vì vậy chúng tôi đi đến chỗ đầu tiên này, 516 00:22:37,990 --> 00:22:40,840 và chúng ta nói, OK, 65 là số chúng ta muốn in ra. 517 00:22:40,840 --> 00:22:43,570 Vì vậy, nó sẽ in ra 65 và sau đó làm một dòng mới. 518 00:22:43,570 --> 00:22:46,550 tôi sẽ cập nhật, vì vậy nó in 87. 519 00:22:46,550 --> 00:22:48,780 Nó cập nhật một lần nữa, và nó sẽ in 30. 520 00:22:48,780 --> 00:22:49,810 521 00:22:49,810 --> 00:22:50,630 Tất cả mọi người mát mẻ? 522 00:22:50,630 --> 00:22:51,630 523 00:22:51,630 --> 00:22:52,130 Tuyệt vời. 524 00:22:52,130 --> 00:22:54,340 525 00:22:54,340 --> 00:22:54,840 >> Được rồi. 526 00:22:54,840 --> 00:22:57,710 Vì vậy, đây là loại một điều tôi đã nói như thế nào 527 00:22:57,710 --> 00:23:00,020 bạn có thể theo dõi Điểm số của một ai đó và tại sao 528 00:23:00,020 --> 00:23:03,300 bạn sẽ sử dụng đầu tiên cách khởi tạo nó 529 00:23:03,300 --> 00:23:04,890 thay vì theo cách thứ hai. 530 00:23:04,890 --> 00:23:06,620 Và điều này chỉ đi qua. 531 00:23:06,620 --> 00:23:08,945 Và nhận thấy chúng ta có một kích thước lớp 30. 532 00:23:08,945 --> 00:23:10,690 533 00:23:10,690 --> 00:23:15,770 Và chúng ta đang khởi tạo này mảng ints đó là kích thước 30. 534 00:23:15,770 --> 00:23:18,070 Và sau đó chúng ta đang lặp lại thông qua và chúng tôi 535 00:23:18,070 --> 00:23:20,910 yêu cầu người dùng nhập điểm cho mỗi 536 00:23:20,910 --> 00:23:23,700 và sau đó gán cho nó một nơi cụ thể trong bộ nhớ 537 00:23:23,700 --> 00:23:24,860 nơi nào đó trong mảng đó. 538 00:23:24,860 --> 00:23:26,700 539 00:23:26,700 --> 00:23:27,890 Mát mẻ? 540 00:23:27,890 --> 00:23:29,650 Điều đó có ý nghĩa với tất cả mọi người? 541 00:23:29,650 --> 00:23:30,150 Mmhmm? 542 00:23:30,150 --> 00:23:32,910 543 00:23:32,910 --> 00:23:40,360 >> Vì vậy, hashtag xác định quy mô lớp học 30 là một chỉ thị tiền xử lý, 544 00:23:40,360 --> 00:23:43,780 mà chỉ có nghĩa là nó gets-- nó có làm như quá trình biên dịch. 545 00:23:43,780 --> 00:23:47,595 Bạn có thể nghĩ về nó như là một biến toàn cầu. 546 00:23:47,595 --> 00:23:49,260 547 00:23:49,260 --> 00:23:53,030 Cách chúng tôi làm điều đó là typically-- nó cho phép mã của bạn 548 00:23:53,030 --> 00:23:54,770 được dễ dàng hơn thay đổi. 549 00:23:54,770 --> 00:23:59,480 Vì vậy, hãy nói rằng quy mô lớp học của chúng tôi đột nhiên đi 30-15, 550 00:23:59,480 --> 00:24:03,930 nếu tôi không định nghĩa nó theo cách này, tôi sẽ phải đi qua toàn bộ chương trình của tôi 551 00:24:03,930 --> 00:24:07,420 và thay đổi tất cả các trường từ 30 đến 15. 552 00:24:07,420 --> 00:24:11,590 Nhưng với điều này, tôi nhận được để thay đổi một tại chỗ, và tất cả mọi thứ thay đổi khác. 553 00:24:11,590 --> 00:24:14,930 >> Nếu bạn đã bao giờ muốn làm một băm xác định trong một trường hợp 554 00:24:14,930 --> 00:24:19,020 nơi bạn đang theo dõi một số thiết lập số điểm cho một lớp học 555 00:24:19,020 --> 00:24:23,250 hoặc bạn đang sử dụng một số sẽ được sử dụng, như thế, 556 00:24:23,250 --> 00:24:27,740 suốt một chương trình rất dài, đó là tốt hơn để xác định rằng ngay từ đầu 557 00:24:27,740 --> 00:24:34,440 do đó, nếu bao giờ nó thay đổi, bạn sẽ có được để thay đổi một chỗ thay vì 100. 558 00:24:34,440 --> 00:24:34,940 Có? 559 00:24:34,940 --> 00:24:39,830 >> HỌC SINH: Giữa làm điều đó và chỉ tuyên bố [không nghe được] hơn ở đầu trang. 560 00:24:39,830 --> 00:24:42,470 >> ALLISON BUCHHOLTZ-AU: Vì vậy, nó đã làm với efficient-- 561 00:24:42,470 --> 00:24:45,460 nó là loại bên ngoài phạm vi của những gì chúng ta có thể bao gồm trong phần này. 562 00:24:45,460 --> 00:24:49,236 Nó có làm nhiều hơn với hiệu quả và làm thế nào những điều thực sự 563 00:24:49,236 --> 00:24:50,485 làm việc trong quá trình biên dịch. 564 00:24:50,485 --> 00:24:52,590 565 00:24:52,590 --> 00:24:55,006 Nếu bạn muốn thực sự biết về nó, tôi rất vui để gửi cho bạn 566 00:24:55,006 --> 00:24:56,450 một email với các nguồn lực về nó. 567 00:24:56,450 --> 00:24:57,810 568 00:24:57,810 --> 00:25:03,880 Băm xác định xu hướng ưa thích cho điều này. 569 00:25:03,880 --> 00:25:06,380 Và như bạn mã hơn, bạn loại học các sắc thái 570 00:25:06,380 --> 00:25:09,135 khi bạn nên sử dụng một toàn cầu so với băm xác định. 571 00:25:09,135 --> 00:25:11,010 Nhưng trong thời gian này, bạn không thực sự có 572 00:25:11,010 --> 00:25:13,290 lo lắng về nó là rằng câu trả lời ngắn. 573 00:25:13,290 --> 00:25:15,360 574 00:25:15,360 --> 00:25:16,360 Mọi người đều tốt với điều đó? 575 00:25:16,360 --> 00:25:18,151 Và cũng có thể, nếu bạn muốn sử dụng một băm xác định, 576 00:25:18,151 --> 00:25:21,120 nó thực sự quan trọng để nhận thấy rằng tên phải ở trong tất cả các mũ. 577 00:25:21,120 --> 00:25:22,210 578 00:25:22,210 --> 00:25:24,674 Chúng tôi không chỉ làm CLASS SIZE được ấn tượng. 579 00:25:24,674 --> 00:25:26,090 Nó thực sự phải ở trong tất cả các mũ. 580 00:25:26,090 --> 00:25:27,880 581 00:25:27,880 --> 00:25:28,610 Cool. 582 00:25:28,610 --> 00:25:30,130 Bất cứ điều gì khác không? 583 00:25:30,130 --> 00:25:31,190 Chúng tôi có tốt không? 584 00:25:31,190 --> 00:25:32,220 Đáng yêu. 585 00:25:32,220 --> 00:25:32,720 Chào mừng. 586 00:25:32,720 --> 00:25:34,240 587 00:25:34,240 --> 00:25:38,495 >> OK, vì vậy tôi muốn các bạn có một cái nhìn lúc này và xem liệu bạn có thể tìm thấy lỗi. 588 00:25:38,495 --> 00:25:45,580 589 00:25:45,580 --> 00:25:46,507 Tôi sẽ cung cấp cho bạn một gợi ý. 590 00:25:46,507 --> 00:25:47,840 Đó là một nơi nào đó trong đó vòng lặp cho. 591 00:25:47,840 --> 00:25:53,070 592 00:25:53,070 --> 00:25:53,665 Mmhmm? 593 00:25:53,665 --> 00:25:55,704 >> HỌC SINH: Nên ít hơn bằng 2. 594 00:25:55,704 --> 00:25:56,920 595 00:25:56,920 --> 00:26:01,094 >> ALLISON: Vì vậy, nó có thể là nhỏ hơn hoặc bằng 2, hoặc nó có thể là ít hơn 3. 596 00:26:01,094 --> 00:26:02,510 Và lý do cho điều đó là những gì? 597 00:26:02,510 --> 00:26:05,135 >> HỌC SINH: Các [không nghe được], 0, 1, 2. 598 00:26:05,135 --> 00:26:06,080 >> ALLISON: Chính xác. 599 00:26:06,080 --> 00:26:12,180 Vì vậy, trong một loạt các kích thước n, chúng tôi chỉ có chỉ số của n trừ đi 1. 600 00:26:12,180 --> 00:26:13,700 601 00:26:13,700 --> 00:26:14,200 Cool. 602 00:26:14,200 --> 00:26:15,091 603 00:26:15,091 --> 00:26:17,840 Và sau đó chúng tôi có thể nhận được thực sự điên rồ và nhận được mảng đa chiều. 604 00:26:17,840 --> 00:26:19,340 605 00:26:19,340 --> 00:26:23,960 Một trong những vấn đề khi tôi lấy nó trong tôi năm cần mảng đa chiều, 606 00:26:23,960 --> 00:26:28,720 và tôi nghĩ rằng một trong số họ có thể yêu cầu nó năm nay, vì vậy hãy thoải mái. 607 00:26:28,720 --> 00:26:30,140 Quấn đầu của bạn xung quanh nó bây giờ. 608 00:26:30,140 --> 00:26:33,087 Nó sẽ trở lại ám ảnh bạn, nhưng theo một cách mát mẻ. 609 00:26:33,087 --> 00:26:35,420 Vì vậy, bạn thực sự có thể chỉ nghĩ của các mảng đa chiều 610 00:26:35,420 --> 00:26:36,870 như mảng của mảng. 611 00:26:36,870 --> 00:26:38,060 612 00:26:38,060 --> 00:26:43,809 Vì vậy, bạn có thể loại suy nghĩ của top này hàng là đoạn đầu tiên của bộ nhớ. 613 00:26:43,809 --> 00:26:45,600 Và đây là một trong các đoạn thứ hai của bộ nhớ, 614 00:26:45,600 --> 00:26:47,570 và hàng cuối cùng là đoạn thứ ba của bộ nhớ. 615 00:26:47,570 --> 00:26:50,740 Và trong đó, có một mảng. 616 00:26:50,740 --> 00:26:53,250 Nhưng tất nhiên, nó dễ dàng hơn miêu tả như thế này. 617 00:26:53,250 --> 00:26:55,610 >> Vì vậy, bạn khởi tạo nó theo cùng một cách. 618 00:26:55,610 --> 00:26:57,290 619 00:26:57,290 --> 00:27:01,610 Đây là một nhân vật hội đồng quản trị của ba ba. 620 00:27:01,610 --> 00:27:04,180 Vì vậy, bạn có ba hàng và ba cột. 621 00:27:04,180 --> 00:27:06,760 Chúng tôi đang đại diện cho nó theo cách này. 622 00:27:06,760 --> 00:27:11,800 Và bạn sẽ truy cập vào nó cùng một cách, cột bởi hàng. 623 00:27:11,800 --> 00:27:14,840 Và do đó, 1,1 như chúng ta thấy ở đây. 624 00:27:14,840 --> 00:27:18,730 Chúng ta gán một số không, số không ở đó. 625 00:27:18,730 --> 00:27:21,900 2,0 và 0,2. 626 00:27:21,900 --> 00:27:26,900 Vì vậy, bạn chỉ có thể truy cập nếu them-- bất cứ ai từng làm đại số tuyến tính, 627 00:27:26,900 --> 00:27:31,580 giống như cách bạn truy cập vào một phần tử trong một matrice, đó là ý tưởng tương tự ở đây. 628 00:27:31,580 --> 00:27:33,030 Vì vậy, bạn có thể liên hệ lại cho toán học. 629 00:27:33,030 --> 00:27:34,130 630 00:27:34,130 --> 00:27:36,380 Bạn không cần phải lo lắng quá nhiều về điều này ngay bây giờ. 631 00:27:36,380 --> 00:27:38,671 Thật tốt khi có tiếp xúc, để biết rằng bạn có thể làm điều đó. 632 00:27:38,671 --> 00:27:42,700 Bạn có thể tạo ra một số điên number-- bạn có thể 633 00:27:42,700 --> 00:27:44,750 tạo ra các mảng điên được tất cả tôi sẽ nói. 634 00:27:44,750 --> 00:27:45,250 [Không nghe được] 635 00:27:45,250 --> 00:27:46,585 636 00:27:46,585 --> 00:27:48,460 Có một chút điên, nhưng nó thực sự mát mẻ. 637 00:27:48,460 --> 00:27:50,020 638 00:27:50,020 --> 00:27:50,670 Tuyệt vời. 639 00:27:50,670 --> 00:27:52,550 >> Và sau đó, vì vậy chúng tôi có một ví dụ ở đây. 640 00:27:52,550 --> 00:27:54,165 Nó tính toán chiều dài chuỗi. 641 00:27:54,165 --> 00:27:55,210 642 00:27:55,210 --> 00:27:59,670 Vì vậy, có bao nhiêu người biết rằng các dây mà bạn đang sử dụng 643 00:27:59,670 --> 00:28:01,265 chỉ là mảng ký tự? 644 00:28:01,265 --> 00:28:03,670 645 00:28:03,670 --> 00:28:04,655 OK, yeah. 646 00:28:04,655 --> 00:28:08,000 Vì vậy, các bạn có thể nghĩ rằng bạn có không mảng được sử dụng trước đây, nhưng bất cứ lúc nào 647 00:28:08,000 --> 00:28:10,740 bạn sử dụng getString trong Thư viện CSView, bạn 648 00:28:10,740 --> 00:28:14,690 thực sự chỉ yêu cầu một mảng các ký tự. 649 00:28:14,690 --> 00:28:17,450 Và chúng tôi đang chăm sóc của tất cả các rằng trong back-end cho bạn. 650 00:28:17,450 --> 00:28:20,184 Nhưng bạn đã được sử dụng mảng kể từ khi bạn bắt đầu. 651 00:28:20,184 --> 00:28:21,350 Bạn chỉ không biết nó được nêu ra. 652 00:28:21,350 --> 00:28:22,420 653 00:28:22,420 --> 00:28:28,390 >> Và bất cứ khi nào bạn có một mảng ký tự hoặc một mảng đó là lưu trữ một chuỗi, 654 00:28:28,390 --> 00:28:32,050 điều cuối cùng luôn luôn là những gì gọi là terminator null, mà 655 00:28:32,050 --> 00:28:33,830 là này ngay tại đây. 656 00:28:33,830 --> 00:28:37,300 Và đó là vào cuối mỗi từ mà bạn đang lưu trữ. 657 00:28:37,300 --> 00:28:41,170 Vì vậy, nếu chúng ta muốn tìm ra chiều dài của một chuỗi, chúng ta có thể nói, 658 00:28:41,170 --> 00:28:45,320 tốt, bạn đã biết, nội dung của khối 659 00:28:45,320 --> 00:28:46,867 không bằng terminator rỗng của chúng tôi. 660 00:28:46,867 --> 00:28:49,450 Điều đó có nghĩa rằng có một số nhân vật đó mà chúng tôi thực sự 661 00:28:49,450 --> 00:28:51,540 quan tâm đến đó là một phần của từ. 662 00:28:51,540 --> 00:28:52,665 Bạn tăng chiều dài của bạn. 663 00:28:52,665 --> 00:28:55,540 Và sau đó khi chúng ta thực sự có thể kết thúc của từ này, nó sẽ chấm dứt 664 00:28:55,540 --> 00:28:58,790 và nó sẽ quay trở lại chiều dài của chúng tôi đối với chúng tôi. 665 00:28:58,790 --> 00:29:00,098 Mmhmm? 666 00:29:00,098 --> 00:29:02,906 >> HỌC SINH: Liệu các không gian được tính là terminator null? 667 00:29:02,906 --> 00:29:04,780 ALLISON: Vì vậy, một không gian không phải là một terminator null. 668 00:29:04,780 --> 00:29:10,590 Vì vậy, nếu bạn có một không gian multiple-- thực sự là một giá trị ASCII cụ thể. 669 00:29:10,590 --> 00:29:11,719 670 00:29:11,719 --> 00:29:13,552 HỌC SINH: là gì chấm than bằng một lần nữa? 671 00:29:13,552 --> 00:29:17,080 ALLISON: Vì vậy, đây là những gì bạn tham khảo. 672 00:29:17,080 --> 00:29:21,220 Nếu bạn đã bao giờ nghe thấy tôi trong giờ làm việc, Tôi luôn luôn gọi nó, giống như, bang bằng. 673 00:29:21,220 --> 00:29:23,520 Vì vậy, không phải là tiếng nổ. 674 00:29:23,520 --> 00:29:25,370 Vì vậy, đây không phải là bằng. 675 00:29:25,370 --> 00:29:28,480 676 00:29:28,480 --> 00:29:32,290 Vì vậy, nếu bạn đang cố gắng xem có cái gì là sai, 677 00:29:32,290 --> 00:29:35,915 bạn biết luôn luôn làm, bang bất cứ điều gì biến là, và nếu nó sai, 678 00:29:35,915 --> 00:29:38,540 nó để đánh giá đúng và bạn có thể làm công cụ mát mẻ với điều đó. 679 00:29:38,540 --> 00:29:39,830 680 00:29:39,830 --> 00:29:40,675 Thêm về điều này sau. 681 00:29:40,675 --> 00:29:42,090 682 00:29:42,090 --> 00:29:42,590 Cool. 683 00:29:42,590 --> 00:29:44,260 Tất cả mọi thứ tốt đẹp đó? 684 00:29:44,260 --> 00:29:44,760 Tuyệt vời. 685 00:29:44,760 --> 00:29:48,045 >> Vì vậy, bây giờ là lúc chàng trai của bạn để làm việc, kể từ khi tôi đã nói. 686 00:29:48,045 --> 00:29:49,220 687 00:29:49,220 --> 00:29:53,200 Vì vậy, tôi muốn bạn chỉ cần tạo một mảng với các số nguyên một, hai và ba, 688 00:29:53,200 --> 00:29:54,660 và sau đó họ đã in ra. 689 00:29:54,660 --> 00:29:58,050 Bạn không cần phải làm, như, chính, blah, blah, blah, bất cứ điều gì. 690 00:29:58,050 --> 00:30:00,840 Tôi chỉ muốn bạn để khởi tạo mảng và sau đó tạo ra 691 00:30:00,840 --> 00:30:04,790 một cho vòng lặp để in chúng out-- hoặc một vòng lặp thời gian, tùy thuộc vào bạn. 692 00:30:04,790 --> 00:30:07,600 >> Tôi sẽ chỉ cung cấp cho bạn một vài phút để làm việc trên đó. 693 00:30:07,600 --> 00:30:09,320 Tôi sẽ nghỉ ngơi giọng nói của tôi. 694 00:30:09,320 --> 00:30:13,290 Nếu bạn có bất kỳ câu hỏi, tôi đang hạnh phúc đi xung quanh và nói chuyện với các bạn. 695 00:30:13,290 --> 00:30:15,290 Hãy nói chuyện với nhau. 696 00:30:15,290 --> 00:30:16,125 Nhận kẹo hơn. 697 00:30:16,125 --> 00:30:17,181 698 00:30:17,181 --> 00:30:18,930 Trong thực tế, tôi sẽ chỉ đi bộ xung quanh với kẹo. 699 00:30:18,930 --> 00:30:19,600 Làm thế nào vậy? 700 00:30:19,600 --> 00:30:22,974 701 00:30:22,974 --> 00:30:23,938 >> Bạn có muốn không? 702 00:30:23,938 --> 00:30:34,703 703 00:30:34,703 --> 00:30:36,675 Bất cứ ai khác trong căn phòng này muốn kẹo? 704 00:30:36,675 --> 00:30:47,030 705 00:30:47,030 --> 00:30:49,206 Bạn cũng có thể mất nhiều hơn một, guys. 706 00:30:49,206 --> 00:30:50,330 Đi một số ít nếu bạn muốn. 707 00:30:50,330 --> 00:30:52,690 708 00:30:52,690 --> 00:30:53,190 Có thể là tốt. 709 00:30:53,190 --> 00:30:54,929 710 00:30:54,929 --> 00:30:55,720 Những người khác có tốt không? 711 00:30:55,720 --> 00:30:57,561 712 00:30:57,561 --> 00:30:58,060 OK. 713 00:30:58,060 --> 00:31:02,750 714 00:31:02,750 --> 00:31:07,290 >> Ngoài ra, tôi sẽ tạo ra một mẫu Google vô danh, 715 00:31:07,290 --> 00:31:09,830 và các bạn chỉ có thể gửi thông tin phản hồi sau mỗi phần 716 00:31:09,830 --> 00:31:14,115 nếu có điều gì bạn muốn cải tiến hoặc một cái gì đó bạn muốn làm. 717 00:31:14,115 --> 00:31:17,135 Nếu tôi là một chút quá peppy cho bạn, tôi có thể cho nó dịu xuống. 718 00:31:17,135 --> 00:31:18,510 719 00:31:18,510 --> 00:31:20,885 Tôi sẽ tạo ra đó và gửi mà ra để tất cả các bạn sau đó. 720 00:31:20,885 --> 00:32:39,420 721 00:32:39,420 --> 00:32:40,020 >> Được rồi. 722 00:32:40,020 --> 00:32:41,050 Vì vậy, hãy bắt đầu nhỏ. 723 00:32:41,050 --> 00:32:42,740 Làm thế nào chúng ta sẽ khởi tạo mảng của chúng tôi? 724 00:32:42,740 --> 00:32:49,690 725 00:32:49,690 --> 00:32:51,670 Kiểu mảng của chúng tôi là gì? 726 00:32:51,670 --> 00:32:52,410 Một int, phải không? 727 00:32:52,410 --> 00:32:54,740 OK, vì vậy những gì bạn muốn để gọi mảng của bạn? 728 00:32:54,740 --> 00:32:57,880 729 00:32:57,880 --> 00:32:59,230 Int mảng, mát mẻ. 730 00:32:59,230 --> 00:33:04,200 Tất cả các bên phải, vì vậy chúng tôi có int mảng int bằng, và chúng ta có gì sau đó? 731 00:33:04,200 --> 00:33:07,009 732 00:33:07,009 --> 00:33:08,259 HỌC SINH: [không nghe được] dấu ngoặc đơn. 733 00:33:08,259 --> 00:33:09,140 ALLISON: Niềng răng. 734 00:33:09,140 --> 00:33:10,330 735 00:33:10,330 --> 00:33:11,775 Và sau đó bên trong dấu ngoặc? 736 00:33:11,775 --> 00:33:14,360 737 00:33:14,360 --> 00:33:16,830 Một dấu phẩy hai dấu phẩy ba. 738 00:33:16,830 --> 00:33:17,330 Cool. 739 00:33:17,330 --> 00:33:18,660 Vì vậy, đó là tất cả đúng. 740 00:33:18,660 --> 00:33:21,480 Vì vậy, bây giờ chúng tôi có của chúng tôi cho vòng lặp. 741 00:33:21,480 --> 00:33:24,180 Vì vậy, trong phần đầu tiên của chúng tôi cho vòng lặp, chúng ta có gì? 742 00:33:24,180 --> 00:33:25,796 743 00:33:25,796 --> 00:33:27,420 >> HỌC SINH: i bằng 0? 744 00:33:27,420 --> 00:33:31,400 >> ALLISON: Vì vậy, int i bằng 0, và sau đó điều kiện của chúng tôi là gì? 745 00:33:31,400 --> 00:33:33,750 746 00:33:33,750 --> 00:33:36,120 Tôi là những gì sẽ được ít hơn? 747 00:33:36,120 --> 00:33:39,510 Chưa đầy ba, và như thế nào chúng tôi chúng tôi cập nhật tôi? 748 00:33:39,510 --> 00:33:41,630 i cộng với cộng với, cập nhật nó một. 749 00:33:41,630 --> 00:33:46,150 Và sau đó chúng ta sẽ có một số printf của số nguyên, 750 00:33:46,150 --> 00:33:49,530 và những gì là cuối cùng phần đó là thực sự 751 00:33:49,530 --> 00:33:51,370 sẽ nói những gì chúng ta cần phải được in ấn? 752 00:33:51,370 --> 00:33:55,610 753 00:33:55,610 --> 00:33:59,120 Nó sẽ là tên của mảng, mà là int mảng, phải không? 754 00:33:59,120 --> 00:34:01,090 Và những gì trong dấu ngoặc đơn của int mảng? 755 00:34:01,090 --> 00:34:02,540 756 00:34:02,540 --> 00:34:03,640 i. 757 00:34:03,640 --> 00:34:06,550 [? Vì vậy, tôi?] Gọi của tôi ví dụ, nhưng có bạn đi. 758 00:34:06,550 --> 00:34:07,939 759 00:34:07,939 --> 00:34:08,480 Không phải là xấu. 760 00:34:08,480 --> 00:34:09,250 Tất cả mọi người tốt? 761 00:34:09,250 --> 00:34:10,220 762 00:34:10,220 --> 00:34:10,719 Cool. 763 00:34:10,719 --> 00:34:12,949 764 00:34:12,949 --> 00:34:14,340 >> Vì vậy, chúng tôi đang thực hiện với các mảng. 765 00:34:14,340 --> 00:34:15,190 Chúc mừng. 766 00:34:15,190 --> 00:34:18,274 Bạn quản lý để lặp qua tất cả the-- có? 767 00:34:18,274 --> 00:34:19,705 >> HỌC SINH: [không nghe được] 768 00:34:19,705 --> 00:34:20,659 >> ALLISON: Có. 769 00:34:20,659 --> 00:34:26,383 770 00:34:26,383 --> 00:34:27,798 >> HỌC SINH: Tôi có một câu hỏi. 771 00:34:27,798 --> 00:34:30,288 Bạn có nghĩa vụ phải thụt vào niềng răng? 772 00:34:30,288 --> 00:34:34,150 >> ALLISON: Vì vậy, niềng răng nên dòng lên với cho vòng lặp, và sau đó tất cả mọi thứ 773 00:34:34,150 --> 00:34:35,699 bên trong dấu ngoặc nên được thụt vào. 774 00:34:35,699 --> 00:34:37,824 >> SINH VIÊN: OK, nên việc cho vòng lặp được thụt vào? 775 00:34:37,824 --> 00:34:41,159 >> ALLISON: Các vòng lặp không cần phải được thụt vào thời điểm này. 776 00:34:41,159 --> 00:34:46,750 Nếu bạn đang ở trong chính, nếu chúng ta thực sự đã có một chức năng chính ở đây, 777 00:34:46,750 --> 00:34:48,929 nó sẽ được thụt vào từ chính. 778 00:34:48,929 --> 00:34:52,590 Nhưng trong trường hợp này, nó là tốt. 779 00:34:52,590 --> 00:34:53,354 Vâng, câu hỏi. 780 00:34:53,354 --> 00:34:55,687 >> HỌC SINH: Bạn cần phải có các dấu ngoặc sau khi ví dụ? 781 00:34:55,687 --> 00:34:59,050 782 00:34:59,050 --> 00:35:01,260 >> ALLISON: Vâng, nếu bạn khởi tạo nó theo cách đó. 783 00:35:01,260 --> 00:35:03,430 784 00:35:03,430 --> 00:35:06,860 Vì vậy, hãy nhớ, đây là lần thứ hai cách khởi tạo một mảng nơi 785 00:35:06,860 --> 00:35:10,680 chúng tôi có niềng răng và sau đó thực tế của chúng tôi dữ liệu cách nhau bằng dấu phẩy bên trong. 786 00:35:10,680 --> 00:35:14,700 787 00:35:14,700 --> 00:35:17,281 >> HỌC SINH: Tôi nghĩ là có ngoặc ví dụ đó. 788 00:35:17,281 --> 00:35:19,010 >> ALLISON: Không, họ đang niềng răng. 789 00:35:19,010 --> 00:35:20,039 Họ đang niềng răng. 790 00:35:20,039 --> 00:35:22,330 Nếu bạn khởi tạo nó rằng cách thứ hai, đó là niềng răng. 791 00:35:22,330 --> 00:35:28,780 Nếu chúng ta nói rằng, nếu int example-- chúng tôi chỉ muốn có một mảng trống cho ints, 792 00:35:28,780 --> 00:35:32,270 nó sẽ là int ví dụ khung ba. 793 00:35:32,270 --> 00:35:34,670 Các dấu ngoặc đại diện cho kích thước. 794 00:35:34,670 --> 00:35:36,720 Khi bạn có niềng răng, đó là dữ liệu thực tế 795 00:35:36,720 --> 00:35:39,244 bạn đang đặt vào nó theo cách này. 796 00:35:39,244 --> 00:35:40,535 Chúng ta có thể di chuyển trở lại rất nhanh. 797 00:35:40,535 --> 00:35:42,370 798 00:35:42,370 --> 00:35:48,010 >> Vì vậy, trong một này, đây chỉ là của chúng tôi mảng ban đầu, khởi tạo. 799 00:35:48,010 --> 00:35:51,640 Và ở đây, chúng tôi cá nhân giao điểm với họ, 800 00:35:51,640 --> 00:35:56,730 vì vậy điều này đại diện cho các chỉ số của chúng tôi mảng, đó là lý do tại sao chúng tôi có dấu ngoặc đơn. 801 00:35:56,730 --> 00:36:01,630 Nhưng ở đây, nếu bạn thông báo, chúng tôi đã trái khung của chúng tôi mà không có một kích thước, 802 00:36:01,630 --> 00:36:05,969 và chúng tôi khởi tạo nó với dữ liệu thực tế tất cả-trong-một với niềng răng. 803 00:36:05,969 --> 00:36:08,260 HỌC SINH: Vậy tại sao chúng ta không có ngoặc trong ví dụ này? 804 00:36:08,260 --> 00:36:11,030 ALLISON: Vì vậy, trong đó một phần? 805 00:36:11,030 --> 00:36:14,645 HỌC SINH: Sẽ không phải chúng tôi nói, khung int ví dụ 806 00:36:14,645 --> 00:36:19,710 bằng niềng răng [không nghe được] ngoặc ví dụ. 807 00:36:19,710 --> 00:36:20,900 >> ALLISON: Oh, xin lỗi. 808 00:36:20,900 --> 00:36:21,560 Bạn nói đúng. 809 00:36:21,560 --> 00:36:22,690 Chúng tôi có dấu ngoặc đó. 810 00:36:22,690 --> 00:36:23,486 Xin lỗi guys, xấu của tôi. 811 00:36:23,486 --> 00:36:25,150 812 00:36:25,150 --> 00:36:27,560 Có, bạn nên có ngoặc đơn sau ví dụ. 813 00:36:27,560 --> 00:36:28,850 Bạn hoàn toàn đúng. 814 00:36:28,850 --> 00:36:29,750 >> HỌC SINH: [không nghe được] không làm việc đó. 815 00:36:29,750 --> 00:36:31,270 >> ALLISON: Không, bạn phải có dấu ngoặc đơn, bởi vì nếu không nó 816 00:36:31,270 --> 00:36:32,810 sẽ không khai báo một mảng. 817 00:36:32,810 --> 00:36:33,685 HỌC SINH: [không nghe được]. 818 00:36:33,685 --> 00:36:34,200 Xin lỗi về điều đó. 819 00:36:34,200 --> 00:36:36,200 >> ALLISON: Xin lỗi, bạn cần ngoặc đơn sau ví dụ. 820 00:36:36,200 --> 00:36:36,620 821 00:36:36,620 --> 00:36:37,120 Lỗi đánh máy. 822 00:36:37,120 --> 00:36:40,650 823 00:36:40,650 --> 00:36:43,160 Good catch, sao vàng cho bạn. 824 00:36:43,160 --> 00:36:47,730 Ngoài ra, nếu bạn đang hỏi một câu hỏi, nếu các bạn sẽ chỉ cho tôi biết tên của bạn, 825 00:36:47,730 --> 00:36:48,570 Tôi thích điều đó. 826 00:36:48,570 --> 00:36:50,630 Tôi rất muốn có thể biết tất cả tên của bạn. 827 00:36:50,630 --> 00:36:53,187 Tôi sẽ không để lạnh gọi cho bạn, tôi thực sự 828 00:36:53,187 --> 00:36:54,520 không chỉ muốn biết tên của bạn. 829 00:36:54,520 --> 00:36:57,530 Vì vậy, xin vui lòng thực sự cho tôi biết tên của bạn. 830 00:36:57,530 --> 00:36:58,426 >> Leah: Leah. 831 00:36:58,426 --> 00:36:59,340 >> ALLISON: Leah. 832 00:36:59,340 --> 00:37:03,960 OK, vì vậy functions-- Tôi biết trong ngắn họ nói về điều này trong bài giảng. 833 00:37:03,960 --> 00:37:07,590 Vì vậy, chức năng là loại chỉ như những điều cắn-kích thước nhỏ 834 00:37:07,590 --> 00:37:11,525 nơi bạn vượt qua trong đầu vào, một cái gì đó kỳ diệu sẽ xảy ra, và bạn sẽ có được kết quả đầu ra. 835 00:37:11,525 --> 00:37:12,680 836 00:37:12,680 --> 00:37:13,180 Cool. 837 00:37:13,180 --> 00:37:15,013 Vì vậy, bạn thực sự sử dụng một rất nhiều trong số này đã. 838 00:37:15,013 --> 00:37:15,970 839 00:37:15,970 --> 00:37:18,840 Nhận int, nhận được chuỗi, in f. 840 00:37:18,840 --> 00:37:21,790 Đây là tất cả các chức năng nơi bạn chỉ cần gọi cho họ, 841 00:37:21,790 --> 00:37:24,370 có rất nhiều điều kỳ diệu đang diễn ra trong nền 842 00:37:24,370 --> 00:37:27,390 bạn không nhất thiết phải nhìn thấy, và bạn nhận ra những gì bạn muốn. 843 00:37:27,390 --> 00:37:30,280 Hoặc ít nhất bạn có được những gì bạn hy vọng bạn muốn. 844 00:37:30,280 --> 00:37:31,920 845 00:37:31,920 --> 00:37:35,620 >> Và về cơ bản các điểm chức năng, và một trong những chủ đề chính của CS, 846 00:37:35,620 --> 00:37:38,700 là để phá vỡ mã của bạn vào phần quản lý. 847 00:37:38,700 --> 00:37:41,520 Khi bạn bắt đầu viết các chương trình này thực sự lâu dài, 848 00:37:41,520 --> 00:37:44,970 hoặc trong Scratch khi bạn có ý tưởng lớn này cho một trò chơi, 849 00:37:44,970 --> 00:37:48,070 bạn cần để có thể phá vỡ nó xuống, như thế, OK, làm thế nào để bắt đầu? 850 00:37:48,070 --> 00:37:50,470 Các mảnh nhỏ mà tôi cần là gì? 851 00:37:50,470 --> 00:37:53,320 Oh, tôi cần phải yêu cầu người sử dụng cho một cái gì đó. 852 00:37:53,320 --> 00:37:54,830 Bây giờ tôi cần in một cái gì đó. 853 00:37:54,830 --> 00:37:56,590 Oh, tôi cần phải tính toán giá trị này. 854 00:37:56,590 --> 00:38:00,050 >> Và học tập như thế nào để phá vỡ của bạn mã số và các vấn đề lớn bạn 855 00:38:00,050 --> 00:38:02,740 có thành những miếng nhỏ và tạo ra các chức năng 856 00:38:02,740 --> 00:38:05,330 thực sự là một trong những nền tảng lớn của CS. 857 00:38:05,330 --> 00:38:06,440 858 00:38:06,440 --> 00:38:11,740 Vì vậy, bạn có thể nghĩ đến một chức năng giống như giống như một hộp đen, hộp đen huyền diệu, 859 00:38:11,740 --> 00:38:15,030 mà bạn đặt mọi thứ vào và bạn nhận được một số đầu ra. 860 00:38:15,030 --> 00:38:16,290 861 00:38:16,290 --> 00:38:19,460 Và phần còn lại của chương trình không cần thiết phải biết 862 00:38:19,460 --> 00:38:21,150 những gì đang xảy ra bên trong là hộp đen. 863 00:38:21,150 --> 00:38:24,190 Tất cả nó quan tâm là những gì đi vào và những gì đi ra. 864 00:38:24,190 --> 00:38:26,230 865 00:38:26,230 --> 00:38:26,730 Cool. 866 00:38:26,730 --> 00:38:27,820 >> Vậy tại sao chức năng? 867 00:38:27,820 --> 00:38:33,240 Organization-- như tôi đã nói, khi bạn đối phó với cơ sở mã rất lớn, 868 00:38:33,240 --> 00:38:37,357 làm thế nào bạn tổ chức mã của bạn sẽ được dễ dàng hơn nhiều nếu bạn sử dụng chức năng này. 869 00:38:37,357 --> 00:38:39,190 Bởi vì bạn sẽ có thể được, như thế, OK này, 870 00:38:39,190 --> 00:38:41,849 là những gì chức năng này không và đây là những gì người khác làm. 871 00:38:41,849 --> 00:38:43,890 Và bạn có thể dễ dàng nhìn thấy làm thế nào tất cả họ đều phù hợp với nhau. 872 00:38:43,890 --> 00:38:45,590 873 00:38:45,590 --> 00:38:48,210 Vì vậy, phá vỡ nó ra thành tất cả các subparts quản lý được. 874 00:38:48,210 --> 00:38:51,860 >> Vì vậy, simplification-- Tôi chắc rằng các bạn tất cả thấy điều này, như tôi đã nói, với Scratch. 875 00:38:51,860 --> 00:38:53,230 876 00:38:53,230 --> 00:38:56,790 Bạn có ý tưởng lớn này, và bạn giống như, làm thế nào tất cả các công việc này? 877 00:38:56,790 --> 00:38:59,710 Nhưng nếu bạn tiếp cận nó từng phần, bạn nói, OK, 878 00:38:59,710 --> 00:39:03,650 làm thế nào để làm cho một sprite trôi nổi trên màn hình? 879 00:39:03,650 --> 00:39:04,805 Đó là một chút dễ dàng hơn. 880 00:39:04,805 --> 00:39:06,000 881 00:39:06,000 --> 00:39:09,590 Vì vậy, sử dụng tốt các chức năng làm cho mã của bạn dễ dàng hơn để đọc. 882 00:39:09,590 --> 00:39:13,800 Nó làm cho nó dễ dàng hơn để gỡ lỗi đó như bạn nhận được vào bộ vấn đề sau này của bạn, 883 00:39:13,800 --> 00:39:15,900 bạn sẽ thực sự muốn có thể làm được. 884 00:39:15,900 --> 00:39:17,900 Và họ cũng dễ dàng hơn để thiết kế và thực hiện. 885 00:39:17,900 --> 00:39:21,100 Bạn có thể mã lên một nhỏ hoạt động tương đối nhanh chóng 886 00:39:21,100 --> 00:39:25,260 và chắc chắn rằng nó hoạt động so với cố gắng để tạo ra chương trình này toàn bộ dài 887 00:39:25,260 --> 00:39:28,960 và sau đó loại đi qua và xem những gì làm việc và những gì không. 888 00:39:28,960 --> 00:39:30,300 >> Và sau đó có thể dùng lại. 889 00:39:30,300 --> 00:39:33,380 Vì vậy, chức năng chỉ cần để được viết một lần, 890 00:39:33,380 --> 00:39:35,586 và sau đó bạn có thể sử dụng chúng càng nhiều lần càng tốt. 891 00:39:35,586 --> 00:39:37,210 Vì vậy, nó, như, sinh thái thân thiện trong một cảm giác. 892 00:39:37,210 --> 00:39:39,660 893 00:39:39,660 --> 00:39:42,070 Nếu bạn đã có những thứ như in f, nơi bạn 894 00:39:42,070 --> 00:39:47,420 đã phải viết ra sự kỳ diệu mà đi đằng sau in f mỗi lần duy nhất 895 00:39:47,420 --> 00:39:51,040 bạn muốn in một cái gì đó, bạn sẽ là khá ốm và mệt mỏi của nó 896 00:39:51,040 --> 00:39:51,650 bởi cuối. 897 00:39:51,650 --> 00:39:52,660 898 00:39:52,660 --> 00:39:55,292 >> Một trong những điều mà bạn sẽ thấy học trong các lớp học sau CS, 899 00:39:55,292 --> 00:39:57,000 hoặc một trong những tốt nhất mảnh lời khuyên tôi nhận được 900 00:39:57,000 --> 00:40:00,870 là, nếu bạn đang sao chép và dán mã, thì có lẽ nó phải là một chức năng. 901 00:40:00,870 --> 00:40:01,880 902 00:40:01,880 --> 00:40:06,007 Nếu bạn có chính xác cùng dòng suốt mã của bạn, 903 00:40:06,007 --> 00:40:08,090 nếu bạn yếu tố chúng ra, mã của bạn có lẽ sẽ 904 00:40:08,090 --> 00:40:11,860 được, như thế, ngắn hơn năm lần và được nhiều hơn nữa dễ đọc. 905 00:40:11,860 --> 00:40:15,230 Và thay vì cố gắng để khắc phục sự cố tất cả những nơi khác nhau, nơi mọi thứ 906 00:40:15,230 --> 00:40:18,021 có thể đi sai, bạn có một chức năng bạn nhận được để khắc phục sự cố. 907 00:40:18,021 --> 00:40:19,230 908 00:40:19,230 --> 00:40:21,890 Và tôi hứa, rất nhiều này có vẻ loại trừu tượng bây giờ, 909 00:40:21,890 --> 00:40:24,620 nhưng khi bạn nhận được vào sau và sau đó vấn đề đặt ra, 910 00:40:24,620 --> 00:40:28,950 nó sẽ có ý nghĩa hơn rất nhiều và thực sự được lái xe về nhà. 911 00:40:28,950 --> 00:40:31,775 Có bất kỳ câu hỏi về chức năng cho đến nay? 912 00:40:31,775 --> 00:40:32,650 Tại sao chúng ta đang sử dụng chúng? 913 00:40:32,650 --> 00:40:34,775 Tôi biết chúng tôi đã không nhận vào gritty nitty nào. 914 00:40:34,775 --> 00:40:40,610 Vì vậy, việc xác định một function-- giống như mảng, chúng ta cần một số loại of-- này 915 00:40:40,610 --> 00:40:41,860 chỉ là đầu ra nói chung. 916 00:40:41,860 --> 00:40:45,110 Vì vậy, đây là một chức năng mà chỉ cần đi để cube một số đầu vào. 917 00:40:45,110 --> 00:40:50,120 Và trên trang tiếp theo, trên thực tế, chúng tôi có tất cả những điều nhỏ tuyệt vời ở đây. 918 00:40:50,120 --> 00:40:52,420 Vì vậy, tất cả mọi người có thể đọc rằng, vì tò mò? 919 00:40:52,420 --> 00:40:55,050 Tôi biết các màu tím và màu đen có thể là một chút khó khăn. 920 00:40:55,050 --> 00:41:00,730 >> Nhưng điều lớn để know-- để là người đầu tiên một trong những quyền ở đây là kiểu trả về của chúng tôi. 921 00:41:00,730 --> 00:41:05,270 Vì vậy, đây là nói về đầu ra của chức năng này khi, trong trường hợp này, 922 00:41:05,270 --> 00:41:08,990 chúng tôi đưa vào một số số, những gì chúng tôi nhận được là số giống tiêu. 923 00:41:08,990 --> 00:41:11,090 Vì vậy, nó phải là một int trong trường hợp này. 924 00:41:11,090 --> 00:41:14,055 Có lẽ nó sẽ là một đôi hoặc cái gì khác sau đó, nhưng trong trường hợp này, 925 00:41:14,055 --> 00:41:14,555 nó là một int. 926 00:41:14,555 --> 00:41:15,620 927 00:41:15,620 --> 00:41:19,440 >> Với c, bạn luôn cần một kiểu trả về. 928 00:41:19,440 --> 00:41:20,267 Nó sẽ là một int. 929 00:41:20,267 --> 00:41:20,975 Nó sẽ là một phao. 930 00:41:20,975 --> 00:41:22,180 Nó sẽ là một đôi. 931 00:41:22,180 --> 00:41:25,370 Nhưng bạn phải xác định những gì chức năng này sẽ trở lại. 932 00:41:25,370 --> 00:41:26,480 933 00:41:26,480 --> 00:41:29,170 Nếu không nó sẽ la mắng bạn, và nó sẽ không biên dịch. 934 00:41:29,170 --> 00:41:30,462 Bạn sẽ buồn, và tôi sẽ buồn. 935 00:41:30,462 --> 00:41:31,420 Và nó chỉ là không tốt. 936 00:41:31,420 --> 00:41:31,940 OK. 937 00:41:31,940 --> 00:41:34,290 >> Và sau đó chúng tôi có tên chức năng của chúng tôi. 938 00:41:34,290 --> 00:41:38,440 Và như bạn có thể thấy ở đây, với c có mô hình rất phù hợp này. 939 00:41:38,440 --> 00:41:42,630 Loại của bạn là gì, tên là gì, và sau đó một số điều khác ở cuối. 940 00:41:42,630 --> 00:41:45,550 Vì vậy, chúng tôi có kiểu trả về của chúng tôi, Tên chức năng của chúng tôi, và sau đó 941 00:41:45,550 --> 00:41:49,320 chúng tôi có tiêu đề của chúng tôi với danh sách tham số của chúng tôi. 942 00:41:49,320 --> 00:41:52,080 >> Vì vậy, danh sách tham số là, là những gì chức năng này sẽ mất trong? 943 00:41:52,080 --> 00:41:56,360 Một danh sách tham số chỉ đơn giản là một là từ đồng nghĩa với, đầu vào của chúng tôi là gì? 944 00:41:56,360 --> 00:42:00,230 Và trong cùng một cách mà chúng tôi phải xác định chức năng của chúng tôi 945 00:42:00,230 --> 00:42:03,210 và cung cấp cho nó trở lại gõ, mỗi đầu vào của chúng tôi 946 00:42:03,210 --> 00:42:05,350 cần phải có một loại liên kết với nó. 947 00:42:05,350 --> 00:42:08,850 Vì vậy, chúng tôi biết những gì chức năng của chúng tôi thực sự có thể làm việc với. 948 00:42:08,850 --> 00:42:11,290 >> Vì vậy, trong trường hợp này, chúng tôi có một số int đầu vào. 949 00:42:11,290 --> 00:42:14,660 Vì vậy, một lần nữa, nó sẽ được loại và những gì bạn đang gọi nó. 950 00:42:14,660 --> 00:42:16,500 951 00:42:16,500 --> 00:42:19,040 Và sau đó, như bạn thấy ở đây, chúng tôi có cơ thể của chúng tôi. 952 00:42:19,040 --> 00:42:23,600 Vì vậy, chúng tôi có một số int đầu ra, mà chỉ là lần đầu vào của chúng tôi tự 953 00:42:23,600 --> 00:42:25,810 bản thân lần, mà chỉ cần khối nó. 954 00:42:25,810 --> 00:42:27,610 Và sau đó chúng tôi trở về đầu ra. 955 00:42:27,610 --> 00:42:32,140 >> Vì vậy, như bạn thấy ở đây, chúng ta có một int lần một int lần một int, 956 00:42:32,140 --> 00:42:35,420 do đó, nó trả về một int, mà đã được tuyên bố đó. 957 00:42:35,420 --> 00:42:38,240 Vì vậy, tất cả mọi thứ là gắn kết. 958 00:42:38,240 --> 00:42:39,210 Tất cả mọi thứ là hạnh phúc. 959 00:42:39,210 --> 00:42:40,250 Chức năng của bạn sẽ chạy. 960 00:42:40,250 --> 00:42:41,192 961 00:42:41,192 --> 00:42:42,650 Và đây chỉ là điều nói chung. 962 00:42:42,650 --> 00:42:46,750 Vì vậy, luôn luôn có loại trả lại, tên, và danh sách tham số của bạn. 963 00:42:46,750 --> 00:42:48,830 Mỗi điều trong của bạn danh sách tham số, hoặc đầu vào, 964 00:42:48,830 --> 00:42:51,410 cần phải có một loại liên kết với nó. 965 00:42:51,410 --> 00:42:54,210 Và sau đó bạn có của bạn cơ thể ở đây với bất cứ điều gì 966 00:42:54,210 --> 00:42:55,590 bạn muốn làm gì với đầu vào của bạn. 967 00:42:55,590 --> 00:42:57,390 968 00:42:57,390 --> 00:43:00,410 >> Và sau đó rõ ràng là bạn muốn trở lại một cái gì đó. 969 00:43:00,410 --> 00:43:02,630 Đôi khi chức năng này sẽ chỉ trả lại. 970 00:43:02,630 --> 00:43:06,090 Họ không thực sự trở lại một cái gì đó để bạn có thể sử dụng. 971 00:43:06,090 --> 00:43:08,660 Nhưng bạn phải quay trở lại trong một số cách. 972 00:43:08,660 --> 00:43:12,900 Và khi bạn đang thực hiện chức năng của riêng bạn, 973 00:43:12,900 --> 00:43:15,430 chúng ta có thể nhận được vào sâu hơn một chút. 974 00:43:15,430 --> 00:43:18,880 Cá nhân, nếu bạn muốn, có rất nhiều điều khác nhau mà bạn có thể làm ở đó. 975 00:43:18,880 --> 00:43:21,350 976 00:43:21,350 --> 00:43:22,140 Tất cả mọi người tốt? 977 00:43:22,140 --> 00:43:25,900 Bất cứ điều gì trong danh sách này mà bạn muốn tôi đi qua, mà bạn không hiểu? 978 00:43:25,900 --> 00:43:27,204 979 00:43:27,204 --> 00:43:28,120 Tất cả mọi người là tốt không? 980 00:43:28,120 --> 00:43:29,071 981 00:43:29,071 --> 00:43:29,570 Cool. 982 00:43:29,570 --> 00:43:31,350 983 00:43:31,350 --> 00:43:32,120 Tuyệt vời. 984 00:43:32,120 --> 00:43:34,700 >> OK, vì vậy chúng tôi đang đặt tất cả cùng nhau này ngay bây giờ. 985 00:43:34,700 --> 00:43:35,720 986 00:43:35,720 --> 00:43:41,201 Vì vậy, chúng tôi có một số đầu vào int khối lập phương, vì vậy đây là một chương trình đầy đủ ở đây. 987 00:43:41,201 --> 00:43:42,950 Cho đến bây giờ, tôi đã loại được cho bạn 988 00:43:42,950 --> 00:43:45,699 kẻ đoạn mà có thể được đi trong một chương trình. 989 00:43:45,699 --> 00:43:47,240 Chúng tôi đã chỉ được nhìn vào chức năng. 990 00:43:47,240 --> 00:43:48,448 Nhưng đây là toàn bộ chương trình. 991 00:43:48,448 --> 00:43:49,400 992 00:43:49,400 --> 00:43:53,690 Vì vậy, có bao nhiêu bạn nhớ nguyên mẫu từ từ bài giảng? 993 00:43:53,690 --> 00:43:54,750 994 00:43:54,750 --> 00:43:55,300 Cool. 995 00:43:55,300 --> 00:43:55,890 Chúng tôi đã có một. 996 00:43:55,890 --> 00:43:57,160 997 00:43:57,160 --> 00:43:58,110 Tên của bạn là gì? 998 00:43:58,110 --> 00:43:58,850 >> Steph: Steph. 999 00:43:58,850 --> 00:43:59,475 >> ALLISON: Steph? 1000 00:43:59,475 --> 00:44:01,030 OK, tuyệt vời. 1001 00:44:01,030 --> 00:44:03,310 Vì vậy, bạn có nhớ những gì một nguyên mẫu là gì? 1002 00:44:03,310 --> 00:44:04,651 1003 00:44:04,651 --> 00:44:10,230 >> HỌC SINH: Bạn nói [không nghe được] trước khi bạn thực sự đối phó với nó. 1004 00:44:10,230 --> 00:44:11,700 >> ALLISON: Bạn có nhớ tại sao? 1005 00:44:11,700 --> 00:44:13,158 >> HỌC SINH: số 1006 00:44:13,158 --> 00:44:14,620 >> ALLISON: OK. 1007 00:44:14,620 --> 00:44:16,090 Sao vàng. 1008 00:44:16,090 --> 00:44:19,470 Vì vậy, có, một mẫu thử nghiệm chúng tôi có trước đó, bởi vì nếu không, 1009 00:44:19,470 --> 00:44:21,260 trình biên dịch của chúng tôi sẽ hét vào mặt chúng tôi. 1010 00:44:21,260 --> 00:44:24,294 Nó sẽ nói, OK, chức năng khối này là gì? 1011 00:44:24,294 --> 00:44:26,460 Giống như, bạn có nghĩa là có nói với tôi không có gì về việc này. 1012 00:44:26,460 --> 00:44:28,110 Nó giống như khi bạn bước vào một lớp học, 1013 00:44:28,110 --> 00:44:29,320 và một người nào đó giống như, có một bài kiểm tra ngày hôm nay. 1014 00:44:29,320 --> 00:44:31,380 Và bạn thích, bạn không bao giờ nói với tôi về việc này. 1015 00:44:31,380 --> 00:44:32,930 Tôi không hài lòng với chúng tôi. 1016 00:44:32,930 --> 00:44:34,300 1017 00:44:34,300 --> 00:44:37,020 Nguyên mẫu là cơ bản như giáo trình của bạn nói, hãy nhìn. 1018 00:44:37,020 --> 00:44:37,900 Người đứng đầu lên. 1019 00:44:37,900 --> 00:44:39,570 Có sẽ là một bài kiểm tra vào ngày này. 1020 00:44:39,570 --> 00:44:41,420 Đừng lăn tăn khi bạn nhận được nó. 1021 00:44:41,420 --> 00:44:42,690 Bạn sẽ được tốt. 1022 00:44:42,690 --> 00:44:48,170 >> Vì vậy, tất cả các mẫu thử nghiệm là nói chính, tôi sẽ sử dụng chức năng này. 1023 00:44:48,170 --> 00:44:51,010 Tôi hứa tôi xác định nó sau này. 1024 00:44:51,010 --> 00:44:52,260 Đừng lăn tăn với tôi. 1025 00:44:52,260 --> 00:44:54,750 Chỉ cần biên dịch và làm những gì tôi nói với bạn. 1026 00:44:54,750 --> 00:44:58,880 Vì vậy, chúng tôi có các mẫu thử nghiệm có chỉ để làm cho trình biên dịch của chúng tôi hạnh phúc. 1027 00:44:58,880 --> 00:45:04,360 Và đó là cơ bản một lời hứa bạn đã xác định chức năng này sau đó 1028 00:45:04,360 --> 00:45:07,960 và rằng bạn không chỉ cần gọi điều ngẫu nhiên này mà nó 1029 00:45:07,960 --> 00:45:10,070 không biết những gì bạn đang sẽ được làm. 1030 00:45:10,070 --> 00:45:11,910 >> Vì vậy, trong trường hợp này, chúng tôi có chính ở đây. 1031 00:45:11,910 --> 00:45:14,660 Chúng tôi khởi tạo một số nguyên x. 1032 00:45:14,660 --> 00:45:15,620 Đó là hai. 1033 00:45:15,620 --> 00:45:17,510 Chúng tôi sẽ in ra những gì là x. 1034 00:45:17,510 --> 00:45:18,800 Chúng tôi sẽ cube x. 1035 00:45:18,800 --> 00:45:21,520 Như bạn thấy, chúng tôi có của chúng tôi khai báo hàm 1036 00:45:21,520 --> 00:45:23,770 xuống đây mà chúng ta đã nói ở trên. 1037 00:45:23,770 --> 00:45:28,260 Nó sẽ cube x, và sau đó, nếu chúng ta nhớ, chức năng lập phương thực 1038 00:45:28,260 --> 00:45:31,340 trả về một số nguyên chúng ta, được lưu trữ 1039 00:45:31,340 --> 00:45:35,860 trong x một lần nữa để chúng tôi có thể in ra tám, hoặc khối x ngay bây giờ. 1040 00:45:35,860 --> 00:45:37,170 1041 00:45:37,170 --> 00:45:38,920 Điều đó có ý nghĩa với tất cả mọi người? 1042 00:45:38,920 --> 00:45:40,360 Chúng tôi có tốt không? 1043 00:45:40,360 --> 00:45:41,160 Được rồi. 1044 00:45:41,160 --> 00:45:41,660 Tuyệt vời. 1045 00:45:41,660 --> 00:45:45,540 1046 00:45:45,540 --> 00:45:46,840 >> Được rồi. 1047 00:45:46,840 --> 00:45:50,879 Bao nhiêu trong số các bạn nhớ này vì vậy đây 1048 00:45:50,879 --> 00:45:52,670 là cơ bản chỉ của bạn stack và heap của bạn, 1049 00:45:52,670 --> 00:45:56,510 chỉ là một hình dung cách bộ nhớ được lưu trữ ở đây. 1050 00:45:56,510 --> 00:45:58,200 1051 00:45:58,200 --> 00:46:01,400 Vì vậy, chúng tôi chỉ muốn làm cho chắc chắn rằng bạn hiểu 1052 00:46:01,400 --> 00:46:03,680 cách này được đại diện trong bộ nhớ. 1053 00:46:03,680 --> 00:46:07,670 Nếu bạn theo học các lớp như CS61 và các công cụ sau, 1054 00:46:07,670 --> 00:46:10,570 bạn có thể tìm hiểu điều này hơn rất nhiều trong chiều sâu, và nó thực sự mát mẻ. 1055 00:46:10,570 --> 00:46:11,730 Tôi khuyên bạn nên nó. 1056 00:46:11,730 --> 00:46:12,740 1057 00:46:12,740 --> 00:46:14,720 Nhưng bây giờ, tôi sẽ cung cấp bạn cái nhìn tổng quan 1058 00:46:14,720 --> 00:46:16,950 vì vậy bạn không cần phải biết nitty gritty. 1059 00:46:16,950 --> 00:46:20,820 >> Vì vậy, đầu chỉ là một đoạn văn bản mà chứa các số không và những người thực tế, 1060 00:46:20,820 --> 00:46:23,740 nhị phân cho điều đó. 1061 00:46:23,740 --> 00:46:27,510 Và điều này được sử dụng để lưu trữ biến toàn cầu nếu bạn có bất kỳ. 1062 00:46:27,510 --> 00:46:28,870 1063 00:46:28,870 --> 00:46:32,240 Khi bạn di chuyển xuống, chúng tôi có, như bạn thấy ở đây, 1064 00:46:32,240 --> 00:46:34,670 dữ liệu khởi tạo, chưa được khởi tạo dữ liệu, và sau đó heap. 1065 00:46:34,670 --> 00:46:35,800 1066 00:46:35,800 --> 00:46:38,584 >> Vì vậy, chúng tôi không thực sự nói chuyện về đống ngay bây giờ. 1067 00:46:38,584 --> 00:46:39,500 Chúng tôi sẽ nhận được nó sau này. 1068 00:46:39,500 --> 00:46:40,762 1069 00:46:40,762 --> 00:46:42,970 Để bây giờ, tôi chỉ cần đi để vẫy tay của tôi và được như thế, 1070 00:46:42,970 --> 00:46:44,553 bạn không cần phải biết về việc này ngay bây giờ. 1071 00:46:44,553 --> 00:46:46,100 1072 00:46:46,100 --> 00:46:49,060 Nhưng chúng tôi sẽ nói một chút chút về stack. 1073 00:46:49,060 --> 00:46:53,050 Vì vậy, các ngăn xếp là where-- chúng tôi có zoom trong. 1074 00:46:53,050 --> 00:46:58,590 Đây thực sự là cách chương trình chúng ta chỉ nhìn xảy ra trong bộ nhớ. 1075 00:46:58,590 --> 00:47:01,630 >> Vì vậy, những gì xảy ra là, mỗi thời gian chúng ta gọi là một chức năng, 1076 00:47:01,630 --> 00:47:04,180 chúng tôi có được những gì được gọi là một chồng khung hình, đó là một trong những. 1077 00:47:04,180 --> 00:47:05,870 Vì vậy, các thông số chính. 1078 00:47:05,870 --> 00:47:07,944 Vì vậy, đó là những điều chúng ta đi vào chính. 1079 00:47:07,944 --> 00:47:11,110 Vì vậy, họ ngay tại đây ở phía dưới, bởi vì đó là điều đầu tiên chúng ta gọi. 1080 00:47:11,110 --> 00:47:13,401 Và sau đó chúng tôi nhận được của chính người dân địa phương, và khi chúng ta nói rằng, 1081 00:47:13,401 --> 00:47:15,970 chúng tôi có nghĩa là các biến địa phương được lưu trữ trong chính. 1082 00:47:15,970 --> 00:47:19,950 1083 00:47:19,950 --> 00:47:23,620 Vì vậy, người dân địa phương ở đây sẽ là, như, x bằng hai trong trường hợp này. 1084 00:47:23,620 --> 00:47:26,350 Bởi vì đó là địa phương để chính. 1085 00:47:26,350 --> 00:47:29,745 Mọi người nhớ phạm vi, đi qua mà trong bài giảng? 1086 00:47:29,745 --> 00:47:31,517 1087 00:47:31,517 --> 00:47:32,017 OK. 1088 00:47:32,017 --> 00:47:36,110 Vì vậy, chỉ cần các biến được khởi tạo trong vòng chính. 1089 00:47:36,110 --> 00:47:38,550 Vì vậy, đó là lý do tại sao chúng tôi có chính [? giọng hát. ?] 1090 00:47:38,550 --> 00:47:40,390 >> Và sau đó trong chính, chúng ta gọi là khối lập phương. 1091 00:47:40,390 --> 00:47:41,000 Phải không? 1092 00:47:41,000 --> 00:47:44,510 Vì vậy, chúng tôi nhận được một khung khác với các thông số của khối lập phương. 1093 00:47:44,510 --> 00:47:47,050 Vì vậy, trong trường hợp này, khối lập phương của các thông số hiện nay 1094 00:47:47,050 --> 00:47:50,800 các x mà chúng ta thông qua tại, hai mà chúng tôi đi qua trong. 1095 00:47:50,800 --> 00:47:55,320 Và sau đó người dân địa phương lập phương, mà là nơi cubing thực tế xảy ra. 1096 00:47:55,320 --> 00:47:56,450 Và sau đó nó trở về. 1097 00:47:56,450 --> 00:48:02,120 >> Vì vậy, những gì xảy ra là như khối lập phương thực sự làm những gì nó phải làm, nó sẽ trả về. 1098 00:48:02,120 --> 00:48:07,020 Khi nó trở về, khung này lại, và trở lại của nó xuống chính. 1099 00:48:07,020 --> 00:48:09,160 Và sau đó trong chính, chúng tôi thực sự có thể in nó. 1100 00:48:09,160 --> 00:48:10,840 1101 00:48:10,840 --> 00:48:14,500 Vì vậy, khi bạn đang trở về một cái gì đó, khi chức năng của bạn trở lại, 1102 00:48:14,500 --> 00:48:19,900 nó giống như đi trên những giá trị để khung bên dưới và sau đó rời khỏi. 1103 00:48:19,900 --> 00:48:22,200 Và điều phải thực hiện theo thứ tự. 1104 00:48:22,200 --> 00:48:25,550 >> Và khi bạn nhận được các chương trình lớn hơn, chúng ta có thể làm mát hơn và phức tạp hơn 1105 00:48:25,550 --> 00:48:26,470 sơ đồ. 1106 00:48:26,470 --> 00:48:29,070 Nhưng hiện nay, đây là chỉ là một cái nhìn tổng quan 1107 00:48:29,070 --> 00:48:31,110 vì vậy bạn phải loại một sự hiểu biết về những gì 1108 00:48:31,110 --> 00:48:35,160 xảy ra khi bạn đang gọi điện thoại một chức năng và làm thế nào mà thực sự trông giống trong bộ nhớ. 1109 00:48:35,160 --> 00:48:37,230 1110 00:48:37,230 --> 00:48:37,770 Mát mẻ? 1111 00:48:37,770 --> 00:48:38,353 Tất cả mọi người tốt? 1112 00:48:38,353 --> 00:48:39,920 1113 00:48:39,920 --> 00:48:40,420 Tuyệt vời. 1114 00:48:40,420 --> 00:48:42,070 1115 00:48:42,070 --> 00:48:50,575 >> Vì vậy, đây là một trong đó là chỉ cần cố gắng để trao đổi mọi thứ. 1116 00:48:50,575 --> 00:48:52,260 1117 00:48:52,260 --> 00:48:54,930 Như chúng ta thấy ở đây, chúng tôi có chức năng nguyên mẫu của chúng tôi 1118 00:48:54,930 --> 00:48:56,900 để trình biên dịch của chúng tôi không la mắng chúng tôi. 1119 00:48:56,900 --> 00:48:59,220 Chúng tôi có một số chính, và chúng tôi muốn chuyển đổi x và y. 1120 00:48:59,220 --> 00:49:00,320 1121 00:49:00,320 --> 00:49:04,129 Họ đã không thực hiện bản demo này trong bài giảng nào, có họ? 1122 00:49:04,129 --> 00:49:04,670 Họ có không? 1123 00:49:04,670 --> 00:49:05,900 OK. 1124 00:49:05,900 --> 00:49:08,450 Vì vậy, chúng ta sẽ đi trên này rất ngắn gọn. 1125 00:49:08,450 --> 00:49:12,210 Bạn sẽ nhận được vào ví dụ này nhiều hơn trong chiều sâu, tôi nghĩ rằng, trong tuần này. 1126 00:49:12,210 --> 00:49:15,680 Và sau đó vào tuần tới chúng ta có thể thực sự đi sâu vào lý do tại sao điều này không làm việc. 1127 00:49:15,680 --> 00:49:18,810 >> Vì vậy, chúng tôi có khoảng trống này chức năng here-- trao đổi. 1128 00:49:18,810 --> 00:49:20,720 Vì vậy, khoảng trống chỉ có nghĩa là không có gì là trả lại. 1129 00:49:20,720 --> 00:49:22,000 1130 00:49:22,000 --> 00:49:24,110 Và chúng tôi có trao đổi int a và int b. 1131 00:49:24,110 --> 00:49:27,046 Và chúng tôi có một số tạm thời biến đó là một. 1132 00:49:27,046 --> 00:49:30,050 một được giao cho b, và sau đó b được gán vào temp 1133 00:49:30,050 --> 00:49:32,235 để a và b của giá trị doanh nghiệp được chuyển sang. 1134 00:49:32,235 --> 00:49:33,510 1135 00:49:33,510 --> 00:49:36,030 >> Tuy nhiên, cốt truyện xoay, điều này không làm việc. 1136 00:49:36,030 --> 00:49:37,390 1137 00:49:37,390 --> 00:49:42,380 Và một phần của nó thực sự có để làm với thực tế là một 1138 00:49:42,380 --> 00:49:48,800 và b ở đây, những người mà có được thông qua trong ở đây, thực sự là bản sao của x và y. 1139 00:49:48,800 --> 00:49:53,220 Vì vậy, khi chức năng thực sự trở lại, nó chuyển các bản sao nhưng không 1140 00:49:53,220 --> 00:49:55,960 x và y của thực tế. 1141 00:49:55,960 --> 00:50:02,370 Vì vậy, một cách để suy nghĩ về nó là that-- giả vờ đây là những trao đổi. 1142 00:50:02,370 --> 00:50:03,130 OK? 1143 00:50:03,130 --> 00:50:05,390 Vì vậy, trong chính, chúng tôi có x và y khởi tạo. 1144 00:50:05,390 --> 00:50:06,530 1145 00:50:06,530 --> 00:50:10,760 Nhưng khi chúng tôi thực sự đi lên để những khung hình với trao đổi, 1146 00:50:10,760 --> 00:50:15,740 chúng tôi đang đi qua các giá trị trên với nó, và họ đang khởi tạo. 1147 00:50:15,740 --> 00:50:18,570 >> Và họ chỉ từng sống ở đây. 1148 00:50:18,570 --> 00:50:19,796 Vì vậy, a và b sống ở đây. 1149 00:50:19,796 --> 00:50:20,670 Và họ nhận được đổi chỗ. 1150 00:50:20,670 --> 00:50:21,870 1151 00:50:21,870 --> 00:50:26,190 Nhưng khi chúng ta quay trở lại, chúng tôi không làm bất cứ điều gì với a và b. một 1152 00:50:26,190 --> 00:50:28,980 và b nghỉ với chức năng của chúng tôi. 1153 00:50:28,980 --> 00:50:30,850 Và như vậy x và y ở lại cùng. 1154 00:50:30,850 --> 00:50:31,960 1155 00:50:31,960 --> 00:50:39,665 Bạn sẽ nhận được nhiều hơn nữa vào làm thế nào để khắc phục điều đó và như thế nào chúng tôi thực sự đối phó với điều này sau. 1156 00:50:39,665 --> 00:50:40,750 1157 00:50:40,750 --> 00:50:43,740 >> Nhưng nó chỉ là một điều để loại giữ trong tâm trí. 1158 00:50:43,740 --> 00:50:45,270 Sử dụng nó trong tương lai. 1159 00:50:45,270 --> 00:50:48,050 Đừng lo lắng nếu điều đó không làm cho tất cả các ý nghĩa trên thế giới. 1160 00:50:48,050 --> 00:50:49,510 1161 00:50:49,510 --> 00:50:51,440 Họ là những bản sao là điều lớn nhất. 1162 00:50:51,440 --> 00:50:54,580 Nếu bạn đang đi để có bất cứ điều gì đi từ đó, bạn thông qua trong bản. 1163 00:50:54,580 --> 00:50:56,410 Vì vậy, bản gốc được giữ nguyên. 1164 00:50:56,410 --> 00:50:58,170 1165 00:50:58,170 --> 00:50:58,770 Tất cả mọi người tốt? 1166 00:50:58,770 --> 00:51:00,280 1167 00:51:00,280 --> 00:51:00,930 Cool. 1168 00:51:00,930 --> 00:51:02,295 >> Vì vậy, đối số dòng lệnh. 1169 00:51:02,295 --> 00:51:03,520 1170 00:51:03,520 --> 00:51:07,630 Tôi chắc rằng trong đầu các bạn tất cả có những người, như, int khoảng trống chính tuyệt vời. 1171 00:51:07,630 --> 00:51:09,517 Và bạn đang như, OK mát mẻ. 1172 00:51:09,517 --> 00:51:10,350 Tôi không thực sự quan tâm. 1173 00:51:10,350 --> 00:51:12,360 Đây chỉ là những gì tôi đã viết. 1174 00:51:12,360 --> 00:51:16,349 Nhưng trong chương trình mới của bạn, đặc biệt là trong pset này, 1175 00:51:16,349 --> 00:51:17,890 và tại sao lại có phấn trên mặt đất? 1176 00:51:17,890 --> 00:51:19,640 1177 00:51:19,640 --> 00:51:22,680 >> Với pset tiếp theo của bạn, bạn sẽ được nhìn thấy này. 1178 00:51:22,680 --> 00:51:26,130 Int chính, int arg c, chuỗi cung v, dấu ngoặc đơn. 1179 00:51:26,130 --> 00:51:28,770 Vì vậy, từ những gì chúng ta chỉ ngày nay học được, những gì 1180 00:51:28,770 --> 00:51:32,190 Chúng ta nghĩ rằng tham số thứ hai hoặc yếu tố thứ hai là ở đây? 1181 00:51:32,190 --> 00:51:34,830 1182 00:51:34,830 --> 00:51:35,824 Đây là một mảng. 1183 00:51:35,824 --> 00:51:36,615 Loại mảng? 1184 00:51:36,615 --> 00:51:38,430 1185 00:51:38,430 --> 00:51:40,690 Mảng chuỗi, có. 1186 00:51:40,690 --> 00:51:41,980 Cool. 1187 00:51:41,980 --> 00:51:45,320 Vì vậy, đó là cách bạn đang đi được tuyên bố này ngay bây giờ. 1188 00:51:45,320 --> 00:51:48,570 >> Có ai nhớ những gì các đứng cho? 1189 00:51:48,570 --> 00:51:52,551 1190 00:51:52,551 --> 00:51:53,050 Không có? 1191 00:51:53,050 --> 00:51:54,020 1192 00:51:54,020 --> 00:51:54,520 Hmm? 1193 00:51:54,520 --> 00:51:55,640 >> HỌC SINH: arg c. 1194 00:51:55,640 --> 00:51:56,961 1195 00:51:56,961 --> 00:51:58,950 >> ALLISON: Vậy arg c giữ một truy cập. 1196 00:51:58,950 --> 00:51:59,450 Đây là một int. 1197 00:51:59,450 --> 00:52:00,615 Đó là một số, phải không? 1198 00:52:00,615 --> 00:52:02,240 Vậy điều gì làm bạn nghĩ rằng con số đó là của? 1199 00:52:02,240 --> 00:52:08,260 1200 00:52:08,260 --> 00:52:08,760 Yeah. 1201 00:52:08,760 --> 00:52:11,450 Vì vậy, arg c là số lượng các chuỗi tạo nên các dòng lệnh. 1202 00:52:11,450 --> 00:52:12,560 1203 00:52:12,560 --> 00:52:18,499 Vì vậy, nếu chúng ta thực sự do--, có những ví dụ sau đây, 1204 00:52:18,499 --> 00:52:19,790 vì vậy tôi sẽ không nhận được trước bản thân mình. 1205 00:52:19,790 --> 00:52:21,299 1206 00:52:21,299 --> 00:52:23,840 Đó là một số chuỗi chỉ tạo ra những dòng lệnh của bạn. 1207 00:52:23,840 --> 00:52:35,080 >> Vì vậy, khi bạn làm, như, chấm giảm Mario, đó là một chuỗi mà làm cho nó lên. 1208 00:52:35,080 --> 00:52:38,520 Trong phần này, bạn sẽ thực sự được ăn mọi thứ vào dòng lệnh, 1209 00:52:38,520 --> 00:52:41,750 như tôi chắc chắn rằng các bạn những người đã đọc thấy spec. 1210 00:52:41,750 --> 00:52:44,470 Vì vậy, trong những trường hợp này, có thể bạn sẽ thấy có hai hoặc ba đối số. 1211 00:52:44,470 --> 00:52:45,652 1212 00:52:45,652 --> 00:52:48,360 Nó sẽ là một điều hữu ích để sử dụng. 1213 00:52:48,360 --> 00:52:51,500 >> Và sau đó arg v, như chúng tôi đã nói, chỉ là một mảng chuỗi. 1214 00:52:51,500 --> 00:52:57,000 Vì vậy, đó thực sự lưu trữ những gì bạn đã nhập vào dòng lệnh. 1215 00:52:57,000 --> 00:52:59,960 Vì vậy, chúng tôi có những. 1216 00:52:59,960 --> 00:53:02,850 Bạn có một số dấu chấm dấu gạch chéo sao chép outfile infile. 1217 00:53:02,850 --> 00:53:06,670 Vì vậy, nếu arg c là số lượng các chuỗi rằng chúng ta đang đi qua vào lệnh 1218 00:53:06,670 --> 00:53:09,080 dòng, arg c của chúng tôi trong trường hợp này là gì? 1219 00:53:09,080 --> 00:53:14,520 1220 00:53:14,520 --> 00:53:15,850 Ba. 1221 00:53:15,850 --> 00:53:16,690 Chính xác. 1222 00:53:16,690 --> 00:53:20,086 >> Vì vậy, arg v của zero là gì? 1223 00:53:20,086 --> 00:53:21,710 Vì vậy, điều đầu tiên chúng tôi đã được lưu trữ là gì? 1224 00:53:21,710 --> 00:53:24,640 1225 00:53:24,640 --> 00:53:26,290 Dot giảm copy, chính xác. 1226 00:53:26,290 --> 00:53:28,065 Và sau đó là thứ hai sẽ là infile. 1227 00:53:28,065 --> 00:53:29,290 1228 00:53:29,290 --> 00:53:30,930 Thứ ba sẽ là outfile. 1229 00:53:30,930 --> 00:53:32,390 Vì vậy, những gì về arg v ba? 1230 00:53:32,390 --> 00:53:35,810 1231 00:53:35,810 --> 00:53:39,370 Nó sẽ là vô giá trị, bởi vì đó là cuối mảng của chúng tôi, phải không? 1232 00:53:39,370 --> 00:53:40,600 1233 00:53:40,600 --> 00:53:41,460 Cool. 1234 00:53:41,460 --> 00:53:44,500 >> Và sau đó những gì về một thứ sáu? 1235 00:53:44,500 --> 00:53:45,900 Đó là loại một câu hỏi trick. 1236 00:53:45,900 --> 00:53:46,400 Ish. 1237 00:53:46,400 --> 00:53:49,027 1238 00:53:49,027 --> 00:53:49,943 Chúng ta biết nó là gì? 1239 00:53:49,943 --> 00:53:50,960 1240 00:53:50,960 --> 00:53:51,690 Đó là không xác định. 1241 00:53:51,690 --> 00:53:53,170 Chúng tôi không có ý tưởng những gì có thể được. 1242 00:53:53,170 --> 00:53:57,000 Đó là bất cứ điều gì là đúng sau khi các mảng trong bộ nhớ, 1243 00:53:57,000 --> 00:54:00,220 và chúng tôi không có đầu mối đó là những gì. 1244 00:54:00,220 --> 00:54:03,500 Và đó là nguy hiểm để chạm vào những mọi thứ, bởi vì đối với tất cả các bạn đã biết, 1245 00:54:03,500 --> 00:54:07,080 đó là một số phần của bộ nhớ mà bạn không nên truy cập hoặc null. 1246 00:54:07,080 --> 00:54:09,000 Và nó có thể làm những điều điên rồ. 1247 00:54:09,000 --> 00:54:11,690 Nó được gọi là trên-lập chỉ mục của bạn bị ràng buộc vào mảng của bạn. 1248 00:54:11,690 --> 00:54:14,785 Đừng đi ra ngoài giới hạn của bạn mảng, hoặc những điều xấu có thể xảy ra. 1249 00:54:14,785 --> 00:54:16,274 1250 00:54:16,274 --> 00:54:18,940 Bạn quay trở lại và, như thế, pháp luật vật lý đã bị phá hủy 1251 00:54:18,940 --> 00:54:19,481 hoặc một cái gì đó. 1252 00:54:19,481 --> 00:54:21,021 1253 00:54:21,021 --> 00:54:21,520 Cool. 1254 00:54:21,520 --> 00:54:22,895 Điều đó có ý nghĩa với tất cả mọi người? 1255 00:54:22,895 --> 00:54:23,810 1256 00:54:23,810 --> 00:54:25,025 Không quá xấu. 1257 00:54:25,025 --> 00:54:28,926 >> Vì vậy, bây giờ, tất cả mọi người phần yêu thích, xem xét pset. 1258 00:54:28,926 --> 00:54:29,426 Yay! 1259 00:54:29,426 --> 00:54:30,530 1260 00:54:30,530 --> 00:54:31,030 OK. 1261 00:54:31,030 --> 00:54:33,830 Vì vậy, đối với những người bạn của những người đã không đọc spec pset, 1262 00:54:33,830 --> 00:54:36,790 bạn đang làm một số thực sự công cụ mát với mật mã. 1263 00:54:36,790 --> 00:54:39,360 Bạn sẽ tạo ra một Caesar Cơ yếu và một Vigenere Cipher. 1264 00:54:39,360 --> 00:54:42,000 1265 00:54:42,000 --> 00:54:45,480 Bạn chắc chắn nên đọc spec để xem làm thế nào những người làm việc. 1266 00:54:45,480 --> 00:54:49,650 Và nếu bạn đang gặp bất kỳ rắc rối về những gì nó thực sự cần phải làm, 1267 00:54:49,650 --> 00:54:52,920 hãy đến nói chuyện với tôi, gửi email cho tôi hoặc nhắn tin cho tôi. 1268 00:54:52,920 --> 00:54:53,420 Tôi xung quanh. 1269 00:54:53,420 --> 00:54:54,780 1270 00:54:54,780 --> 00:54:57,070 >> Vì vậy, có ba chính điều ở đây chúng tôi 1271 00:54:57,070 --> 00:55:00,440 muốn nói chuyện about-- chỉ loại của một phần mở rộng của bài giảng. 1272 00:55:00,440 --> 00:55:03,645 Những điều mà bạn có thể không biết về, gợi ý và các công cụ hữu ích. 1273 00:55:03,645 --> 00:55:05,520 Vì vậy, chúng ta sẽ làm một đánh giá nhanh chóng của ASCII, 1274 00:55:05,520 --> 00:55:10,420 bởi vì đó sẽ là siêu quan trọng đối với Mật mã Vigenère của. 1275 00:55:10,420 --> 00:55:11,809 1276 00:55:11,809 --> 00:55:14,100 Chúng tôi sẽ chuyển đổi đầu vào dòng lệnh, mà 1277 00:55:14,100 --> 00:55:17,160 sẽ rất hữu ích cho Caesar Cipher. 1278 00:55:17,160 --> 00:55:18,133 Và sau đó modulo. 1279 00:55:18,133 --> 00:55:20,220 1280 00:55:20,220 --> 00:55:21,210 Cool. 1281 00:55:21,210 --> 00:55:24,005 >> Vì vậy, ASCII bản đồ ký tự số. 1282 00:55:24,005 --> 00:55:25,270 1283 00:55:25,270 --> 00:55:26,365 Đây là một biểu đồ tuyệt vời. 1284 00:55:26,365 --> 00:55:28,115 Bạn cần phải có này đánh dấu ở đâu đó. 1285 00:55:28,115 --> 00:55:29,310 1286 00:55:29,310 --> 00:55:33,250 Bạn sẽ muốn nó cho đầu tiên giữa kỳ của bạn. 1287 00:55:33,250 --> 00:55:36,320 Tôi chắc rằng mọi người đều có này biểu đồ trên bảng giữa kỳ của họ. 1288 00:55:36,320 --> 00:55:37,810 Vì vậy, tìm hiểu nó. 1289 00:55:37,810 --> 00:55:38,410 Tình yêu nó. 1290 00:55:38,410 --> 00:55:39,740 Giữ cho nó tiện dụng. 1291 00:55:39,740 --> 00:55:41,210 Nó sẽ có ích. 1292 00:55:41,210 --> 00:55:45,630 >> Và tất cả đó là là một loại mã hóa mà các bản đồ chữ cái, số, 1293 00:55:45,630 --> 00:55:47,740 và các nhân vật khác số lượng cho máy tính của chúng tôi. 1294 00:55:47,740 --> 00:55:49,947 Vì tất nhiên, trong kết thúc, tất cả mọi thứ chúng tôi lưu trữ 1295 00:55:49,947 --> 00:55:52,030 sẽ được chuyển đổi xuống zero và những người thân, 1296 00:55:52,030 --> 00:55:55,200 vì vậy chúng tôi cần một số cách để đại diện cho văn bản và nhân vật mà tất cả chúng ta 1297 00:55:55,200 --> 00:55:59,105 được sử dụng để nhìn thấy như một số loại số. 1298 00:55:59,105 --> 00:56:00,370 1299 00:56:00,370 --> 00:56:05,880 >> Vì vậy, như chúng ta thấy ở đây, chúng tôi có chữ hoa A, đó là phải có. 1300 00:56:05,880 --> 00:56:06,555 Đó là 65. 1301 00:56:06,555 --> 00:56:07,570 1302 00:56:07,570 --> 00:56:09,660 Và chữ thường A là 97. 1303 00:56:09,660 --> 00:56:13,170 Vì vậy, bạn có thể tìm out-- như tôi đã nói trước đó, 1304 00:56:13,170 --> 00:56:16,532 nếu bạn đã có mảng nhiều chuỗi, những gì mỗi người 1305 00:56:16,532 --> 00:56:17,490 có một terminator null. 1306 00:56:17,490 --> 00:56:18,480 Nó sẽ là một không gian. 1307 00:56:18,480 --> 00:56:22,581 Không gian có special-- riêng của mình Tôi quên nơi nó là ở đây. 1308 00:56:22,581 --> 00:56:23,080 Ah. 1309 00:56:23,080 --> 00:56:24,700 32 là không gian. 1310 00:56:24,700 --> 00:56:27,090 Vì vậy, tất cả mọi thứ bản đồ đó. 1311 00:56:27,090 --> 00:56:28,680 1312 00:56:28,680 --> 00:56:29,740 >> Vì vậy, chúng ta có toán ASCII. 1313 00:56:29,740 --> 00:56:31,080 1314 00:56:31,080 --> 00:56:34,290 Pro tip-- trong Vigenere của, bạn có thể bị cám dỗ 1315 00:56:34,290 --> 00:56:39,480 để chuyển đổi số của bạn đến số nguyên, nhưng đó là thực hành thực sự tốt hơn 1316 00:56:39,480 --> 00:56:43,860 để có thể sử dụng nhân vật như thế này 1317 00:56:43,860 --> 00:56:45,820 khi bạn đang thực sự thao tác chúng. 1318 00:56:45,820 --> 00:56:48,950 Vì vậy, nếu bạn muốn sử dụng số điện thoại, bạn có thể. 1319 00:56:48,950 --> 00:56:55,260 Nhưng một cách tốt hơn, hoặc một cách mà chúng ta có xu hướng thích các bạn để làm điều đó, 1320 00:56:55,260 --> 00:56:57,830 là cách này, nơi bạn thực sự trừ ký tự. 1321 00:56:57,830 --> 00:56:58,840 1322 00:56:58,840 --> 00:57:02,830 >> Vì vậy, tôi muốn các bạn để loại hình này ra ngoài. 1323 00:57:02,830 --> 00:57:05,070 Tại sao bạn không thử mỗi một khác? 1324 00:57:05,070 --> 00:57:07,580 1325 00:57:07,580 --> 00:57:09,830 Vì vậy, một trong những đầu tiên, một phần ba, và một phần năm. 1326 00:57:09,830 --> 00:57:11,160 1327 00:57:11,160 --> 00:57:15,000 Bởi vì tôi muốn chắc chắn rằng chúng ta nói về tất cả mọi thứ chúng ta cần nói chuyện về. 1328 00:57:15,000 --> 00:57:17,410 1329 00:57:17,410 --> 00:57:20,259 Tôi chỉ muốn nói, một trong những điều quan trọng đối với: oh chờ đợi, 1330 00:57:20,259 --> 00:57:21,550 các bạn đã không nhìn thấy một này. 1331 00:57:21,550 --> 00:57:23,710 OK để làm đầu tiên ba. 1332 00:57:23,710 --> 00:57:24,430 Hãy làm điều đó. 1333 00:57:24,430 --> 00:57:25,971 Bởi vì chúng ta phải nói về modulo. 1334 00:57:25,971 --> 00:57:27,810 1335 00:57:27,810 --> 00:57:28,310 Tôi biết. 1336 00:57:28,310 --> 00:57:28,851 Toán là khó khăn. 1337 00:57:28,851 --> 00:57:29,870 1338 00:57:29,870 --> 00:57:30,980 Bạn có thể sử dụng một máy tính. 1339 00:57:30,980 --> 00:57:31,580 Đó là OK. 1340 00:57:31,580 --> 00:57:37,464 1341 00:57:37,464 --> 00:57:40,380 Hoặc kéo lên một bảng mã ASCII, bởi vì có lẽ bạn sẽ muốn điều đó. 1342 00:57:40,380 --> 00:58:03,660 1343 00:58:03,660 --> 00:58:04,820 >> Cool. 1344 00:58:04,820 --> 00:58:07,960 Vì vậy, tôi sẽ nhanh chóng đi bộ các bạn thông qua các. 1345 00:58:07,960 --> 00:58:11,120 Vì vậy, người dân đã kéo lên bảng ASCII? 1346 00:58:11,120 --> 00:58:15,645 Số của chúng tôi là gì số cho chữ thường A? 1347 00:58:15,645 --> 00:58:16,270 HỌC SINH: Bảy. 1348 00:58:16,270 --> 00:58:19,420 1349 00:58:19,420 --> 00:58:24,550 >> ALLISON: Vì vậy, chữ thường A là 97 và chữ hoa A là 65. 1350 00:58:24,550 --> 00:58:26,390 Vì vậy, 97 trừ đi 65? 1351 00:58:26,390 --> 00:58:27,782 1352 00:58:27,782 --> 00:58:28,570 >> Đung 32? 1353 00:58:28,570 --> 00:58:33,260 1354 00:58:33,260 --> 00:58:35,630 >> ALLISON: 62, yeah. 1355 00:58:35,630 --> 00:58:38,675 Vì vậy, trong trường hợp này, những gì nó sẽ in ra? 1356 00:58:38,675 --> 00:58:40,360 Đó là một đầu tiên? 1357 00:58:40,360 --> 00:58:43,830 Nếu chúng ta có phần trăm d, những gì mà có biết? 1358 00:58:43,830 --> 00:58:45,980 1359 00:58:45,980 --> 00:58:46,730 HỌC SINH: Một số. 1360 00:58:46,730 --> 00:58:48,604 ALLISON: Chúng tôi đang in ra một số thực tế. 1361 00:58:48,604 --> 00:58:50,770 Vì vậy, chúng tôi đang thực sự đi để in ra 32 ở đây. 1362 00:58:50,770 --> 00:58:56,360 Và nếu điều này là phần trăm c, 32 sẽ cung cấp cho chúng ta một không gian. 1363 00:58:56,360 --> 00:58:57,700 1364 00:58:57,700 --> 00:59:01,670 Vì vậy, sự hiểu biết rằng nhân vật có thể được in 1365 00:59:01,670 --> 00:59:06,140 cả hai như là con số và như các nhân vật thực tế 1366 00:59:06,140 --> 00:59:11,080 là thực sự quan trọng, và thanh toán chú ý đến các loại thực tế 1367 00:59:11,080 --> 00:59:12,040 rằng chúng ta đang làm ở đây. 1368 00:59:12,040 --> 00:59:14,520 1369 00:59:14,520 --> 00:59:15,020 Cool. 1370 00:59:15,020 --> 00:59:18,862 Vì vậy, mỗi một khác trong số này, được những gì chúng ta sẽ được in ấn? 1371 00:59:18,862 --> 00:59:19,825 >> HỌC SINH: Một nhân vật. 1372 00:59:19,825 --> 00:59:20,830 >> ALLISON: Một nhân vật. 1373 00:59:20,830 --> 00:59:21,330 Cool. 1374 00:59:21,330 --> 00:59:24,260 Vì vậy, nếu các bạn muốn biết, bạn có thể làm việc này ra ngoài một mình. 1375 00:59:24,260 --> 00:59:25,900 Nếu bạn đang gặp khó khăn, gửi email cho tôi. 1376 00:59:25,900 --> 00:59:28,950 Nhưng điều thứ hai sẽ in ra một chữ thường b. 1377 00:59:28,950 --> 00:59:32,910 Người thứ ba sẽ in ra một chữ hoa B. thứ tư một sẽ in 1378 00:59:32,910 --> 00:59:36,410 ra một chữ hoa C, và cuối cùng sẽ là một chữ thường A. 1379 00:59:36,410 --> 00:59:42,530 Và one-- cuối cùng chúng tôi đang thực sự đi để có được vào những gì mà phần trăm điên 1380 00:59:42,530 --> 00:59:45,020 dấu hiệu có nghĩa là thậm chí trong một vài slide. 1381 00:59:45,020 --> 00:59:46,667 Vì vậy, những cố gắng trên của riêng bạn. 1382 00:59:46,667 --> 00:59:48,500 Nếu bạn gặp khó khăn, hãy đến nói chuyện với tôi. 1383 00:59:48,500 --> 00:59:49,655 1384 00:59:49,655 --> 00:59:53,290 Nếu bạn thường trong Adams hội trường D, có thể bạn sẽ tìm thấy tôi xung quanh. 1385 00:59:53,290 --> 00:59:54,760 1386 00:59:54,760 --> 00:59:55,760 >> Vì vậy, atoi. 1387 00:59:55,760 --> 00:59:59,660 Làm thế nào nhiều bạn đã nhìn thấy điều này chức năng hoặc nghe nói về nó ở tất cả? 1388 00:59:59,660 --> 01:00:00,380 1389 01:00:00,380 --> 01:00:00,880 Bất cứ ai? 1390 01:00:00,880 --> 01:00:02,100 1391 01:00:02,100 --> 01:00:02,600 Cool. 1392 01:00:02,600 --> 01:00:06,250 Vì vậy, những gì nó thực sự đứng cho là ASCII để nguyên. 1393 01:00:06,250 --> 01:00:13,150 Vì vậy, những gì bạn có thể làm là, với Caesar, cho những người đọc spec, 1394 01:00:13,150 --> 01:00:16,460 bạn đang đi để làm dấu chấm dấu gạch chéo Caesar sau khi bạn viết chương trình của bạn, 1395 01:00:16,460 --> 01:00:18,690 và sau đó bạn sẽ đầu vào một số số mà bạn 1396 01:00:18,690 --> 01:00:24,780 muốn để mã hóa thông điệp bí mật của bạn với. 1397 01:00:24,780 --> 01:00:30,700 >> Nhưng, nếu chúng ta nhớ rằng, tất cả chúng tôi đầu vào được lưu trữ như dây đàn. 1398 01:00:30,700 --> 01:00:31,390 Phải không? 1399 01:00:31,390 --> 01:00:35,160 Chúng tôi có một mảng v arg đó là tất cả các chuỗi loại. 1400 01:00:35,160 --> 01:00:37,870 Vì vậy, nếu bạn chỉ cần cố gắng để kéo một, nó sẽ 1401 01:00:37,870 --> 01:00:43,240 nghĩ rằng một hoặc bất cứ số bạn sử dụng thực sự là một nhân vật. 1402 01:00:43,240 --> 01:00:45,490 Vì vậy, bạn sẽ nhận được một số kết quả điên. 1403 01:00:45,490 --> 01:00:48,200 Vì vậy, nếu bạn thực sự muốn biến này vào một số nguyên 1404 01:00:48,200 --> 01:00:52,060 mà bạn có thể sử dụng để thao tác từ của bạn hoặc tin nhắn của bạn, 1405 01:00:52,060 --> 01:00:53,366 bạn sẽ muốn sử dụng atoi. 1406 01:00:53,366 --> 01:00:56,320 atoi chỉ chuyển đổi chuỗi của bạn đến một int. 1407 01:00:56,320 --> 01:01:04,530 >> Vì vậy, nếu chúng ta có một chuỗi 12, nếu chúng ta gọi atoi trên 12, hoặc bất cứ điều gì đầu vào đó là, 1408 01:01:04,530 --> 01:01:07,370 nó sẽ thực sự trở lại cho bạn các số nguyên. 1409 01:01:07,370 --> 01:01:10,610 Không phải là nhân vật hoặc chuỗi 12. 1410 01:01:10,610 --> 01:01:14,230 Trong đó, khi bạn bắt đầu phải bổ sung vào con số, 1411 01:01:14,230 --> 01:01:17,710 sẽ rất khác nhau, bởi vì chuỗi 12 là 1412 01:01:17,710 --> 01:01:21,210 một số số điên trong ASCII, nhưng các số nguyên 12 1413 01:01:21,210 --> 01:01:23,390 thực sự là 12, đó là những gì bạn muốn. 1414 01:01:23,390 --> 01:01:25,630 Vì vậy, bạn muốn chắc chắn để sử dụng atoi. 1415 01:01:25,630 --> 01:01:29,203 >> Bạn sẽ muốn điều này trong Caesar, bởi vì bạn 1416 01:01:29,203 --> 01:01:32,520 cần int được cung cấp bởi người sử dụng trong dòng lệnh. 1417 01:01:32,520 --> 01:01:35,230 Nhưng khi họ đặt nó trong lệnh dòng, nó được lưu trữ như là một chuỗi 1418 01:01:35,230 --> 01:01:35,813 để bắt đầu với. 1419 01:01:35,813 --> 01:01:36,950 1420 01:01:36,950 --> 01:01:38,210 Điều đó có ý nghĩa? 1421 01:01:38,210 --> 01:01:40,590 Bạn không nhất thiết phải cần điều này cho Vigenere. 1422 01:01:40,590 --> 01:01:43,180 Với Vigenere, như tôi đã nói trước đó, bạn nên cố gắng và sử dụng 1423 01:01:43,180 --> 01:01:46,600 ASCII toán học mà trông giống như này, nơi bạn đang thực sự 1424 01:01:46,600 --> 01:01:49,320 sử dụng các ký tự mà chúng ta đang trao cho bạn. 1425 01:01:49,320 --> 01:01:50,970 1426 01:01:50,970 --> 01:01:51,470 Cool. 1427 01:01:51,470 --> 01:01:52,970 1428 01:01:52,970 --> 01:01:54,170 Tất cả mọi người tốt không? 1429 01:01:54,170 --> 01:01:56,530 1430 01:01:56,530 --> 01:01:57,480 Tuyệt vời. 1431 01:01:57,480 --> 01:01:59,030 >> Vì vậy, theo modulo. 1432 01:01:59,030 --> 01:02:01,950 Vì vậy, nếu bạn đang đưa ra số lượng lớn này cho Caesar? 1433 01:02:01,950 --> 01:02:03,720 1434 01:02:03,720 --> 01:02:07,970 Bạn có ý tưởng này mà nếu bạn đang ở Z và bạn 1435 01:02:07,970 --> 01:02:11,020 đưa ra một số hai, có nghĩa là bạn need-- 1436 01:02:11,020 --> 01:02:15,130 Z trở thành thứ hai thư sau khi chính nó, phải không? 1437 01:02:15,130 --> 01:02:20,800 Vì vậy, bạn cần phải bằng cách nào đó quấn xung quanh, và modulo là cách để làm điều đó. 1438 01:02:20,800 --> 01:02:23,310 Vì vậy, tất cả nó là nó cung cấp cho bạn phần còn lại 1439 01:02:23,310 --> 01:02:25,660 các bộ phận của số đầu tiên của thứ hai. 1440 01:02:25,660 --> 01:02:28,660 Và chúng tôi có một số ví dụ để làm cho rằng một chút cụ thể hơn. 1441 01:02:28,660 --> 01:02:34,390 Nhưng về cơ bản, bạn sử dụng modulo khi bạn muốn làm một cái gì đó bọc xung quanh. 1442 01:02:34,390 --> 01:02:36,950 >> Vì vậy, nếu bạn chỉ muốn số một đến tám, 1443 01:02:36,950 --> 01:02:39,670 bạn có thể sử dụng trên bất kỳ modulo khác số, và nó sẽ luôn luôn 1444 01:02:39,670 --> 01:02:42,960 trả lại một số từ số không đến tám. 1445 01:02:42,960 --> 01:02:48,750 Vì vậy, một số examples-- nếu chúng tôi có 55 modulo 10, 1446 01:02:48,750 --> 01:02:55,350 nó chỉ cung cấp cho bạn phần còn lại của 55 chia cho 10, đó sẽ là 5. 1447 01:02:55,350 --> 01:02:56,440 1448 01:02:56,440 --> 01:03:02,470 Và sau đó ba modulo năm, ai đoán những gì mà có được? 1449 01:03:02,470 --> 01:03:03,800 1450 01:03:03,800 --> 01:03:04,300 Ba. 1451 01:03:04,300 --> 01:03:05,570 1452 01:03:05,570 --> 01:03:10,910 >> Vì vậy, nếu bạn có một số lượng nhỏ hơn trước modulo, nó không thể đi trong đồng đều. 1453 01:03:10,910 --> 01:03:11,520 Đó là zero. 1454 01:03:11,520 --> 01:03:14,090 Vì vậy, nó chỉ trả về số của chính nó. 1455 01:03:14,090 --> 01:03:15,920 Vì vậy, tám modulo tám sẽ là gì? 1456 01:03:15,920 --> 01:03:16,603 >> HỌC SINH: Zero. 1457 01:03:16,603 --> 01:03:18,350 >> ALLISON: Zero. 1458 01:03:18,350 --> 01:03:20,160 Bởi vì nó đi vào đều. 1459 01:03:20,160 --> 01:03:22,095 16 modulo 15? 1460 01:03:22,095 --> 01:03:23,660 >> Đung One. 1461 01:03:23,660 --> 01:03:24,700 >> ALLISON: Cool. 1462 01:03:24,700 --> 01:03:29,280 Và rồi cuối cùng này chỉ là để hiện you-- bạn có thể tự hỏi, OK, 1463 01:03:29,280 --> 01:03:31,800 thứ tự của các hoạt động ở đây là gì? 1464 01:03:31,800 --> 01:03:33,100 Làm chúng ta chia đầu tiên? 1465 01:03:33,100 --> 01:03:34,570 Chúng ta có modulo đầu tiên? 1466 01:03:34,570 --> 01:03:38,730 Vì vậy, theo modulo giữ cùng độ ưu tiên như bộ phận hay nhân, 1467 01:03:38,730 --> 01:03:39,940 và kết trái của nó. 1468 01:03:39,940 --> 01:03:41,730 Vì vậy, nó trong cùng một cách. 1469 01:03:41,730 --> 01:03:46,520 Bạn sẽ luôn luôn làm dấu ngoặc đơn, sau đó nhân, chia, 1470 01:03:46,520 --> 01:03:49,570 và modulo theo thứ tự từ trái sang phải. 1471 01:03:49,570 --> 01:03:51,050 Vì vậy, quy tắc tiêu chuẩn. 1472 01:03:51,050 --> 01:03:55,260 Chỉ cần đặt nó trong cùng thể loại như phân chia và nhân giống. 1473 01:03:55,260 --> 01:03:59,040 >> Vì vậy, trong trường hợp này, chúng tôi sẽ có 1 cộng với 2 cho chúng ta 3. 1474 01:03:59,040 --> 01:04:02,210 Chúng tôi nhân rằng bằng 2, do đó chúng tôi nhận được 6. 1475 01:04:02,210 --> 01:04:05,050 Chúng tôi modulo rằng bằng 2, mà cho chúng ta? 1476 01:04:05,050 --> 01:04:06,042 >> HỌC SINH: 0. 1477 01:04:06,042 --> 01:04:07,430 >> ALLISON: 0. 1478 01:04:07,430 --> 01:04:10,270 Và sau đó chúng tôi thêm 2, vì vậy chúng tôi nhận được 2 trong trường hợp cuối cùng này. 1479 01:04:10,270 --> 01:04:12,080 1480 01:04:12,080 --> 01:04:16,360 Vì vậy, modulo-- bạn chắc chắn sẽ suy nghĩ về cách để kết hợp 1481 01:04:16,360 --> 01:04:19,520 rằng khi bạn đang gói xung quanh bảng chữ cái. 1482 01:04:19,520 --> 01:04:24,210 Nếu bạn đang ở Z và bạn cần phải di chuyển chuyển tiếp ba không gian để có được C, 1483 01:04:24,210 --> 01:04:26,230 có mà toàn bộ khái niệm của gói xung quanh. 1484 01:04:26,230 --> 01:04:28,790 Vì vậy, tôi sẽ để lại nó cho các bạn để tìm ra 1485 01:04:28,790 --> 01:04:31,940 cách chính xác bạn sẽ được sử dụng nó. 1486 01:04:31,940 --> 01:04:35,660 Nhưng chắc chắn là một công cụ hữu ích cho pset của bạn trong tuần này. 1487 01:04:35,660 --> 01:04:36,910 1488 01:04:36,910 --> 01:04:37,730 Tôi thực sự như thế này. 1489 01:04:37,730 --> 01:04:39,480 Đây là một trong psets yêu thích của tôi. 1490 01:04:39,480 --> 01:04:41,230 Sau đó, sau khi bạn làm điều đó, nếu bạn có bạn bè, 1491 01:04:41,230 --> 01:04:44,146 bạn có thể, như thế, gửi từng bí mật khác thông điệp và chắc chắn rằng nó hoạt động. 1492 01:04:44,146 --> 01:04:45,695 Bởi vì nó sẽ giải mã nó hoặc bất cứ điều gì. 1493 01:04:45,695 --> 01:04:46,710 1494 01:04:46,710 --> 01:04:47,390 Rất nhiều niềm vui. 1495 01:04:47,390 --> 01:04:48,840 1496 01:04:48,840 --> 01:04:51,220 >> Và đó là kết thúc của phần. 1497 01:04:51,220 --> 01:04:52,430 1498 01:04:52,430 --> 01:04:54,040 Tôi đã hoàn thành sớm. 1499 01:04:54,040 --> 01:04:57,540 Tôi vẫn còn có 15 phút với các bạn, vì vậy nếu có bất cứ điều gì 1500 01:04:57,540 --> 01:05:02,180 mà bạn muốn đi qua hơn nữa, tôi muốn được hạnh phúc để làm điều đó. 1501 01:05:02,180 --> 01:05:04,340 Bất kỳ câu hỏi khác trên pset của bạn cho những người bạn 1502 01:05:04,340 --> 01:05:06,355 đã bắt đầu hoặc đọc spec. 1503 01:05:06,355 --> 01:05:07,870 1504 01:05:07,870 --> 01:05:12,060 Bất cứ điều gì mà chúng tôi đã nói chuyện về trong những giờ cuối 1505 01:05:12,060 --> 01:05:16,880 và 15 phút mà bạn muốn tôi để loại rehash, tôi muốn được hạnh phúc. 1506 01:05:16,880 --> 01:05:20,790 Hoặc chúng ta có thể gọi nó là tha, và bạn có thể tất cả lại và đưa kẹo nhiều hơn với bạn 1507 01:05:20,790 --> 01:05:21,650 như bạn đi. 1508 01:05:21,650 --> 01:05:23,719 1509 01:05:23,719 --> 01:05:26,260 Nhưng nếu có bất kỳ kéo dài câu hỏi, xin vui lòng cho tôi biết. 1510 01:05:26,260 --> 01:05:28,467 Bạn cũng có thể đi lên và nói chuyện với tôi sau đó. 1511 01:05:28,467 --> 01:05:29,425 Tôi hứa tôi không cắn. 1512 01:05:29,425 --> 01:05:32,140 1513 01:05:32,140 --> 01:05:32,795 Bất cứ điều gì khác? 1514 01:05:32,795 --> 01:05:33,890 1515 01:05:33,890 --> 01:05:35,240 Tất cả mọi người là tốt? 1516 01:05:35,240 --> 01:05:37,540 Cảm giác của mọi người như họ có thể xử lý pset này? 1517 01:05:37,540 --> 01:05:38,820 1518 01:05:38,820 --> 01:05:42,405 Bạn sẽ là chàng trai tốt. 1519 01:05:42,405 --> 01:05:43,905 Văn phòng giờ là có một lý do. 1520 01:05:43,905 --> 01:05:45,930 1521 01:05:45,930 --> 01:05:46,460 Cool. 1522 01:05:46,460 --> 01:05:47,020 Được rồi. 1523 01:05:47,020 --> 01:05:49,680 >> Vâng, trong trường hợp đó, cảm ơn tất cả các bạn rất nhiều vì đã đến. 1524 01:05:49,680 --> 01:05:50,940 Tôi hy vọng sẽ nhìn thấy bạn trong tuần tới. 1525 01:05:50,940 --> 01:05:52,120 Sẽ có thêm kẹo. 1526 01:05:52,120 --> 01:05:53,495 Có thể có những điều thú vị khác. 1527 01:05:53,495 --> 01:05:55,010 1528 01:05:55,010 --> 01:05:59,090 Và tôi mong muốn nhận được để biết tất cả các bạn trong năm nay. 1529 01:05:59,090 --> 01:06:00,320