1 00:00:00,000 --> 00:00:03,290 >> [MUZYKI] 2 00:00:03,290 --> 00:00:04,989 3 00:00:04,989 --> 00:00:06,280 JASON Hirschhorn: OK, wszyscy. 4 00:00:06,280 --> 00:00:07,460 Zapraszamy do sekcji. 5 00:00:07,460 --> 00:00:10,840 To CS50, nasz bardzo Pierwszy Super odcinek. 6 00:00:10,840 --> 00:00:13,700 Jak wszyscy wiecie, w przyszłym tygodniu rozpocznie regularne sekcje, 7 00:00:13,700 --> 00:00:15,580 ale w tym tygodniu, że jesteśmy wszyscy razem. 8 00:00:15,580 --> 00:00:17,730 >> Nie jest sam. 9 00:00:17,730 --> 00:00:18,840 Nazywam się Jason. 10 00:00:18,840 --> 00:00:20,630 Jestem wykładowcą informatyki. 11 00:00:20,630 --> 00:00:23,910 Mamy Andi, kto jest szefem TA z CS50. 12 00:00:23,910 --> 00:00:27,630 I Scaz, profesor Brian Scassellati, on jest profesorem informatyki. 13 00:00:27,630 --> 00:00:30,970 >> Jesteśmy szefowie CS50 w Yale. 14 00:00:30,970 --> 00:00:34,992 Zawsze możesz napisz nam heads@cs50.yale.edu. 15 00:00:34,992 --> 00:00:35,950 Będziemy na wykładach. 16 00:00:35,950 --> 00:00:37,547 Będziemy w godzinach urzędowania. 17 00:00:37,547 --> 00:00:40,130 Jeśli istnieje kiedykolwiek coś się da zrobić dla ciebie, wszystko, czego potrzebujesz, 18 00:00:40,130 --> 00:00:42,610 prosimy, aby dotrzeć do nas. 19 00:00:42,610 --> 00:00:44,140 >> Więc co zrobimy dzisiaj? 20 00:00:44,140 --> 00:00:47,790 Lub wcześniej, co jest zbliża się w tym tygodniu? 21 00:00:47,790 --> 00:00:52,620 Więc Godziny urzędowania poniedziałek, wtorek, Środę i czwartek, od 8:00 do 11:00. 22 00:00:52,620 --> 00:00:54,770 Jest harmonogram na stronie internetowej. 23 00:00:54,770 --> 00:00:57,830 >> Sekcje, jak już wspomniałem, Zaczynamy w przyszłym tygodniu. 24 00:00:57,830 --> 00:01:01,390 A dowiesz się w tym tygodniu, co razem, gdy sekcja jest, jaki jest dzień, 25 00:01:01,390 --> 00:01:03,350 i kto jest twoim TA. 26 00:01:03,350 --> 00:01:08,610 >> Problem Set 1 przypada na czwartek w w południe, w piątek w południe z końca dnia. 27 00:01:08,610 --> 00:01:10,817 Tak, masz dziewięć późnych dni. 28 00:01:10,817 --> 00:01:12,150 A jest ich dziewięć zestawów problem. 29 00:01:12,150 --> 00:01:14,320 I może używać tylko jednego późna dzień za zestaw problemów. 30 00:01:14,320 --> 00:01:17,930 Tak, w efekcie cały problem Zestawy są spowodowane piątek w południe. 31 00:01:17,930 --> 00:01:18,550 To wszystko. 32 00:01:18,550 --> 00:01:20,400 Wszystko, że dane są w programie nauczania. 33 00:01:20,400 --> 00:01:22,360 >> W każdy piątek, mamy lunch. 34 00:01:22,360 --> 00:01:25,230 Chcemy, aby ten duży Oczywiście czuć się nieco mniejsze. 35 00:01:25,230 --> 00:01:26,580 Tak więc zapraszamy do RSVP. 36 00:01:26,580 --> 00:01:30,050 Bezpłatne obiad z facetem koledzy i pracownicy. 37 00:01:30,050 --> 00:01:34,120 cs50.yale.edu/rsvp. 38 00:01:34,120 --> 00:01:36,940 >> Wszystkie te rzeczy, które Mam na ekranie, 39 00:01:36,940 --> 00:01:43,330 i więcej, można znaleźć cs50.yale.edu lub cs50.harvard.edu, jeśli idziesz na Harvard 40 00:01:43,330 --> 00:01:46,800 i oglądają ten online. 41 00:01:46,800 --> 00:01:50,240 >> Również na tych stronach, nie mnóstwo zasobów dla Ciebie. 42 00:01:50,240 --> 00:01:54,610 Każdy wykład ma nie tylko film wykładu, ale także zwraca uwagę. 43 00:01:54,610 --> 00:01:58,184 Ktoś będzie oglądać wykład i robić notatki dla Ciebie. 44 00:01:58,184 --> 00:02:00,100 Więc może po prostu zapłacić uwagę podczas wykładów, 45 00:02:00,100 --> 00:02:03,970 Można też użyć swoich notatek / Nasza zauważa uzupełnić własne notatki. 46 00:02:03,970 --> 00:02:04,987 >> Są zjeżdżalnie Internecie. 47 00:02:04,987 --> 00:02:07,320 Źródłem code-- wszystko Dawid idzie w wykładzie, 48 00:02:07,320 --> 00:02:09,979 lub Scaz idzie na wykładzie, że Kod źródłowy jest dostępny w Internecie 49 00:02:09,979 --> 00:02:11,750 jak dobrze, że tak jak ja, wymienionych filmów. 50 00:02:11,750 --> 00:02:14,257 >> Sekcje, podobnie, wszystko będzie filmowany. 51 00:02:14,257 --> 00:02:15,840 Wszystkie te slajdy będą dostępne. 52 00:02:15,840 --> 00:02:18,190 Wszystkie tego kodu będzie być dostępne dla Ciebie. 53 00:02:18,190 --> 00:02:22,440 Istnieje spodenki na stronie internetowej, gdzie Pracownicy CS50 spędzić pięć do 10 54 00:02:22,440 --> 00:02:24,130 minut przechodzi tematy dla Ciebie. 55 00:02:24,130 --> 00:02:26,750 Niektórzy z tych, które już mam napotkał w zestawach problemowych. 56 00:02:26,750 --> 00:02:30,430 >> Godziny pracy, jak już wspomniałem, w poniedziałki do czwartku, 8:00 do 11:00. 57 00:02:30,430 --> 00:02:32,600 CS50 Studium jest fantastycznym źródłem. 58 00:02:32,600 --> 00:02:37,100 Są problemy praktyczne, Przykładowe slajdy, znanych błędów 59 00:02:37,100 --> 00:02:40,920 że uczniowie lubią napotkasz, na zasadzie każdego tematu my 60 00:02:40,920 --> 00:02:42,650 obejmie w tym kursie. 61 00:02:42,650 --> 00:02:46,350 >> I wreszcie, na tym slajdzie przynajmniej Reference50 62 00:02:46,350 --> 00:02:49,690 który zawiera informacje na wszystkich funkcji C 63 00:02:49,690 --> 00:02:53,160 może kiedykolwiek być może nadzieję, w użyciu i wiele, wiele innych. 64 00:02:53,160 --> 00:02:55,690 >> Ponownie, że kropka kropka kropka dolna część ekranu 65 00:02:55,690 --> 00:02:59,990 to oznacza, że ​​nie ma nawet więcej środków na tych dwóch stronach internetowych: 66 00:02:59,990 --> 00:03:04,270 cs50.yale.edu, cs50.harvard.edu. 67 00:03:04,270 --> 00:03:05,840 >> Więc, co robimy dzisiaj? 68 00:03:05,840 --> 00:03:08,970 Cóż, po pierwsze mam zamiar dać obejrzysz zasobów. 69 00:03:08,970 --> 00:03:10,010 Już zrobiłem tego. 70 00:03:10,010 --> 00:03:11,590 Patrz na nas. 71 00:03:11,590 --> 00:03:16,430 >> Teraz mamy zamiar iść na Typy danych i operatorów w C 72 00:03:16,430 --> 00:03:19,990 Wtedy Andi przyjdzie tu i przejść bibliotek w C, printf (), 73 00:03:19,990 --> 00:03:24,570 funkcja z której już są zna i szybko stanie się bardzo 74 00:03:24,570 --> 00:03:25,530 znajome. 75 00:03:25,530 --> 00:03:27,810 I można także przejść warunkowe i pętle. 76 00:03:27,810 --> 00:03:30,900 >> I w końcu, Scaz przejdzie przez ID CS50. 77 00:03:30,900 --> 00:03:34,250 Jeśli nie zanurkował w Problem już w Zestawie 1, 78 00:03:34,250 --> 00:03:37,060 a także jak korzystać z Polecenia terminali i użyteczne 79 00:03:37,060 --> 00:03:42,280 a następnie podać kilka demówek i kodowanie praktyki w ID CS50. 80 00:03:42,280 --> 00:03:45,130 >> Zanim wskoczyć do tego zawartość tej strony, 81 00:03:45,130 --> 00:03:46,770 Czy ktoś ma jakieś pytania do tej pory? 82 00:03:46,770 --> 00:03:53,190 83 00:03:53,190 --> 00:03:54,030 Wielki. 84 00:03:54,030 --> 00:03:54,950 OK. 85 00:03:54,950 --> 00:03:55,810 Zmiana biegów. 86 00:03:55,810 --> 00:03:58,760 >> [Zmiany biegów] 87 00:03:58,760 --> 00:04:03,070 >> To byłem ja przesunięcie biegów w samochodzie. ręcznej 88 00:04:03,070 --> 00:04:10,920 Więc typy danych w C, nie można po prostu zmienna x i muszą być w linii 10, 89 00:04:10,920 --> 00:04:17,170 liczbą całkowitą, może numer 1, na linii 20, liczba dziesiętna 10.5, 90 00:04:17,170 --> 00:04:20,500 i następnie kilka linii później ciąg, kocham CS50. 91 00:04:20,500 --> 00:04:25,052 >> W C, zmienne mogą być tylko Jedno i tylko jedno. 92 00:04:25,052 --> 00:04:26,510 A więc trzeba dać im typy. 93 00:04:26,510 --> 00:04:28,780 I na tym forum, że mieć listę typów. 94 00:04:28,780 --> 00:04:32,000 Są to znaki, które oznaczają znaki. 95 00:04:32,000 --> 00:04:36,850 Więc to jest jedna litera A, B, C, D. To może być także przestrzeń 96 00:04:36,850 --> 00:04:40,290 lub może być znak nowego wiersza. 97 00:04:40,290 --> 00:04:45,030 >> Są to liczby całkowite, które są po prostu numery, całe numbers-- lub całkowite 98 00:04:45,030 --> 00:04:47,130 rather-- ale bez miejsc po przecinku. 99 00:04:47,130 --> 00:04:49,790 >> Dla dziesiętnych, mamy liczb zmiennoprzecinkowych. 100 00:04:49,790 --> 00:04:53,200 Liczb zmiennoprzecinkowych są numery z przecinku. 101 00:04:53,200 --> 00:04:58,160 >> Następnie są tęskni, które są zasadniczo dłuższe liczbami całkowitymi. 102 00:04:58,160 --> 00:05:01,160 Zauważysz, że długi jest 8 natomiast int jest 4. 103 00:05:01,160 --> 00:05:02,640 I ci się, że w drugim. 104 00:05:02,640 --> 00:05:07,390 To dlatego, że tęskni można przechowywać nawet więcej liczb całkowitych niż int można przechowywać. 105 00:05:07,390 --> 00:05:10,100 Podwójne długa pływaka. 106 00:05:10,100 --> 00:05:12,460 >> I wreszcie, mamy Łańcuch, który jest typem 107 00:05:12,460 --> 00:05:14,430 że masz prawdopodobnie używany wcześniej. 108 00:05:14,430 --> 00:05:21,100 Jeśli to hashtag # includeCS50.h w pliku źródłowym, 109 00:05:21,100 --> 00:05:23,170 następnie można użyć typu String. 110 00:05:23,170 --> 00:05:25,560 To nie jest w rzeczywistości wbudowane w C 111 00:05:25,560 --> 00:05:27,760 >> Istnieje kilka innych typów, jak również. 112 00:05:27,760 --> 00:05:32,900 Ale to są główne te z które można wykorzystać i spotkanie. 113 00:05:32,900 --> 00:05:36,210 C jak znowu wspomniałem, co zmienna-- go 114 00:05:36,210 --> 00:05:38,620 może być tylko jeden typ i tylko jeden rodzaj. 115 00:05:38,620 --> 00:05:42,890 To dlatego, że C jest statycznie język wpisane, w przeciwieństwie 116 00:05:42,890 --> 00:05:45,780 dynamicznie typowanych języków gdzie jeśli utworzyć zmienną 117 00:05:45,780 --> 00:05:50,081 można zmienić, co jest zapisane w to, jak przejść w programie. 118 00:05:50,081 --> 00:05:52,580 Tutaj na prawicy boku, mam różne rozmiary 119 00:05:52,580 --> 00:05:57,440 tych rodzajów danych w bajtach. 120 00:05:57,440 --> 00:05:59,710 Więc to 1 bajt. 121 00:05:59,710 --> 00:06:01,250 To jest 8 bitów. 122 00:06:01,250 --> 00:06:05,530 A to oznacza, bo 8 bity tam osiem 0 i 1. 123 00:06:05,530 --> 00:06:08,280 Widzieliśmy te dema w pierwszym tygodniu, że żarówki binarnych. 124 00:06:08,280 --> 00:06:15,680 >> 8 bitów lub 1 bajt, możemy przedstawiania liczb od 0 do 255. 125 00:06:15,680 --> 00:06:16,180 Dobrze. 126 00:06:16,180 --> 00:06:18,770 Jeśli wszystkie 8 bitów jest 0 to 0. 127 00:06:18,770 --> 00:06:23,640 Jeśli pierwszy bit jest 1, to liczba Jeden z nich, i tak dalej, aż do 255. 128 00:06:23,640 --> 00:06:28,290 I dlatego dla znaków można mają zasadniczo do 255 nimi 129 00:06:28,290 --> 00:06:31,210 ale to jest dużo do pokrycia wszystkich znaki musimy użyć. 130 00:06:31,210 --> 00:06:38,060 >> Dla liczb całkowitych, można mieć 0 i to masz 2 do 32 minus 1. 131 00:06:38,060 --> 00:06:40,340 Są to, jak wiele opcji masz do liczb całkowitych. 132 00:06:40,340 --> 00:06:44,780 >> Na długi, masz 0 do 2 do 64 minus 1. 133 00:06:44,780 --> 00:06:48,860 Więc trzeba wiele, wiele, więcej opcji tęskni. 134 00:06:48,860 --> 00:06:54,220 >> Struny, to jest znak zapytania dlatego, że to cliffhanger na później. 135 00:06:54,220 --> 00:06:55,000 Tak. 136 00:06:55,000 --> 00:06:56,350 Mógłbym powiedzieć, wszyscy są na granicy swojego siedzenia 137 00:06:56,350 --> 00:06:57,450 jakby co to jest znak zapytania? 138 00:06:57,450 --> 00:06:58,390 Jest to cliffhanger. 139 00:06:58,390 --> 00:07:02,340 Będziemy ostatecznie objąć rozmiar smyczki i porozmawiać o strunach. 140 00:07:02,340 --> 00:07:04,692 Ponieważ ciąg jest rzeczywiście jeden z kółka 141 00:07:04,692 --> 00:07:06,400 my wkładamy w to Oczywiście na początku 142 00:07:06,400 --> 00:07:09,700 a następnie zdjąć później na, ponieważ ciągi znaków w C 143 00:07:09,700 --> 00:07:13,320 są rzeczywiście wskaźnikami do tablic znaków. 144 00:07:13,320 --> 00:07:15,810 Ale znowu, że to Na krawędzi na później. 145 00:07:15,810 --> 00:07:18,890 Zanim przejdę na wszelkie pytania, komentarze obawy o tym slajdzie? 146 00:07:18,890 --> 00:07:25,800 147 00:07:25,800 --> 00:07:26,630 >> OK. 148 00:07:26,630 --> 00:07:30,330 Muszę być fantastycznym explainer. 149 00:07:30,330 --> 00:07:33,210 Także, gdy jesteś programowania, masz zamiar użyć tych operatorów. 150 00:07:33,210 --> 00:07:36,730 Naprawdę proste sygnały, że może zrobić proste operacje, z których prawdopodobnie jesteś 151 00:07:36,730 --> 00:07:38,340 już bardzo znane. 152 00:07:38,340 --> 00:07:42,580 >> Na przykład, po prawej stronie, widzimy dodać. 153 00:07:42,580 --> 00:07:44,640 Aby dodać, po prostu zrobić znak plus. 154 00:07:44,640 --> 00:07:46,850 I tak możesz mieć dwóch zmiennych x i y. 155 00:07:46,850 --> 00:07:48,810 Możesz zrobić X + Y w kodzie. 156 00:07:48,810 --> 00:07:52,790 Może chcesz to-- powiedzieć ci ma numer 7 i 3, 157 00:07:52,790 --> 00:07:55,780 chcesz zapisać, że w zmiennej o nazwie suma. 158 00:07:55,780 --> 00:08:03,010 Możesz zrobić int do rodzaju, miejsca Suma, nazwa zmiennej, = 7 + 3; 159 00:08:03,010 --> 00:08:05,780 >> Co będzie, że sklep w sumie? 160 00:08:05,780 --> 00:08:07,190 Każdy, kto? 161 00:08:07,190 --> 00:08:09,270 Gdybym miał w sumie = 7 + 3. 162 00:08:09,270 --> 00:08:10,437 Co by być przechowywane w sumie? 163 00:08:10,437 --> 00:08:11,520 Możesz po prostu krzycz to. 164 00:08:11,520 --> 00:08:12,120 PUBLICZNOŚCI: 10. 165 00:08:12,120 --> 00:08:12,995 >> JASON Hirschhorn: 10! 166 00:08:12,995 --> 00:08:14,870 To się dokładnie zgadza. 167 00:08:14,870 --> 00:08:19,520 Co w sumie = 7 - 3, Ja po prostu użyć tego znaku kreska. 168 00:08:19,520 --> 00:08:20,871 Co się dzieje, aby być przechowywane? 169 00:08:20,871 --> 00:08:21,370 PUBLICZNOŚCI: 4. 170 00:08:21,370 --> 00:08:22,203 JASON Hirschhorn: 4. 171 00:08:22,203 --> 00:08:25,770 Suma jest chyba zła nazwa zmienna, ale 4 będzie przechowywany. 172 00:08:25,770 --> 00:08:31,890 >> Mnożyć w C, należy użyć trochę Znaków zodiaku, aby nie używać rentgenowskie. 173 00:08:31,890 --> 00:08:35,990 Aby podzielić, użyj Forward Nie Slash symbol podziału. 174 00:08:35,990 --> 00:08:39,580 I modulo, używać symbolu procent. 175 00:08:39,580 --> 00:08:47,900 >> Więc powiedzmy, że chcę zobaczyć, int z = 7% 3, co zostanie zapisane w Z? 176 00:08:47,900 --> 00:08:51,250 Tak, to jest w zasadzie Modulo pyta co ma zrobić? 177 00:08:51,250 --> 00:08:52,750 Czy ktoś wie, co robi modulo? 178 00:08:52,750 --> 00:08:53,940 Tak. 179 00:08:53,940 --> 00:08:54,870 y 4. 180 00:08:54,870 --> 00:08:56,120 Głośnik 1: To pozostała. 181 00:08:56,120 --> 00:08:58,369 JASON Hirschhorn: Jest Pozostała po podzieleniu. 182 00:08:58,369 --> 00:09:02,790 Więc 7 podzielone przez 3 jest 2 pozostała 1. 183 00:09:02,790 --> 00:09:04,690 Tak więc 1 zostanie zapisana. 184 00:09:04,690 --> 00:09:06,970 >> Zrobiłeś odejmowanie, ale to jest, jak to działa. 185 00:09:06,970 --> 00:09:09,140 To, co robi operator modulo. 186 00:09:09,140 --> 00:09:12,360 Potrzeba wiele dzieli go inny numer i wraca do Ciebie 187 00:09:12,360 --> 00:09:14,590 pozostała. 188 00:09:14,590 --> 00:09:19,770 Więc znowu, 7% 3 daje 1, ponieważ 7 podzielone przez 3 jest 2 pozostała 1, 189 00:09:19,770 --> 00:09:21,650 a zwraca resztę. 190 00:09:21,650 --> 00:09:24,470 >> Co wróćmy się jeden krok do tego znaku podziału. 191 00:09:24,470 --> 00:09:29,194 Jeśli zrobiłem 7 / podzielona przez 3 nie ktoś wie co to wróci? 192 00:09:29,194 --> 00:09:30,090 >> GŁOŚNIK 2: 2. 193 00:09:30,090 --> 00:09:32,240 >> JASON Hirschhorn: Dlaczego 2, a nie 2,333? 194 00:09:32,240 --> 00:09:34,560 >> GŁOŚNIK 2: Myślę, że to kawałki off od liczby całkowitej. 195 00:09:34,560 --> 00:09:36,310 JASON Hirschhorn: Tak to jest dokładnie prawo. 196 00:09:36,310 --> 00:09:39,880 W C, jeśli nie podział dwie liczby całkowite podzielone przez 3, 7, 197 00:09:39,880 --> 00:09:43,430 to dostaje odpowiedź, która w tym przypadku 2.3333 na zawsze 198 00:09:43,430 --> 00:09:47,080 i uzna, że ​​przecinek i sieka wszystko się po przecinku 199 00:09:47,080 --> 00:09:49,240 i to właśnie zwraca ci 2. 200 00:09:49,240 --> 00:09:51,120 >> Więc jeśli ja 8 dzieli się przez 3. 201 00:09:51,120 --> 00:09:54,010 To faktycznie, wiemy, że powrót 2.666, 202 00:09:54,010 --> 00:09:57,050 ale kotlety wszystko od na dziesiętny, obcina wszystko, 203 00:09:57,050 --> 00:09:58,640 i po prostu wraca do ciebie 2. 204 00:09:58,640 --> 00:10:02,090 Tak 6 podzielone przez 3, 7 dzieli o 3, 8 podzielone przez 3, 205 00:10:02,090 --> 00:10:04,840 wszyscy będą powróci do was 2. 206 00:10:04,840 --> 00:10:08,770 >> Czy ktoś wie, lub przypuszczenie, , jak mogłem rzeczywiście się 207 00:10:08,770 --> 00:10:10,790 pełna odpowiedź, jeśli chcę, że po przecinku? 208 00:10:10,790 --> 00:10:13,120 209 00:10:13,120 --> 00:10:13,620 Tak. 210 00:10:13,620 --> 00:10:14,152 Śmiało. 211 00:10:14,152 --> 00:10:15,110 GŁOŚNIK 3: Użyj pływaka? 212 00:10:15,110 --> 00:10:16,942 JASON Hirschhorn: Co masz na myśli? 213 00:10:16,942 --> 00:10:19,786 GŁOŚNIK 3: Bo powiedział Pływak jest dla numerów [niesłyszalne] 214 00:10:19,786 --> 00:10:22,900 215 00:10:22,900 --> 00:10:23,900 JASON Hirschhorn: Racja. 216 00:10:23,900 --> 00:10:26,100 Tak, to jest dokładnie prawo. 217 00:10:26,100 --> 00:10:28,440 7 jest liczbą całkowitą. 218 00:10:28,440 --> 00:10:31,690 Ale gdybym chciał skręcić, że na liczbę zmiennoprzecinkową, 219 00:10:31,690 --> 00:10:34,674 Musiałbym zapisać, że jako 7,0, ponieważ komputer 220 00:10:34,674 --> 00:10:37,090 jest naprawdę stupid-- widzieliśmy, że z example-- PB i J 221 00:10:37,090 --> 00:10:38,930 będzie to robić tylko dokładnie co mu powiesz. 222 00:10:38,930 --> 00:10:40,846 >> Więc jeśli piszesz 7, to myślę, że jest liczbą całkowitą. 223 00:10:40,846 --> 00:10:43,640 Jeśli piszesz 7.0, mimo że wiem, te rzeczy są równoważne, 224 00:10:43,640 --> 00:10:45,550 traktuje to jak liczbę zmiennoprzecinkową. 225 00:10:45,550 --> 00:10:50,441 Więc jeśli nie 7.0 podzielone o 3 lub podzielone przez 3,0, 226 00:10:50,441 --> 00:10:52,440 to znaczy, OK, teraz mamy do czynienia z pływaków. 227 00:10:52,440 --> 00:10:57,514 Wrócę do was 2.333333 zawsze. 228 00:10:57,514 --> 00:10:59,930 Ale naprawdę nie zawsze, bo jak widzieliśmy także w wykładzie, 229 00:10:59,930 --> 00:11:03,350 tych liczb zmiennoprzecinkowych nie są dokładnie precyzyjne. 230 00:11:03,350 --> 00:11:05,940 >> Więc jeśli nie chce, że po przecinku, lub część tej przecinku, 231 00:11:05,940 --> 00:11:08,090 potem trzeba use-- jednego z nich musi być liczbą zmiennoprzecinkową 232 00:11:08,090 --> 00:11:11,048 a komputer musi zrozumieć, że jest to zmiennoprzecinkowych jesteś 233 00:11:11,048 --> 00:11:13,350 do czynienia z, a nie całkowitej. 234 00:11:13,350 --> 00:11:16,760 Wszelkie pytania dotyczące tej tabeli na prawa strona, do tej pory? 235 00:11:16,760 --> 00:11:22,650 Lub lewej stronie, twój w lewo, po lewej stronie. 236 00:11:22,650 --> 00:11:23,264 Tak. 237 00:11:23,264 --> 00:11:23,972 GŁOŚNIK 4: Prawo. 238 00:11:23,972 --> 00:11:26,216 Na jak zwykły liczby całkowite, byś 239 00:11:26,216 --> 00:11:30,230 write-- trzeba by napisać unosić? 240 00:11:30,230 --> 00:11:31,920 >> JASON Hirschhorn: Tak, tak. 241 00:11:31,920 --> 00:11:34,400 Cóż, jeśli chcesz utworzyć zmienna jest typu float, 242 00:11:34,400 --> 00:11:37,020 trzeba powiedzieć, pływak z równa coś. 243 00:11:37,020 --> 00:11:37,640 >> GŁOŚNIK 4: OK. 244 00:11:37,640 --> 00:11:41,950 >> JASON Hirschhorn: Ale gdybym chciał Czy 7 podzielona przez 3 i uzyskać po przecinku, 245 00:11:41,950 --> 00:11:48,540 Chciałbym zrobić pływaka z = 7,0 / 3,0; i że da mi zmiennoprzecinkowych 246 00:11:48,540 --> 00:11:49,273 liczba. 247 00:11:49,273 --> 00:11:50,000 >> GŁOŚNIK 4: OK. 248 00:11:50,000 --> 00:11:56,370 >> JASON Hirschhorn: Jeśli ja coś jak int z = 7 / przez 3, 249 00:11:56,370 --> 00:12:00,856 że da mi liczbę całkowitą, ponieważ są liczbami całkowitymi. 250 00:12:00,856 --> 00:12:01,730 Czy to ma sens? 251 00:12:01,730 --> 00:12:02,320 >> GŁOŚNIK 4: Tak. 252 00:12:02,320 --> 00:12:02,950 >> JASON Hirschhorn: OK. 253 00:12:02,950 --> 00:12:03,450 Wielki. 254 00:12:03,450 --> 00:12:06,030 Wszelkie inne pytania na temat tej tabeli? 255 00:12:06,030 --> 00:12:07,220 Naprawdę? 256 00:12:07,220 --> 00:12:08,380 Jestem taki podekscytowany. 257 00:12:08,380 --> 00:12:09,120 OK. 258 00:12:09,120 --> 00:12:13,910 >> Więc kilka innych rzeczy, można użyć, często w warunkach lub pętli, 259 00:12:13,910 --> 00:12:17,580 są te rodzaje operators-- te typy wyrażeń logicznych. 260 00:12:17,580 --> 00:12:23,140 I tak dowiedzieliśmy się, == jest to, czego użyć do sprawdzenia, czy dwie rzeczy są równe. 261 00:12:23,140 --> 00:12:28,170 >> Więc tutaj jestem sprawdzenie czy x == y, niech ponownie założyć, że x wynosi 7 i y 3. 262 00:12:28,170 --> 00:12:33,220 Więc gdybym napisał 7 == 3, co to, że zwraca się do mnie? 263 00:12:33,220 --> 00:12:34,220 Czy to prawda czy fałsz? 264 00:12:34,220 --> 00:12:35,275 >> PUBLICZNOŚCI: Fałsz. 265 00:12:35,275 --> 00:12:36,150 JASON Hirschhorn: OK. 266 00:12:36,150 --> 00:12:37,370 Czuję, że każdy może się tego. 267 00:12:37,370 --> 00:12:39,054 Więc wszyscy, co by to powrót? 268 00:12:39,054 --> 00:12:39,720 PUBLICZNOŚCI: Fałsz. 269 00:12:39,720 --> 00:12:40,130 JASON Hirschhorn: Fałsz. 270 00:12:40,130 --> 00:12:40,850 Wielki. 271 00:12:40,850 --> 00:12:41,930 7 nie równa 3. 272 00:12:41,930 --> 00:12:44,530 Więc 7 == 3 będzie return false. 273 00:12:44,530 --> 00:12:50,746 Ty masz nie znak równości, więc jeśli sprawdzane 7! = 3, co by to powrót? 274 00:12:50,746 --> 00:12:51,370 PUBLICZNOŚCI: True. 275 00:12:51,370 --> 00:12:52,650 JASON Hirschhorn: True. 276 00:12:52,650 --> 00:12:53,200 Doskonałe. 277 00:12:53,200 --> 00:12:55,990 Ktoś był bardzo stanowczy w z tyłu i doceniam to. 278 00:12:55,990 --> 00:12:59,070 Następnie, mając mniej niż operatora, mniejsza lub równa operatora 279 00:12:59,070 --> 00:13:01,990 większa od operatora, większa lub równa operatora. 280 00:13:01,990 --> 00:13:03,490 >> Więc jeszcze jedna kontrola poprawności. 281 00:13:03,490 --> 00:13:05,660 Gdybym miał 7 jest większa niż lub równe do 3. 282 00:13:05,660 --> 00:13:06,966 Co będzie, że powrót? 283 00:13:06,966 --> 00:13:07,692 >> PUBLICZNOŚCI: True. 284 00:13:07,692 --> 00:13:08,650 JASON Hirschhorn: True. 285 00:13:08,650 --> 00:13:10,050 Tak. 286 00:13:10,050 --> 00:13:13,290 To pokój do tyłu, tylna pokoju, fantastyczne. 287 00:13:13,290 --> 00:13:16,240 Można łączyć je wyrażenia, jeśli chcesz, jak również, 288 00:13:16,240 --> 00:13:21,880 z którym logicznym i jest && Lub logiczną OR który || 289 00:13:21,880 --> 00:13:22,800 ||. 290 00:13:22,800 --> 00:13:25,785 A więc teraz można przetestować dwa rzeczy together-- Czy to śmieszne? 291 00:13:25,785 --> 00:13:28,250 Dlaczego to jest zabawne? 292 00:13:28,250 --> 00:13:35,200 >> Więc jeśli chcę, mogę powiedzieć, to 7 większa niż 3 i 2 jest mniejsza niż 4? 293 00:13:35,200 --> 00:13:37,090 Cóż, jeśli 7 jest większa niż 3, to prawda. 294 00:13:37,090 --> 00:13:38,400 2 jest mniejsza niż 4, to prawda. 295 00:13:38,400 --> 00:13:41,140 Więc cała ta sprawa wróci prawda. 296 00:13:41,140 --> 00:13:45,130 >> Jeśli Testowałem 7 jest większy niż 3 and-- Ja tylko zbieranie liczb losowych here-- 297 00:13:45,130 --> 00:13:47,340 4 jest mniejsza niż 2, dobrze, że jest fałszywe. 298 00:13:47,340 --> 00:13:49,610 Tak prawdziwe i fałszywe fałszywych. 299 00:13:49,610 --> 00:13:54,520 I można iść dalej i połączyć się wiele warunków razem jak chcesz. 300 00:13:54,520 --> 00:14:00,000 >> Czy ktoś ma jakieś pytania, Uwagi, problemy do tej pory? 301 00:14:00,000 --> 00:14:03,862 I widzę, że niektórzy z was robienia zdjęć o mnie na ekranie, które cenią. 302 00:14:03,862 --> 00:14:05,070 Miejmy nadzieję, że to nie jest Snapchat. 303 00:14:05,070 --> 00:14:06,417 Mamy nadzieję, że to dla notatek. 304 00:14:06,417 --> 00:14:08,500 Ale wszystkie te będą być dostępne w Internecie. 305 00:14:08,500 --> 00:14:11,210 Więc nie musisz się robić zdjęcia to. 306 00:14:11,210 --> 00:14:15,150 Jak wspomniałem, wszystko będą dostępne online dla Ciebie. 307 00:14:15,150 --> 00:14:15,650 OK. 308 00:14:15,650 --> 00:14:17,980 Mam zamiar się ze sceny, więc nie każdemu 309 00:14:17,980 --> 00:14:20,350 chcę nic mówić zanim to się stanie? 310 00:14:20,350 --> 00:14:21,080 Pytania? 311 00:14:21,080 --> 00:14:21,680 >> [Wstawienie GŁOSY] 312 00:14:21,680 --> 00:14:22,250 >> JASON Hirschhorn: Och, przestań. 313 00:14:22,250 --> 00:14:23,290 Jesteście zbyt miły. 314 00:14:23,290 --> 00:14:23,790 OK. 315 00:14:23,790 --> 00:14:26,520 Będę tag out. 316 00:14:26,520 --> 00:14:27,240 Chodźmy. 317 00:14:27,240 --> 00:14:29,570 >> ANDI PENG: Będziemy robić niezręczna mic zmiana teraz. 318 00:14:29,570 --> 00:14:32,280 >> JASON Hirschhorn: Jestem zajmie to wyłączyć. 319 00:14:32,280 --> 00:14:33,946 ANDI PENG: Doceniam wsparcie, chłopaki. 320 00:14:33,946 --> 00:14:42,250 321 00:14:42,250 --> 00:14:43,180 Czy mnie słyszysz? 322 00:14:43,180 --> 00:14:43,930 Czy to dobrze? 323 00:14:43,930 --> 00:14:44,760 Doskonały. 324 00:14:44,760 --> 00:14:45,630 Piękny. 325 00:14:45,630 --> 00:14:47,490 Powiem tylko, że w podwinąć. 326 00:14:47,490 --> 00:14:49,100 OK. 327 00:14:49,100 --> 00:14:54,140 Tak, mam zamiar zrobić jak olbrzym Informacje zrzucić na was teraz. 328 00:14:54,140 --> 00:14:57,370 I w ogóle nie martwi, jeśli jesteś nie po każdą małą linię, co 329 00:14:57,370 --> 00:14:58,812 Mam zamiar pokazać. 330 00:14:58,812 --> 00:15:00,770 Jak powiedział Jason, wszystko jest całkowicie on-line. 331 00:15:00,770 --> 00:15:03,780 Wystarczy, że będziemy starać się przedstawić każdy z pojęciami pokryte 332 00:15:03,780 --> 00:15:05,270 W niektórych z tych preparatów. 333 00:15:05,270 --> 00:15:06,582 Więc po prostu podążać. 334 00:15:06,582 --> 00:15:09,540 Nie martw się, jeśli nie rozumieją wszystko; Jednakże, jeśli w dowolnym momencie 335 00:15:09,540 --> 00:15:12,820 czujesz się zagubiony, podnieść Ręka, wstrzymujemy, żadnych zmartwień. 336 00:15:12,820 --> 00:15:15,060 Chłodny. 337 00:15:15,060 --> 00:15:19,270 >> Więc myślę, że coś, że David ma już rodzaj mowa w wykładzie 338 00:15:19,270 --> 00:15:23,240 i Jason rodzaj nawiązywał do dziś jest to, co biblioteka jest. 339 00:15:23,240 --> 00:15:27,510 Więc w programowaniu, mamy te rzeczy nazywane biblioteki. 340 00:15:27,510 --> 00:15:29,690 Gdzie, w zasadzie wszystko są to tylko zbiór 341 00:15:29,690 --> 00:15:32,610 funkcji, to jest zasadniczo tylko kod, który jest 342 00:15:32,610 --> 00:15:35,070 już napisany przez ktoś inny, że możemy wszystko 343 00:15:35,070 --> 00:15:36,410 używać w naszych programach. 344 00:15:36,410 --> 00:15:38,790 >> Więc w jaki sposób normalny pracy biblioteki, prawda? 345 00:15:38,790 --> 00:15:40,030 Wchodzi się do drzwi biblioteki. 346 00:15:40,030 --> 00:15:41,890 Masz wszystko książki można wyciągnąć 347 00:15:41,890 --> 00:15:44,590 i można uzyskać dostęp do informacji w tych książkach. 348 00:15:44,590 --> 00:15:45,840 Samo w programowaniu. 349 00:15:45,840 --> 00:15:48,820 >> Musisz bibliotekę, która już ma zostały napisane przez innych ludzi. 350 00:15:48,820 --> 00:15:51,530 A sposób, że można, jako programista lub student, 351 00:15:51,530 --> 00:15:55,780 może uzyskać dostęp do tej biblioteki jest poprzez hashtag #include. 352 00:15:55,780 --> 00:15:59,720 >> Na przykład, C-my mają trzy C-- najbardziej 353 00:15:59,720 --> 00:16:03,420 powszechnie stosowane trzy standardowe C libraries-- biblioteki wejścia / wyjścia, 354 00:16:03,420 --> 00:16:05,540 biblioteka ciąg, i biblioteka matematyczna. 355 00:16:05,540 --> 00:16:07,610 >> Tak więc w ramach Twoja pierwsza Kilka problemu ustawia, 356 00:16:07,610 --> 00:16:10,940 będą to trzy że jesteś przede wszystkim za pomocą. 357 00:16:10,940 --> 00:16:14,610 Więc jak już Dawida wyjaśnione w wykładzie, 358 00:16:14,610 --> 00:16:17,460 średnia biblioteka we / wy, lub Standardowa biblioteka wejścia / wyjścia 359 00:16:17,460 --> 00:16:18,620 robi dokładnie to. 360 00:16:18,620 --> 00:16:23,530 To pozwala, w kodzie, aby wprowadzić coś z użytkownikiem i wyjścia, które 361 00:16:23,530 --> 00:16:25,960 na ekranie, w zasadzie drukowanie go na ekranie. 362 00:16:25,960 --> 00:16:29,990 >> I tak za każdym razem używać żadnych funkcji, na przykład printf function (), który 363 00:16:29,990 --> 00:16:33,319 mamy zamiar przejść na następnego slajdu, upewnij się, że to standard I / O 364 00:16:33,319 --> 00:16:36,360 biblioteki, albo nie będziemy być w stanie korzystać z funkcji printf (). 365 00:16:36,360 --> 00:16:39,110 Ponieważ, jako programista nigdy nie napisał tej funkcji, 366 00:16:39,110 --> 00:16:41,840 jesteś po prostu za pomocą kogoś Kod innego w swoim własnym kodem. 367 00:16:41,840 --> 00:16:43,620 >> Czy to ma sens wszyscy? 368 00:16:43,620 --> 00:16:44,520 Chłodny. 369 00:16:44,520 --> 00:16:48,530 >> A potem w zasadzie dostać się na biblioteka string.h i math.h 370 00:16:48,530 --> 00:16:52,970 biblioteka, .h po prostu oznacza, bibliotekę, inne biblioteki, że będziesz w końcu 371 00:16:52,970 --> 00:16:55,310 się przy użyciu w kodzie. 372 00:16:55,310 --> 00:16:57,620 >> Jednakże, dla celów tej biblioteki, także 373 00:16:57,620 --> 00:17:01,170 have-- tego class-- mamy także co nazywa biblioteki CS50, 374 00:17:01,170 --> 00:17:05,270 cs50.h, gdzie, na Lektura Stworzyliśmy 375 00:17:05,270 --> 00:17:07,369 wiele ważnych i przydatnych funkcji. 376 00:17:07,369 --> 00:17:09,550 Tak, że jako programista może barana off 377 00:17:09,550 --> 00:17:14,470 to, co już napisałem, tak aby funkcja ta jest dla Ciebie dostępna 378 00:17:14,470 --> 00:17:15,599 do użytku. 379 00:17:15,599 --> 00:17:18,359 >> Będę obejmujące kilka funkcje powszechnie stosowane 380 00:17:18,359 --> 00:17:20,839 ale wiem, że są to wszystkie googleable Internecie. 381 00:17:20,839 --> 00:17:24,904 Zapraszam, otwieramy bibliotekę CS50 i wtedy masz wszystkie funkcje tam. 382 00:17:24,904 --> 00:17:25,828 Tak. 383 00:17:25,828 --> 00:17:28,140 >> GŁOŚNIK 5: Więc jeśli nie były za pomocą oprogramowania 384 00:17:28,140 --> 00:17:29,916 jest nam klasa, robi 385 00:17:29,916 --> 00:17:32,698 oznacza, że ​​musimy pobrać i znaleźć Nagłówek ten plik się i powiedz 386 00:17:32,698 --> 00:17:33,840 komputer, gdzie to jest? 387 00:17:33,840 --> 00:17:34,320 >> ANDI PENG: Świetne pytanie. 388 00:17:34,320 --> 00:17:34,820 Dokładnie. 389 00:17:34,820 --> 00:17:38,194 Więc jak to jest, jeśli nie jesteś fizycznie obecny w bibliotece, 390 00:17:38,194 --> 00:17:40,360 nie ma sposobu, aby faktycznie go i do niego dostęp. 391 00:17:40,360 --> 00:17:42,589 Tak samo jest z programowania w C, to 392 00:17:42,589 --> 00:17:45,880 upewnić się, że używasz naszego Urządzenie ponieważ biblioteka jest już 393 00:17:45,880 --> 00:17:47,270 zostały włączone do niego. 394 00:17:47,270 --> 00:17:50,020 A potem, kiedy Hashtag #include biblioteka tam jest. 395 00:17:50,020 --> 00:17:50,520 Tak. 396 00:17:50,520 --> 00:17:51,920 Dobre pytanie. 397 00:17:51,920 --> 00:17:53,461 Każdy dobry? 398 00:17:53,461 --> 00:17:53,960 Chłodny. 399 00:17:53,960 --> 00:17:56,371 400 00:17:56,371 --> 00:17:56,870 W porządku. 401 00:17:56,870 --> 00:17:59,330 Tak więc mamy zamiar uderzyć, zasadniczo, co jest 402 00:17:59,330 --> 00:18:01,620 pierwsza funkcja My, jako programiści 403 00:18:01,620 --> 00:18:03,900 zamiar używać w naszym kodzie. 404 00:18:03,900 --> 00:18:05,690 Jest to tak zwana funkcja printf (). 405 00:18:05,690 --> 00:18:08,450 Tak, funkcja printf (), jak mam już powiedziałem w ostatnim slajdzie, 406 00:18:08,450 --> 00:18:11,830 jest zawarte w standardowym I / O, standardowe wejście / wyjście, biblioteka. 407 00:18:11,830 --> 00:18:16,470 >> Upewnij się więc, co masz using-- Och, pozwól mi chwycić laser pointer-- 408 00:18:16,470 --> 00:18:18,660 gdy używasz Funkcja printf () 409 00:18:18,660 --> 00:18:21,790 trzeba to standard I / O biblioteki lub innego, podczas kompilacji, 410 00:18:21,790 --> 00:18:23,760 masz zamiar się błąd ponieważ komputer będzie jak, 411 00:18:23,760 --> 00:18:26,140 no nie wiem, gdzie printf () jest, ty mi nie mówisz, gdy printf () 412 00:18:26,140 --> 00:18:26,830 jest. 413 00:18:26,830 --> 00:18:30,150 Cóż printf () jest zawarty w Standard I / O, więc po użyciu printf (), 414 00:18:30,150 --> 00:18:32,960 upewnij się, że to linia nad kodem. 415 00:18:32,960 --> 00:18:36,040 >> Tak na przykład, printf () tutaj jest funkcją. 416 00:18:36,040 --> 00:18:40,260 Wszystko robi to wydruk coś w nawiasach dla użytkownika. 417 00:18:40,260 --> 00:18:44,840 Czy ktoś chciał wziąć ukłucie w jakim zgodnie z prawem tego kodu 418 00:18:44,840 --> 00:18:46,420 tutaj będzie wydrukować? 419 00:18:46,420 --> 00:18:48,730 W związku z tym, że odpowiedź jest na ekranie. 420 00:18:48,730 --> 00:18:50,480 Każdy, kto? 421 00:18:50,480 --> 00:18:51,380 >> VERDI: Dno. 422 00:18:51,380 --> 00:18:53,510 >> ANDI PENG: Verdi, dlaczego nie pójdziesz dalej i powiedzieć całą oświadczenie? 423 00:18:53,510 --> 00:18:55,718 >> VERDI: Witam, nazywam się Andi i mam 20 lat. 424 00:18:55,718 --> 00:18:57,270 ANDI PENG: Ach, piękne. 425 00:18:57,270 --> 00:19:00,240 Więc w tej linii będziemy wydrukować, Witam, nazywam się Andi, 426 00:19:00,240 --> 00:19:04,280 i mam 20 lat, które w rzeczywistości jest prawdziwe stwierdzenie. 427 00:19:04,280 --> 00:19:05,090 >> Składnia. 428 00:19:05,090 --> 00:19:08,830 Więc kilka zagadnień składniowych, że Chcecie, aby upewnić się, wiesz. 429 00:19:08,830 --> 00:19:09,360 Cytaty. 430 00:19:09,360 --> 00:19:13,170 Cudzysłowy powiedzieć Komputer, że wszystko wewnątrz 431 00:19:13,170 --> 00:19:14,850 będzie drukowane. 432 00:19:14,850 --> 00:19:16,620 >> Wszystko wewnątrz puszki po prostu dokładnie, jak 433 00:19:16,620 --> 00:19:19,920 go wpisać, z wyjątkiem Powszechnie na końcu, 434 00:19:19,920 --> 00:19:23,610 mamy zamiar chcesz dołączyć hash-- oh sorry-- myślnik n. 435 00:19:23,610 --> 00:19:24,640 Więc myślnik n. 436 00:19:24,640 --> 00:19:28,884 >> Czy ktoś chce zgadywać na co to ma do naszego kodu? 437 00:19:28,884 --> 00:19:29,465 Tak. 438 00:19:29,465 --> 00:19:30,840 GŁOŚNIK 6: Umieszcza go w nowej linii. 439 00:19:30,840 --> 00:19:31,650 ANDI PENG: Dokładnie. 440 00:19:31,650 --> 00:19:34,660 Więc to wszystko nie jest pozwalają cokolwiek się dzieje 441 00:19:34,660 --> 00:19:37,520 po tym, po tym oświadczeniu, do zadrukowania do nowej linii. 442 00:19:37,520 --> 00:19:40,030 Tak, że kiedy piszesz swoje Kod nie losowo mieć rzeczy 443 00:19:40,030 --> 00:19:41,738 dołączona do końca że nie chcesz. 444 00:19:41,738 --> 00:19:43,700 To wszystko staje się starannie wydrukowane jedną linię 445 00:19:43,700 --> 00:19:46,870 i wtedy zaczniemy na następnej linii. 446 00:19:46,870 --> 00:19:50,970 >> Czy ktoś pamięta, co to średnik robi, gdy jesteśmy kodowania? 447 00:19:50,970 --> 00:19:54,580 448 00:19:54,580 --> 00:19:55,330 Tak. 449 00:19:55,330 --> 00:19:55,740 >> GŁOŚNIK 7: komunikat. 450 00:19:55,740 --> 00:19:56,010 >> ANDI PENG: Słucham? 451 00:19:56,010 --> 00:19:57,100 >> GŁOŚNIK 7: Czy to koniec oświadczenie? 452 00:19:57,100 --> 00:19:57,766 >> ANDI PENG: Tak. 453 00:19:57,766 --> 00:20:02,670 Tak więc w C lub dowolnego programowania język, średnik 454 00:20:02,670 --> 00:20:04,640 Oznacza koniec linii programowania. 455 00:20:04,640 --> 00:20:09,240 Tak na przykład, w języku angielskim się okresie użytkowania powiedzieć, no to koniec zdanie. 456 00:20:09,240 --> 00:20:12,857 W programowaniu, to samo, mamy średnik w celu określenia końca linii. 457 00:20:12,857 --> 00:20:14,690 Często, gdy jesteś rozpoczęciem programowania, 458 00:20:14,690 --> 00:20:17,150 będziesz sobie sprawę, zapomnij dodać średnik 459 00:20:17,150 --> 00:20:19,400 a następnie spróbować uruchomić Kod i to nie działa. 460 00:20:19,400 --> 00:20:21,520 I jesteś jak, Ach, ja nie wiem dlaczego, należy pracować. 461 00:20:21,520 --> 00:20:24,394 >> Szanse są pewnie zapomnieli średnik lub wspornik lub coś 462 00:20:24,394 --> 00:20:25,020 gdzieś. 463 00:20:25,020 --> 00:20:27,740 Tak, to ważne jest, aby pamiętać. 464 00:20:27,740 --> 00:20:29,627 Chłodny. 465 00:20:29,627 --> 00:20:31,960 Dobrze, podniesienie ręki, jak tutaj wiele osób ma coraz 466 00:20:31,960 --> 00:20:37,210 podjęte AP informatyki lub zaprogramowany w języku Java przed, zawsze? 467 00:20:37,210 --> 00:20:37,710 OK. 468 00:20:37,710 --> 00:20:38,210 Piękny. 469 00:20:38,210 --> 00:20:41,340 To nie będzie zastosowanie wtedy, ale w Javie 470 00:20:41,340 --> 00:20:44,960 coś o nazwie System.out.println które nie występują w C. 471 00:20:44,960 --> 00:20:49,927 >> Więc w C, gdy ci Aby dodać zmiennych 472 00:20:49,927 --> 00:20:51,760 w cokolwiek chcesz wydrukować, nie 473 00:20:51,760 --> 00:20:54,620 specyficzna składnia będziemy używać. 474 00:20:54,620 --> 00:20:56,520 To się nazywa placeholding-- zasadniczo 475 00:20:56,520 --> 00:21:01,180 dodamy zastępczych w miejsce z liczby całkowitej lub zmiennej 476 00:21:01,180 --> 00:21:02,580 które chcemy wydrukować. 477 00:21:02,580 --> 00:21:07,430 >> Tak jak chłopaki widzą dołączyliśmy Biblioteka nowy nagłówek pliku tutaj. 478 00:21:07,430 --> 00:21:09,130 Biblioteka CS50. 479 00:21:09,130 --> 00:21:13,160 I zawarte w tej biblioteki CS50 Funkcja jest wspólna będziemy używać 480 00:21:13,160 --> 00:21:15,610 w naszej oczywiście nazywa GetInt (). 481 00:21:15,610 --> 00:21:21,830 >> Czy ktoś chce wziąć ukłucie w co GetInt () może być ewentualnie robi. 482 00:21:21,830 --> 00:21:22,830 >> PUBLICZNOŚCI: [niesłyszalne] 483 00:21:22,830 --> 00:21:23,550 >> ANDI PENG: Niestety. 484 00:21:23,550 --> 00:21:24,370 Nie mógł cię usłyszeć. 485 00:21:24,370 --> 00:21:25,511 Maddie, ktokolwiek. 486 00:21:25,511 --> 00:21:27,260 MADDIE: Och, to poprosi Ci dla całkowitej. 487 00:21:27,260 --> 00:21:28,051 ANDI PENG: Dokładnie. 488 00:21:28,051 --> 00:21:30,670 Tak więc ta funkcja, inna funkcja, która już 489 00:21:30,670 --> 00:21:33,690 zostały napisane przez kogoś innego że możemy wezwać teraz. 490 00:21:33,690 --> 00:21:38,000 Wszystko to jest to poprosi cię, użytkownika, do wejścia co chcesz jako kod 491 00:21:38,000 --> 00:21:41,850 pracuje i przechowuje whatever-- w tym przypadku jesteśmy GetInt () - ing, 492 00:21:41,850 --> 00:21:44,060 więc oznacza to, że jesteśmy uzyskaniu całkowitej. 493 00:21:44,060 --> 00:21:46,150 >> I mamy zamiar przechowywać że w innej liczby całkowitej 494 00:21:46,150 --> 00:21:48,900 że właśnie popełnił zwany wiek. 495 00:21:48,900 --> 00:21:51,500 To ma sens dla każdego? 496 00:21:51,500 --> 00:21:52,190 Chłodny. 497 00:21:52,190 --> 00:21:56,400 >> Więc teraz, że mamy zapisane to liczba całkowita, że my poproszony przez użytkownika, 498 00:21:56,400 --> 00:22:00,010 w tej zmiennej, mamy stworzył typu int o nazwie wiek, 499 00:22:00,010 --> 00:22:03,720 możemy śmiało i miejsce które działają w naszym printf (). 500 00:22:03,720 --> 00:22:08,970 Tak składnia zwykle printf () jest że gdziekolwiek na aktualnej fizycznych 501 00:22:08,970 --> 00:22:14,410 Linia chcesz dołączyć tę liczbę całkowitą, robisz ten symbol tam, 502 00:22:14,410 --> 00:22:17,800 symbol procent, z typ zmiennej, które chcesz. 503 00:22:17,800 --> 00:22:20,090 >> Więc w tym przypadku wiek jest liczbą całkowitą. 504 00:22:20,090 --> 00:22:25,030 Więc masz zamiar to % i dlatego, że jest liczbą całkowitą. 505 00:22:25,030 --> 00:22:26,860 A następnie po stwierdzenie, będziesz 506 00:22:26,860 --> 00:22:30,370 zrobić przecinek i Nazwa zmiennej. 507 00:22:30,370 --> 00:22:33,420 >> Więc, idziemy do wydrukowania się, Cześć, nazywam się Andi, 508 00:22:33,420 --> 00:22:35,730 i jestem puste lat. 509 00:22:35,730 --> 00:22:38,890 Hashta-- lub sorry--, wiek z jakiegokolwiek wejścia I. 510 00:22:38,890 --> 00:22:42,790 Więc gdybym wejścia 20 dla mojego GetInt () tutaj 511 00:22:42,790 --> 00:22:44,500 to wydrukować dokładnie to samo. 512 00:22:44,500 --> 00:22:47,990 Ale, gdybym chciał coś wejściowego innego, jak być może 40 lub 45, 513 00:22:47,990 --> 00:22:50,800 wtedy będzie widać, że odbicie W związku z tym w kodzie. 514 00:22:50,800 --> 00:22:52,886 >> Więc to jest przykład czegoś, w którym 515 00:22:52,886 --> 00:22:55,260 drukuje się i patrzy Ci, jak gdyby to samo, 516 00:22:55,260 --> 00:22:57,593 ale pod maską komputer jest rzeczywiście 517 00:22:57,593 --> 00:22:59,560 różne rzeczy dzieje. 518 00:22:59,560 --> 00:23:00,060 Chłodny. 519 00:23:00,060 --> 00:23:02,760 520 00:23:02,760 --> 00:23:03,260 W porządku. 521 00:23:03,260 --> 00:23:06,940 Więc co, jeśli chcemy wielu zmiennych? 522 00:23:06,940 --> 00:23:08,290 Całkiem proste. 523 00:23:08,290 --> 00:23:09,150 Ta sama rzecz. 524 00:23:09,150 --> 00:23:11,930 Mamy też nową funkcję tutaj nazywa getString (), 525 00:23:11,930 --> 00:23:15,380 również w bibliotece CS50, że wszystko, co robi jest skłonić użytkownika 526 00:23:15,380 --> 00:23:18,120 na sznurku, który jest tylko zestaw znaków, 527 00:23:18,120 --> 00:23:19,810 tak jak w zdaniu lub jak nazwy. 528 00:23:19,810 --> 00:23:25,470 >> Więc w tym przypadku, to mamy dwa zastępcze% s dla smyczkowy i% i 529 00:23:25,470 --> 00:23:26,750 do liczby całkowitej. 530 00:23:26,750 --> 00:23:29,190 I będziemy podążać że do dwóch zmiennych 531 00:23:29,190 --> 00:23:32,670 możemy zostać uwzględnione w kolejności które pojawiają się w zdaniu. 532 00:23:32,670 --> 00:23:35,471 Tak na przykład, mam na imię puste, chcę nazwę tam, 533 00:23:35,471 --> 00:23:36,970 więc będę mieć pierwszą nazwę. 534 00:23:36,970 --> 00:23:39,637 A następnie potem chcę wiek, chce mieć wiek sekundę. 535 00:23:39,637 --> 00:23:42,720 I tak, jeśli chciałem wejścia, Witaj, nazywam się Andi i mam 20 lat. 536 00:23:42,720 --> 00:23:46,370 Gdybym wpisał Andi i 20, dokładnie to samo będzie drukować; 537 00:23:46,370 --> 00:23:51,134 jednak teraz mamy dwie przechowywane zmienne nazwy, jak i int. 538 00:23:51,134 --> 00:23:51,634 Tak. 539 00:23:51,634 --> 00:23:54,124 >> GŁOŚNIK 8: Czy byłoby w stanie uruchomić, jeśli włączony 540 00:23:54,124 --> 00:23:55,620 imię i wiek, w końcu jest? 541 00:23:55,620 --> 00:23:55,840 >> ANDI PENG: Tak. 542 00:23:55,840 --> 00:23:57,006 To bardzo dobre pytanie. 543 00:23:57,006 --> 00:23:59,520 Więc krótko mówiąc, nie. 544 00:23:59,520 --> 00:24:03,070 Ponieważ nazwa i age-- co typ zmiennej jest nazwa? 545 00:24:03,070 --> 00:24:03,950 >> GŁOŚNIK 8: String. 546 00:24:03,950 --> 00:24:05,440 >> ANDI PENG: A co typ zmiennej jest wiek? 547 00:24:05,440 --> 00:24:06,231 >> GŁOŚNIK 8: Integer. 548 00:24:06,231 --> 00:24:10,290 ANDI PENG: Więc tutaj mamy zastępczy dla łańcucha i liczby całkowitej, prawda? 549 00:24:10,290 --> 00:24:13,350 Więc jeśli były, aby przełączyć je, komputer nie będzie wiedzieć. 550 00:24:13,350 --> 00:24:16,250 To będzie sprawdzać ciąg, i jeśli spróbujesz dać int, 551 00:24:16,250 --> 00:24:18,083 to będzie jak czekaj Jestem zdezorientowany, ciebie 552 00:24:18,083 --> 00:24:21,100 powiedział mi, że powinienem być przydzielając pamięć wew. 553 00:24:21,100 --> 00:24:23,760 I właśnie tutaj, przy oczekuje liczbę całkowitą 554 00:24:23,760 --> 00:24:25,640 i nadać mu nazwę i ciąg, a nie, 555 00:24:25,640 --> 00:24:28,931 To także będzie bardzo mylące, to nie będzie działać dokładnie tak, jak jest to potrzebne. 556 00:24:28,931 --> 00:24:35,280 Więc tutaj, nazywania i składnia bardzo ważne dla kodu działa. 557 00:24:35,280 --> 00:24:37,991 Każdy dobry? 558 00:24:37,991 --> 00:24:38,490 Tak. 559 00:24:38,490 --> 00:24:39,476 Maddie. 560 00:24:39,476 --> 00:24:44,620 >> MADDIE: Tutaj, Wiem, że wyglądało na przykładach w klasie, w której pytają 561 00:24:44,620 --> 00:24:46,950 to, co jest w twoim wieku, jak się nazywasz. 562 00:24:46,950 --> 00:24:50,250 Tutaj, byłoby to go doesn't-- gdybyśmy uruchomić ten kod, 563 00:24:50,250 --> 00:24:51,750 nie byłoby zapytać o to? 564 00:24:51,750 --> 00:24:54,740 Ale by wejść tylko dwa numery a następnie będzie działać w taki sposób? 565 00:24:54,740 --> 00:24:55,781 >> ANDI PENG: Tak, dokładnie. 566 00:24:55,781 --> 00:24:58,250 Więc jeśli chcesz na to, aby Wyświetlacz, podaj swój wiek, 567 00:24:58,250 --> 00:25:01,100 możesz po prostu dodać funkcję printf () że mówi: Proszę podać swój wiek, 568 00:25:01,100 --> 00:25:01,600 ponad tym. 569 00:25:01,600 --> 00:25:02,711 To jest dobre pytanie. 570 00:25:02,711 --> 00:25:03,210 Tak. 571 00:25:03,210 --> 00:25:07,964 >> GŁOŚNIK 9: Tak, będzie już zawarte w GetInt () [niesłyszalne]. 572 00:25:07,964 --> 00:25:09,380 ANDI PENG: Nie, to naprawdę nie jest. 573 00:25:09,380 --> 00:25:11,809 Więc to wszystko nie jest tylko monituje pusty ekran 574 00:25:11,809 --> 00:25:13,100 użytkownikowi na coś wejściowego. 575 00:25:13,100 --> 00:25:17,420 Jeśli chcesz, jeśli chcesz, aby wydrukować z czymś, co informuje użytkownika, jak, 576 00:25:17,420 --> 00:25:21,110 proszę mi dać swój wiek, to ci musiałby printf (), że sam. 577 00:25:21,110 --> 00:25:23,789 Ponieważ każdy używa tego Funkcja dla różnych rzeczy, 578 00:25:23,789 --> 00:25:26,080 można zostać przechowywania wiek, można być przechowywać adres, 579 00:25:26,080 --> 00:25:28,060 można zostać przechowywania numerów telefonów. 580 00:25:28,060 --> 00:25:31,190 I tak naprawdę do Poszczególne zastosowania twoich facetów 581 00:25:31,190 --> 00:25:34,390 za to, co chcesz to powiedzieć. 582 00:25:34,390 --> 00:25:34,890 Tak. 583 00:25:34,890 --> 00:25:38,236 >> GŁOŚNIK 10: Tak, tylko w celu wyjaśnienia, w których nic ci Wprowadź nazwę i wiek 584 00:25:38,236 --> 00:25:43,020 tak, że pojawia się w miejsce% s? 585 00:25:43,020 --> 00:25:44,320 >> ANDI PENG: jak użytkownik? 586 00:25:44,320 --> 00:25:47,165 >> GŁOŚNIK 10: Tak, tak jak mogę aby it-- gdzie mogę umieścić Andi, 587 00:25:47,165 --> 00:25:48,350 i gdzie mogę umieścić 20? 588 00:25:48,350 --> 00:25:48,640 >> ANDI PENG: Tak. 589 00:25:48,640 --> 00:25:50,250 Więc jeśli były do faktycznie uruchomić ten kod, 590 00:25:50,250 --> 00:25:52,875 Nie mam właściwie uruchamiając Kod, to tylko tu teraz. 591 00:25:52,875 --> 00:25:56,910 Gdybym miał uruchomić kod, chciałbym skompilować kod, aby plik, 592 00:25:56,910 --> 00:26:00,760 uruchomić kod, a wtedy nie będzie być tylko dwa miejsca dla mnie, aby wprowadzić go. 593 00:26:00,760 --> 00:26:01,260 Tak. 594 00:26:01,260 --> 00:26:03,843 Będziesz faceci zobaczyć podczas gry wokół kodem samodzielnie. 595 00:26:03,843 --> 00:26:05,760 596 00:26:05,760 --> 00:26:09,645 >> Dobrze, że będziemy poruszać w następnej części tego, co 597 00:26:09,645 --> 00:26:11,610 będziemy obejmujące dziś. 598 00:26:11,610 --> 00:26:13,980 Mamy zamiar przejść nad tym, co Instrukcje warunkowe są. 599 00:26:13,980 --> 00:26:16,500 Więc jeśli faceci pamiętam i odwołuje się od wykładu, 600 00:26:16,500 --> 00:26:19,210 Instrukcje warunkowe, wszystkie one są to zestaw 601 00:26:19,210 --> 00:26:24,010 instrukcji do komputera w która, gdy pewien warunek jest prawdziwy, 602 00:26:24,010 --> 00:26:27,470 można wykonać kod wewnątrz tego stanu. 603 00:26:27,470 --> 00:26:30,101 >> Tak więc w Scratch-- zasadniczo wielki temat z dzisiaj 604 00:26:30,101 --> 00:26:32,850 jest to, że macie już wszystko widać logikę wszystko 605 00:26:32,850 --> 00:26:34,020 że mamy do pokrycia. 606 00:26:34,020 --> 00:26:36,190 I wszystko co robimy jest tłumaczenia coś 607 00:26:36,190 --> 00:26:39,090 to było bardzo intuicyjny w Scratch, i trudno go kodowania 608 00:26:39,090 --> 00:26:41,950 w składni będziemy używać do grupy, która jest C. 609 00:26:41,950 --> 00:26:47,550 Więc logicznie, cały ten blok był jest to, że część kodu, właśnie tam. 610 00:26:47,550 --> 00:26:49,995 Tak. 611 00:26:49,995 --> 00:26:50,900 OK. 612 00:26:50,900 --> 00:26:55,290 >> Mamy również dostać się do if ... else oświadczenie, które jest po prostu dodatkową warstwę 613 00:26:55,290 --> 00:26:59,120 złożoności do if gdzie komputer ma spojrzenie na ten 614 00:26:59,120 --> 00:27:04,260 i widzi, jeśli ten warunek jest spełniony, to co jest w środku tych dwóch wspornikach, 615 00:27:04,260 --> 00:27:08,470 else-- tak trochę jak domyślnie, jeśli nie spełniają condition-- to zrobić. 616 00:27:08,470 --> 00:27:10,120 To jak rozwidleniu dróg. 617 00:27:10,120 --> 00:27:14,400 Jeśli pada deszcz na zewnątrz, kładę na kurtkę deszczu, jeszcze coś 618 00:27:14,400 --> 00:27:16,330 jeszcze nie umieścić na kurtki przeciwdeszczowej. 619 00:27:16,330 --> 00:27:18,400 >> Czy to logika sensu wszystkich? 620 00:27:18,400 --> 00:27:21,031 Chłodny. 621 00:27:21,031 --> 00:27:21,530 W porządku. 622 00:27:21,530 --> 00:27:24,970 Więc jak twardy przykład ten, który widzimy w C 623 00:27:24,970 --> 00:27:28,890 to, czy chcę, aby utworzyć zmienną godzin lekcji. 624 00:27:28,890 --> 00:27:32,050 A jeśli godzin prac domowych jest mniej niż pięć, mówię Życie jest wspaniałe. 625 00:27:32,050 --> 00:27:33,070 To jest piękne. 626 00:27:33,070 --> 00:27:36,450 Jednak powiedzieć Walka jest real-- co jest, co wszyscy na tej poniedziałek 627 00:27:36,450 --> 00:27:39,337 po południu aż Nauka Hill są Prawdopodobnie robi prawo now-- 628 00:27:39,337 --> 00:27:40,170 PUBLICZNOŚCI: [LAUGHING] 629 00:27:40,170 --> 00:27:42,510 ANDI PENG: one sposób, w jaki nie, dziękuję za to. 630 00:27:42,510 --> 00:27:46,180 Sposób, w jaki będziemy hardcode to w C jest if-- załóżmy 631 00:27:46,180 --> 00:27:49,920 mamy już zmienną typu int o nazwie godzin lekcji tutaj. 632 00:27:49,920 --> 00:27:53,870 Jeśli godziny pracy domowej jest mniejsza niż pięć printf (), Życie jest wspaniałe. 633 00:27:53,870 --> 00:27:57,330 Pamiętaj zachować / n, ponieważ chcesz nową linię po. 634 00:27:57,330 --> 00:27:59,660 Else print, Walka jest prawdziwe. 635 00:27:59,660 --> 00:28:03,720 >> Czy wszyscy zrozumieć, jak I przesiedli się z tego bloku 636 00:28:03,720 --> 00:28:07,610 w tym bloku kodu? 637 00:28:07,610 --> 00:28:08,110 Chłodny. 638 00:28:08,110 --> 00:28:11,030 639 00:28:11,030 --> 00:28:11,840 W porządku. 640 00:28:11,840 --> 00:28:15,930 >> Więc teraz mamy zamiar przyjrzeć się wiele uwag, jeśli w ogóle. 641 00:28:15,930 --> 00:28:18,140 Więc załóżmy Celem tego programu 642 00:28:18,140 --> 00:28:20,870 był to poprosi użytkownika o klasie. 643 00:28:20,870 --> 00:28:24,450 Mamy wierszu używając GetInt () dla klasy, a ich wejście wartość, 644 00:28:24,450 --> 00:28:27,700 i chcesz wyświetlić jaki rodzaj klasy dostali. 645 00:28:27,700 --> 00:28:30,730 >> Więc gdybym miał stworzyć program, ja oznacza zazwyczaj w naszych oczach, 646 00:28:30,730 --> 00:28:35,490 90-100 jest A, 80-90 jest B, i tak dalej i tak dalej. 647 00:28:35,490 --> 00:28:39,040 Co jest nie tak z tym fragment kodu, który nie jest 648 00:28:39,040 --> 00:28:41,393 robić to, co chcę robić. 649 00:28:41,393 --> 00:28:41,892 Tak. 650 00:28:41,892 --> 00:28:45,100 >> GŁOŚNIK 11: Mają niższe limity, ale nie ma górnej granicy. 651 00:28:45,100 --> 00:28:46,280 >> ANDI PENG: Dokładnie. 652 00:28:46,280 --> 00:28:47,950 Czy każdy słyszy to, co powiedziała? 653 00:28:47,950 --> 00:28:50,200 Nie będzie to górna limity, ale nie niższe limity. 654 00:28:50,200 --> 00:28:52,540 Niestety, odwrotnie, dolne granice, ma górnej granicy. 655 00:28:52,540 --> 00:28:55,090 Więc chcesz podjąć ukłucie co mówi 656 00:28:55,090 --> 00:28:58,945 co drukuje się na tę Ekran gdybym uruchomić ten kod. 657 00:28:58,945 --> 00:28:59,820 GŁOŚNIK 11: błąd? 658 00:28:59,820 --> 00:29:01,140 ANDI PENG: błąd? 659 00:29:01,140 --> 00:29:02,740 Wielka przypuszczenie, nie do końca prawda. 660 00:29:02,740 --> 00:29:05,465 Czy ktoś ma inny ukłucie? 661 00:29:05,465 --> 00:29:06,640 Tak, Aaron. 662 00:29:06,640 --> 00:29:10,099 >> AARON: Jeśli włożysz coś większego niż 90, 663 00:29:10,099 --> 00:29:11,640 to pokazać wszystkie stopnie masz. 664 00:29:11,640 --> 00:29:13,640 To pokazuje, że masz się A, masz B, masz C. 665 00:29:13,640 --> 00:29:13,870 >> ANDI PENG: Tak. 666 00:29:13,870 --> 00:29:14,840 To się dokładnie zgadza. 667 00:29:14,840 --> 00:29:17,820 Tak, to byłoby wspaniałe. 668 00:29:17,820 --> 00:29:21,781 Jednak są one wzajemnie Ekskluzywny, myślę. 669 00:29:21,781 --> 00:29:23,280 Gdybym miał uruchomić ten kawałek kodu. 670 00:29:23,280 --> 00:29:26,200 A potem po prostu powiedzieć, że wprowadzane na stopień 95. 671 00:29:26,200 --> 00:29:30,360 Tak więc 95 jest teraz przechowywany w int o nazwie klasy. 672 00:29:30,360 --> 00:29:33,610 >> I tak C jest językiem który uruchamia się od góry do dołu, 673 00:29:33,610 --> 00:29:36,000 tak to się zawsze uruchomić do dołu. 674 00:29:36,000 --> 00:29:39,420 Więc to będzie tu, przeczytaj, jeśli Gatunek ten jest większy niż lub równy 90, 675 00:29:39,420 --> 00:29:42,850 printf (), który dostał A. wielki, a ja mają 95, to jest większa niż 90. 676 00:29:42,850 --> 00:29:44,866 To będzie drukować, Mam A. To się dzieje 677 00:29:44,866 --> 00:29:48,850 aby zapoznać się z tym, jeśli to będzie powiedzieć, dobrze 95 jest większy niż 80, 678 00:29:48,850 --> 00:29:52,970 to będzie drukować również dostał GOT wykrzyknik znak B, i tak dalej i tak 679 00:29:52,970 --> 00:29:53,690 dalej. 680 00:29:53,690 --> 00:29:55,890 >> Tak, jak wszyscy widzimy, jest to wspólny problem 681 00:29:55,890 --> 00:30:00,760 które mogą wystąpić, gdy jesteśmy pisania kodu, aby zwrócić uwagę. 682 00:30:00,760 --> 00:30:05,430 Każdy, wszelkie pytania na dlaczego tak się dzieje? 683 00:30:05,430 --> 00:30:05,930 Wielki. 684 00:30:05,930 --> 00:30:08,920 685 00:30:08,920 --> 00:30:09,440 OK. 686 00:30:09,440 --> 00:30:12,110 >> Jak więc rozwiązać ten problem, jest oczywiście logicznym następne pytanie. 687 00:30:12,110 --> 00:30:16,290 Cóż, mamy te piękne rzeczy zwane jeśli else if else 688 00:30:16,290 --> 00:30:18,010 jeśli else. 689 00:30:18,010 --> 00:30:22,230 Więc widać, jeśli chcesz zmienić ten problem, 690 00:30:22,230 --> 00:30:25,260 chciał, aby każdy z Warunki wzajemnie wykluczające się, 691 00:30:25,260 --> 00:30:26,860 dodałbyś jeszcze ... if. 692 00:30:26,860 --> 00:30:30,068 >> A te z course-- myśleć o nich jako drabiny, albo jak szczeble na ladder-- 693 00:30:30,068 --> 00:30:34,050 można dodać, jak wiele z nich, jak ty chce tak wielu warunków, jak chcesz. 694 00:30:34,050 --> 00:30:36,790 Więc tutaj, jeśli wprowadzane stopień być 95. 695 00:30:36,790 --> 00:30:39,479 Jeśli klasa jest większa niż 95, printf (), mam A. Fantastyczny. 696 00:30:39,479 --> 00:30:42,020 To będzie zobaczyć jeszcze ... jeśli i to będzie wiedzieć, o nie, 697 00:30:42,020 --> 00:30:43,750 Ja już wykonane pierwsze indziej. 698 00:30:43,750 --> 00:30:47,020 I know-- lub pierwszy if-- Wiem, że Nie muszę patrzeć na żadnego z nich 699 00:30:47,020 --> 00:30:48,920 ponieważ jedna z nich było już prawdą. 700 00:30:48,920 --> 00:30:50,410 Więc to będzie działać z góry na dół. 701 00:30:50,410 --> 00:30:53,650 Jak tylko pierwszy z nich jest prawdziwa, to to będzie przeskoczyć całą resztą 702 00:30:53,650 --> 00:30:54,675 z innym ... IFS. 703 00:30:54,675 --> 00:30:55,550 Czy to ma sens? 704 00:30:55,550 --> 00:30:57,841 Tak, w ten sposób masz różne poziomy kontroli 705 00:30:57,841 --> 00:31:01,090 i gdy tylko jeden z nich jest fałszywe, Reszta to również, że nie będzie nawet sprawdzić. 706 00:31:01,090 --> 00:31:03,577 707 00:31:03,577 --> 00:31:04,076 Chłodny. 708 00:31:04,076 --> 00:31:07,680 709 00:31:07,680 --> 00:31:08,180 W porządku. 710 00:31:08,180 --> 00:31:11,180 >> Jest to więc Przykładem innego rodzaj instrukcji warunkowej 711 00:31:11,180 --> 00:31:15,250 widzimy rzadziej, ale będziemy je widzieć i używać ich. 712 00:31:15,250 --> 00:31:18,120 I są one często bardziej skuteczny dla pewnych przypadkach. 713 00:31:18,120 --> 00:31:20,020 Więc mamy to, co się nazywa instrukcja switch. 714 00:31:20,020 --> 00:31:25,140 Zanim więc pokryte Co to jest inny stwierdzenie, if ... else. 715 00:31:25,140 --> 00:31:27,790 Tutaj mamy to, co jest zwane oświadczenia przełączników. 716 00:31:27,790 --> 00:31:31,100 >> Więc kiedy używamy przełącznika Sprawozdanie jest klucz? 717 00:31:31,100 --> 00:31:34,090 Tak więc w instrukcji switch, można zwykle, zazwyczaj, w rzeczywistości ci 718 00:31:34,090 --> 00:31:38,010 mogą tylko liczby całkowite Input Zmienna, że ​​będziesz zaglądać. 719 00:31:38,010 --> 00:31:42,390 Więc gdybym chciał sprawdzić, Jeśli pewna number-- np 720 00:31:42,390 --> 00:31:43,720 gatunek, jeśli mam 90. 721 00:31:43,720 --> 00:31:48,190 Chcę, żeby zobaczyć, czy to jest typu A, B lub C. mógłbym tutaj przypadek. 722 00:31:48,190 --> 00:31:50,840 Jednak sprawa ma być inna stała. 723 00:31:50,840 --> 00:31:53,170 >> Tak więc w tym sensie Instrukcja switch może tylko 724 00:31:53,170 --> 00:31:55,290 sprawdzić równość dwóch liczb. 725 00:31:55,290 --> 00:31:57,242 Nie sprawdzić na nic innego. 726 00:31:57,242 --> 00:31:59,950 Więc to jest coś za bardzo Uważaj, gdy używasz tego. 727 00:31:59,950 --> 00:32:04,810 Więc, gdybym chciał sprawdzić, czy moja klasa z 90 równa się 90 lub 80 728 00:32:04,810 --> 00:32:08,500 lub 70 lub 60, a następnie do druku odpowiedni gatunek, 729 00:32:08,500 --> 00:32:11,420 Chciałbym móc napisać, że w instrukcji switch. 730 00:32:11,420 --> 00:32:15,120 >> Tak to się dzieje, aby tu przyjechać, kontrola jest Ta liczba całkowita równa tej stałej? 731 00:32:15,120 --> 00:32:17,030 Jeśli nie, to będzie pominąć. 732 00:32:17,030 --> 00:32:19,880 Czy jest równa stałej dwa, i tak dalej, i tak dalej, 733 00:32:19,880 --> 00:32:22,390 aż trafisz domyślne, Jeśli żaden z nich są takie same. 734 00:32:22,390 --> 00:32:24,590 Jak tylko jeden z nich ustawiona jest równe 735 00:32:24,590 --> 00:32:27,040 to będzie to zrobić linia kodu i przerwy. 736 00:32:27,040 --> 00:32:30,990 Co oznacza, że ​​to będzie hit, który uruchomić, złamać, i po prostu całkowicie pominąć 737 00:32:30,990 --> 00:32:32,240 w dolnej części kodu. 738 00:32:32,240 --> 00:32:37,550 W tym sensie więc rodzaj funkcji jak if else if else if. 739 00:32:37,550 --> 00:32:40,830 >> Więc oto konkretny Przykładem dla was. 740 00:32:40,830 --> 00:32:46,140 Więc załóżmy, że chcę utworzyć zmienną o nazwie roku założył. 741 00:32:46,140 --> 00:32:50,230 I chcę, aby skłonić użytkownika do wejścia roku, że ich szkoła została założona. 742 00:32:50,230 --> 00:32:53,300 Więc mogę utworzyć tutaj instrukcji switch. 743 00:32:53,300 --> 00:32:56,650 I powiedzmy, że wejście 1636. 744 00:32:56,650 --> 00:33:01,120 >> Ten kod jest tu zobaczymy przełącznik roku 1636 założył co równa. 745 00:33:01,120 --> 00:33:03,940 To będzie zobaczyć sprawę 1636, ach te są równe, 746 00:33:03,940 --> 00:33:06,230 printf () nie powinny być w tym szkoły północy? 747 00:33:06,230 --> 00:33:08,770 Ponieważ zakładamy, że nie kliknij tutaj, jeśli idą do Harvardu, 748 00:33:08,770 --> 00:33:10,380 przerwy i przejść do końca. 749 00:33:10,380 --> 00:33:14,090 >> Gdybym wejściu 1701, które Zakładam, że każdy z nas będzie wejście, 750 00:33:14,090 --> 00:33:17,500 byłoby pominąć tę sprawę, przyjdź do przypadku dwóch, które jest 1701, 751 00:33:17,500 --> 00:33:19,660 i druku Witamy w Yale! 752 00:33:19,660 --> 00:33:21,360 Przerwa, przejść do końca. 753 00:33:21,360 --> 00:33:25,130 Jeszcze pewnie są tego kursu on-line, w którym case-- niesamowite powitanie 754 00:33:25,130 --> 00:33:29,020 do Yale-- to będzie, aby przejść do domyślne drukowania, Hello Internetu! 755 00:33:29,020 --> 00:33:29,870 I złamać. 756 00:33:29,870 --> 00:33:30,466 Tak. 757 00:33:30,466 --> 00:33:32,090 >> GŁOŚNIK 12: Czy można używać innego zamiast domyślnie tam? 758 00:33:32,090 --> 00:33:34,550 >> ANDI PENG: Nie, ponieważ sposób, że cała ta funkcja 759 00:33:34,550 --> 00:33:39,170 Przełącznik jest zbudowany, składnia ci trzeba użyć to sprawa przypadku domyślnym. 760 00:33:39,170 --> 00:33:42,400 To podobnie jak w przypadku innego, jeśli to jednym przypadku sprawa jest domyślny. Tak. 761 00:33:42,400 --> 00:33:45,650 GŁOŚNIK 13: Może już to powiedział, ale można mieć więcej niż dwóch przypadkach? 762 00:33:45,650 --> 00:33:48,066 ANDI PENG: Tak, mogłeś mają wiele spraw, jak chcesz. 763 00:33:48,066 --> 00:33:50,050 Pomyśl o tym, jak po prostu lubię nieskończenie dodając. 764 00:33:50,050 --> 00:33:52,396 >> GŁOŚNIK 14: Jeśli przełączane 1701 z 1636 roku, 765 00:33:52,396 --> 00:33:54,187 nie naprawdę prawo różnica? 766 00:33:54,187 --> 00:33:55,770 To jest po prostu będzie sprawdzenie tego. 767 00:33:55,770 --> 00:33:56,900 >> ANDI PENG: To bardzo dobre pytanie. 768 00:33:56,900 --> 00:33:58,880 A my dotykamy to później, ale po prostu 769 00:33:58,880 --> 00:34:01,160 Wiesz, że to przełącznik oświadczenie infinitely-- to 770 00:34:01,160 --> 00:34:03,536 bardziej wydajny niż to jeśli else if ponieważ działa 771 00:34:03,536 --> 00:34:06,660 za pomocą innego rodzaju funkcji, która pozwala, aby w istocie, po prostu 772 00:34:06,660 --> 00:34:08,790 wskoczyć prosto do Sprawa trzeba być. 773 00:34:08,790 --> 00:34:10,547 Tak. 774 00:34:10,547 --> 00:34:11,255 GŁOŚNIK 14: Spoko. 775 00:34:11,255 --> 00:34:11,754 Dzięki. 776 00:34:11,754 --> 00:34:12,526 ANDI PENG: Tak 777 00:34:12,526 --> 00:34:16,687 >> GŁOŚNIK 14: i nie można to przypadki, jak i powyżej. 778 00:34:16,687 --> 00:34:17,270 ANDI PENG: Nie 779 00:34:17,270 --> 00:34:19,860 Tak, to, co się ograniczenie o Instrukcja switch jest to, że masz 780 00:34:19,860 --> 00:34:21,564 mieć stałe, tylko, tylko liczby całkowite. 781 00:34:21,564 --> 00:34:22,064 Tak. 782 00:34:22,064 --> 00:34:25,179 783 00:34:25,179 --> 00:34:25,820 OK. 784 00:34:25,820 --> 00:34:28,659 >> Więc to jest coś, co Cię Chłopaki będzie spotkanie mniej często, 785 00:34:28,659 --> 00:34:32,280 ale ja po prostu chciałem wprowadzić go w przypadku. 786 00:34:32,280 --> 00:34:36,210 Mamy tu co zwany operator trójargumentowy. 787 00:34:36,210 --> 00:34:39,370 W przypadku, gdy w istocie, to jest po prostu jak if skompilowane w jedną linię. 788 00:34:39,370 --> 00:34:42,630 Tutaj, pójdę do następnej linii, następna strona, ponieważ łatwiej zobaczyć. 789 00:34:42,630 --> 00:34:44,860 >> Więc wszyscy widzieliśmy to prawo? 790 00:34:44,860 --> 00:34:46,110 Jest to dość łatwe do naśladowania. 791 00:34:46,110 --> 00:34:51,290 Gdybym chciał zrobić zmienną String o nazwie s, jeżeli pewna liczba 792 00:34:51,290 --> 00:34:54,770 I daje to mniej niż 100, I Aby przypisać niskiej do łańcucha, 793 00:34:54,770 --> 00:34:57,240 jeszcze chcę przypisać wysokie. 794 00:34:57,240 --> 00:35:01,370 >> To tutaj, robi dokładnie to samo te osiem linii kodu robią. 795 00:35:01,370 --> 00:35:03,600 Więc chcę stworzyć zmienną łańcuchową. 796 00:35:03,600 --> 00:35:08,520 I to jest warunek, że jestem sprawdzenie, czy liczba jest mniejsza niż 100, 797 00:35:08,520 --> 00:35:12,750 następnie przypisać wartość niska, jeszcze przypisać wartość wysoka. 798 00:35:12,750 --> 00:35:15,802 >> Te slajdy będzie online, nie martw się jeśli faceci nie dostać to w dół. 799 00:35:15,802 --> 00:35:18,510 To jest po prostu prostszy sposób, bardziej skuteczny sposób pisania kodu. 800 00:35:18,510 --> 00:35:21,290 801 00:35:21,290 --> 00:35:21,810 OK. 802 00:35:21,810 --> 00:35:25,190 >> Więc teraz mamy zamiar wejść, co dla większości ludzi 803 00:35:25,190 --> 00:35:28,660 są jak bardzo, bardzo mylące co o tym myśleć w pierwszej kolejności. 804 00:35:28,660 --> 00:35:30,226 Sekcja pętli. 805 00:35:30,226 --> 00:35:32,600 Więc dzisiaj będziemy rozmawiać około trzech rodzajów pętli. 806 00:35:32,600 --> 00:35:34,890 Mamy zamiar zacząć czas pętli, a następnie mówić o robić podczas pętli, 807 00:35:34,890 --> 00:35:36,740 a następnie rozmawiać o pętli. 808 00:35:36,740 --> 00:35:40,010 >> Tak więc zasadniczo dla bardziej uczniowie wizualne tam, 809 00:35:40,010 --> 00:35:44,410 mamy w istocie, graficzny wizerunek, co robi pętli while. 810 00:35:44,410 --> 00:35:48,290 Więc w programowaniu, należy zacząć i wprowadzenie pętli, w pewnym momencie. 811 00:35:48,290 --> 00:35:49,470 Sprawdzić stan. 812 00:35:49,470 --> 00:35:52,165 A jeśli warunek jest prawdziwy, można wykonać kod wewnątrz. 813 00:35:52,165 --> 00:35:53,790 I wrócić się i sprawdzić. 814 00:35:53,790 --> 00:35:57,190 Jeśli to wciąż prawda, biec Kod dookoła w pętli. 815 00:35:57,190 --> 00:36:00,970 >> Jednak drugi że warunek staje się fałszywy, 816 00:36:00,970 --> 00:36:02,739 masz zamiar złamać i kończy pętlę. 817 00:36:02,739 --> 00:36:05,030 I jest w zasadzie składnia masz zamiar używać. 818 00:36:05,030 --> 00:36:08,250 Podczas gdy pewien warunek prawda to zrobić, jeśli nie jest to prawdą, 819 00:36:08,250 --> 00:36:12,920 masz zamiar przejść do końca i iść do przodu z programu. 820 00:36:12,920 --> 00:36:13,690 OK. 821 00:36:13,690 --> 00:36:17,250 >> Czy ktoś ma przykład co potencjalnie może się zdarzyć 822 00:36:17,250 --> 00:36:19,160 gdy próbuję uruchomić ten kawałek kodu? 823 00:36:19,160 --> 00:36:22,470 Przy okazji, SAJ-- to Scaz, Andi, Jason-- będziemy wylogować nasze e-maile, 824 00:36:22,470 --> 00:36:24,830 Miłość, Saj. 825 00:36:24,830 --> 00:36:25,573 To nas. 826 00:36:25,573 --> 00:36:26,500 OK. 827 00:36:26,500 --> 00:36:29,829 >> Ktoś ma przykład, lub pomysł na to, co to będzie drukować? 828 00:36:29,829 --> 00:36:30,870 Rodzaj podchwytliwe pytanie. 829 00:36:30,870 --> 00:36:34,550 830 00:36:34,550 --> 00:36:39,380 Więc pamiętaj, stan sprawdzamy, jest natomiast prawdą. 831 00:36:39,380 --> 00:36:42,840 Tak więc, to jest prawda, to jest do druku, kocham Saj! 832 00:36:42,840 --> 00:36:48,460 Czy istnieje punkt, w którym bylibyśmy zmienić na cokolwiek w inny sposób? 833 00:36:48,460 --> 00:36:49,050 Nie, prawda? 834 00:36:49,050 --> 00:36:51,470 >> Więc tutaj mamy napotkał, co prawdopodobnie 835 00:36:51,470 --> 00:36:54,310 będzie podsłuch dużo programy, nieskończonej pętli. 836 00:36:54,310 --> 00:36:56,268 Przekonasz się, że jeśli Ciebie uruchomić ten kawałek kodu, 837 00:36:56,268 --> 00:36:58,160 to jest po prostu zamiar utrzymać drukowanie, kocham Saj! 838 00:36:58,160 --> 00:37:00,701 Choć doceniamy wsparcie, nie chcemy komputerów 839 00:37:00,701 --> 00:37:02,910 do katastrofy, bo Ciebie utrzymać drukowanie Kocham Saj! 840 00:37:02,910 --> 00:37:05,320 >> Więc proszę, proszę, uniknąć nieskończonej pętli 841 00:37:05,320 --> 00:37:07,320 dlatego, że nigdy nie będzie do oceny false 842 00:37:07,320 --> 00:37:08,780 i nigdy nie będziemy opuścić pętlę. 843 00:37:08,780 --> 00:37:10,530 I masz zamiar być zasysane zawsze. 844 00:37:10,530 --> 00:37:13,000 Chłodny. 845 00:37:13,000 --> 00:37:13,694 OK. 846 00:37:13,694 --> 00:37:15,610 Drugi rodzaj pętli porozmawiamy o dzisiaj 847 00:37:15,610 --> 00:37:17,580 to robić podczas pętli, robić podczas pętli. 848 00:37:17,580 --> 00:37:20,580 I to się nazywa zrobić, gdy w pętli bo masz zrobić i trochę czasu. 849 00:37:20,580 --> 00:37:24,390 Więc to jest bardzo podobne do chwili pętli, ale trochę inaczej. 850 00:37:24,390 --> 00:37:27,620 Tutaj masz zamiar zrobić co jest w środku tego 851 00:37:27,620 --> 00:37:29,747 podczas gdy pewien warunek jest spełniony. 852 00:37:29,747 --> 00:37:32,580 Więc gdybym C i komputer jestem spływały ten kawałek kodu, 853 00:37:32,580 --> 00:37:33,880 I spójrz na górze. 854 00:37:33,880 --> 00:37:36,890 Idę do C, mówię to czynił. 855 00:37:36,890 --> 00:37:40,550 A następnie sprawdzić, podczas gdy jest prawdą, muszę to powtórzyć. 856 00:37:40,550 --> 00:37:42,750 Ale jednocześnie jest to fałsz, potem ruszyć do przodu 857 00:37:42,750 --> 00:37:44,700 i nigdy nie wrócę do tej pętli ponownie. 858 00:37:44,700 --> 00:37:48,360 >> Czy ktoś może zabrać ukłucie przy jakiej różnicy 859 00:37:48,360 --> 00:37:52,130 od tej pętli i ten, który tylko spojrzał na praktycznie. 860 00:37:52,130 --> 00:37:52,717 Tak. 861 00:37:52,717 --> 00:37:55,050 GŁOŚNIK 15: Stan jest po, a nie przed? 862 00:37:55,050 --> 00:37:55,841 ANDI PENG: Dokładnie. 863 00:37:55,841 --> 00:37:57,984 Więc powiedziała stan jest po, a nie przed. 864 00:37:57,984 --> 00:38:00,400 Ostatecznie, różnica między tym i pętli while 865 00:38:00,400 --> 00:38:03,597 jest to, że jesteś po prostu zrobić co jest w środku to niezależnie od tego, 866 00:38:03,597 --> 00:38:06,430 czy twój stan jest prawda, a następnie sprawdzić stan. 867 00:38:06,430 --> 00:38:08,304 Więc w tym przypadku, że jesteś always-- w ten sposób 868 00:38:08,304 --> 00:38:11,240 jesteś zawsze upewniając co jest w środku trwa co najmniej 869 00:38:11,240 --> 00:38:14,230 raz przed sprawdzając jeśli chcesz go uruchomić ponownie. 870 00:38:14,230 --> 00:38:18,040 >> I to jest przykład kiedy chcemy go użyć. 871 00:38:18,040 --> 00:38:22,570 Tak na przykład, jeśli chcę mieć zmienna typu int o nazwie wiek, 872 00:38:22,570 --> 00:38:25,640 i chcę, aby skłonić użytkownik dla ich wieku, 873 00:38:25,640 --> 00:38:27,910 Mam zamiar zrobić printf () W jakim jesteś wieku? 874 00:38:27,910 --> 00:38:30,330 wiek = GetInt (), która jest monitowania użytkownika. 875 00:38:30,330 --> 00:38:32,140 >> A niektórzy ludzie będą naprawdę denerwujące. 876 00:38:32,140 --> 00:38:34,931 A ty nie chcesz błędów w twoim Program kogoś wprowadzania podobnych, 877 00:38:34,931 --> 00:38:36,680 oh jestem negatywne 4 lat lub cokolwiek innego. 878 00:38:36,680 --> 00:38:39,900 W takim przypadku, jeśli zrobić, to ocenia 879 00:38:39,900 --> 00:38:43,150 true, co oznacza, że ​​będę musiał wracać i to robi. 880 00:38:43,150 --> 00:38:45,310 Tak to się dzieje, aby zachować ponownie monitowania użytkownika 881 00:38:45,310 --> 00:38:47,960 dać jak prawdziwy Numer wieku i jest to 882 00:38:47,960 --> 00:38:51,930 zamierza wracać i ponawianie że dopóki nie daje prawdziwy wiek 883 00:38:51,930 --> 00:38:56,900 większa niż jeden, lub nie zero. 884 00:38:56,900 --> 00:38:58,020 >> Więc podpowiedź, wskazówkę. 885 00:38:58,020 --> 00:39:02,263 To będzie bardzo, bardzo przydatne dla jednego z problemów pset. 886 00:39:02,263 --> 00:39:04,155 Tak. 887 00:39:04,155 --> 00:39:05,580 >> GŁOŚNIK 16: Oj, przepraszam. 888 00:39:05,580 --> 00:39:06,288 >> ANDI PENG: Tak. 889 00:39:06,288 --> 00:39:09,424 >> GŁOŚNIK 16: Czy nie być dupkiem, ale-- 890 00:39:09,424 --> 00:39:10,340 ANDI PENG: Nie martw się. 891 00:39:10,340 --> 00:39:11,990 GŁOŚNIK 16: nie --are różne przepisy tutaj, 892 00:39:11,990 --> 00:39:13,810 czy po prostu zapomnieć umieścić cytat? 893 00:39:13,810 --> 00:39:14,250 >> ANDI PENG: Oh Yeah. 894 00:39:14,250 --> 00:39:15,530 Niestety, jest to całkowicie mój zły. 895 00:39:15,530 --> 00:39:17,100 To był zdecydowanie miał być cytat. 896 00:39:17,100 --> 00:39:17,690 Dobrze wychwycone. 897 00:39:17,690 --> 00:39:18,800 To by nie uruchomić. 898 00:39:18,800 --> 00:39:22,070 899 00:39:22,070 --> 00:39:22,830 OK. 900 00:39:22,830 --> 00:39:26,160 >> Tak więc ostatni rodzaj pętli będziemy rozmawiać o, a ostatecznie rodzaj najbardziej 901 00:39:26,160 --> 00:39:28,854 Kompleks jest w pętli. 902 00:39:28,854 --> 00:39:30,770 Nie martw się, jeśli nie wiesz co to znaczy. 903 00:39:30,770 --> 00:39:32,061 Jest to dość mylące na początku. 904 00:39:32,061 --> 00:39:33,640 Pójdziemy na przykład. 905 00:39:33,640 --> 00:39:37,040 >> Wszystko, co dzieje się w pętli for jest to, że masz trzy oświadczenia 906 00:39:37,040 --> 00:39:38,380 że masz zamiar dołączyć. 907 00:39:38,380 --> 00:39:42,130 Tak więc dla pewnej rzeczy, jesteś zamierza zainicjować zmienną. 908 00:39:42,130 --> 00:39:45,280 Masz zamiar dodać warunek, aby która to pętla będzie nadal działać. 909 00:39:45,280 --> 00:39:47,790 A następnie w krańcach Pętla, masz zamiar go zaktualizować. 910 00:39:47,790 --> 00:39:50,248 Możesz zaktualizować zmienną które chcesz śledzić. 911 00:39:50,248 --> 00:39:52,530 Więc zazwyczaj korzystają pętle do kiedy 912 00:39:52,530 --> 00:39:55,390 chcemy uruchomić pętlę dotyczący pewna ilość razy 913 00:39:55,390 --> 00:39:58,900 i już wiemy, Oh chcę pętla do wykonania, jak 10 razy, 914 00:39:58,900 --> 00:40:03,060 wtedy do-- pójdę na przykład na następnej stronie. 915 00:40:03,060 --> 00:40:07,830 >> Więc na przykład w Scratch, jeśli Ciebie chciał coś powtórzyć 10 razy, 916 00:40:07,830 --> 00:40:10,790 wszystko, co miał do powiedzenia było, powtórz 10 razy kocham Saj! 917 00:40:10,790 --> 00:40:15,260 który jest bardziej dopuszczalny pokaż wsparcia dla nas 918 00:40:15,260 --> 00:40:17,120 zamiast nieskończonej pętli. 919 00:40:17,120 --> 00:40:19,920 Oto, jak będzie Przejście na C i pisać 920 00:40:19,920 --> 00:40:26,040 że jest dla int-- Zamierzam utworzyć lub zadeklarować zmienną typu int o nazwie i. 921 00:40:26,040 --> 00:40:30,089 Mam zamiar zainicjować jest na 0, więc i = 0; 922 00:40:30,089 --> 00:40:31,630 i to będzie mój stan. 923 00:40:31,630 --> 00:40:33,860 Tak więc i mniej niż 10. 924 00:40:33,860 --> 00:40:36,096 A następnie w end-- ostatnia wypowiedź jesteś 925 00:40:36,096 --> 00:40:38,710 będzie musiał to aktualizacja co się dzieje z zmienna i 926 00:40:38,710 --> 00:40:40,206 w końcu twój pętli. 927 00:40:40,206 --> 00:40:42,830 Więc to trochę mylące, ponieważ różne części tej linii 928 00:40:42,830 --> 00:40:44,871 dzieją się różne rodzaje pętli. 929 00:40:44,871 --> 00:40:46,746 Ale pójdę ponad pseudokod przykładem 930 00:40:46,746 --> 00:40:50,360 a może to wyjaśnić tylko trochę lepiej. 931 00:40:50,360 --> 00:40:51,500 >> Więc tu. 932 00:40:51,500 --> 00:40:52,929 To pętla właśnie zobaczył. 933 00:40:52,929 --> 00:40:55,470 Zasadniczo w Pseudokod, co dzieje się w tym programie, 934 00:40:55,470 --> 00:40:57,940 jest pierwszym tworzę I, inicjalizacji 0. 935 00:40:57,940 --> 00:41:00,440 Jestem sprawdzając, czy ja to mniejsze niż 10, przy czym 936 00:41:00,440 --> 00:41:02,840 pierwszy raz, to jest ponieważ 0 jest mniejszy niż 10. 937 00:41:02,840 --> 00:41:04,727 Tak więc pętla będzie działać. 938 00:41:04,727 --> 00:41:06,310 A potem mam zamiar wydrukować tę linię. 939 00:41:06,310 --> 00:41:11,240 A następnie na końcu tej linii, tuż tutaj, mam zamiar zrobić, przyrost i, i ++, 940 00:41:11,240 --> 00:41:13,370 wszystko to oznacza to, zwiększany o jeden. 941 00:41:13,370 --> 00:41:15,460 >> Więc jest teraz 1. 942 00:41:15,460 --> 00:41:17,960 Bo to był kiedyś 0, jeśli zwiększyć to, że teraz jest 1. 943 00:41:17,960 --> 00:41:19,610 A potem mam zamiar wrócić rozpoczęciem pętli 944 00:41:19,610 --> 00:41:20,730 i sprawdzić stan. 945 00:41:20,730 --> 00:41:22,080 Czy warunek wciąż prawda? 946 00:41:22,080 --> 00:41:24,030 Tak, 1 jest wciąż mniejsza niż 10. 947 00:41:24,030 --> 00:41:27,370 Więc to będzie drukować to jeszcze raz, go, a następnie zwiększyć i, i sprawdzić, 948 00:41:27,370 --> 00:41:29,180 warunek w sposób ciągły, nieprzerwanie, 949 00:41:29,180 --> 00:41:33,290 aż w końcu się do punktu, w którym jest 10. 950 00:41:33,290 --> 00:41:36,300 >> Masz zamiar wydrukować to 10 razy a potem będzie równa 10. 951 00:41:36,300 --> 00:41:37,800 Masz zamiar sprawdzić stan. 952 00:41:37,800 --> 00:41:38,760 Czy 10 mniej niż 10? 953 00:41:38,760 --> 00:41:40,370 Nie, to jest fałszywe. 954 00:41:40,370 --> 00:41:43,020 W ten sposób pętla nie zamierza do pracy, to będzie złamać, 955 00:41:43,020 --> 00:41:45,040 i masz zamiar dalej z kodem. 956 00:41:45,040 --> 00:41:47,550 >> Tak jak chłopaki widzą, tego Jest to naprawdę świetny przykład 957 00:41:47,550 --> 00:41:53,110 pętli można zaprogramować w które działa na określoną ilość razy. 958 00:41:53,110 --> 00:41:54,457 Każdy, jasne? 959 00:41:54,457 --> 00:41:54,956 Tak. 960 00:41:54,956 --> 00:41:59,060 >> GŁOŚNIK 17: Jak o przyroście wykładniczo, to jest inne kodowanie? 961 00:41:59,060 --> 00:42:02,060 >> ANDI PENG: Ty can-- pójdziemy nad tym w następnym slajdzie. 962 00:42:02,060 --> 00:42:03,350 Dobre pytanie. 963 00:42:03,350 --> 00:42:05,910 Czy anyone-- zanim przejdę on-- ktoś w ogóle mylić, 964 00:42:05,910 --> 00:42:07,640 ponieważ jest to naprawdę trudne pojęcia. 965 00:42:07,640 --> 00:42:09,510 Nie martw się, jeśli you're-- OK. 966 00:42:09,510 --> 00:42:10,010 Chłodny. 967 00:42:10,010 --> 00:42:12,836 968 00:42:12,836 --> 00:42:13,490 >> W porządku. 969 00:42:13,490 --> 00:42:14,610 Tylko ogólne slajdów. 970 00:42:14,610 --> 00:42:18,020 Ta pętla, gdy jest robi dokładnie to samo dla pętli było. 971 00:42:18,020 --> 00:42:19,631 To jest po prostu napisane inaczej. 972 00:42:19,631 --> 00:42:22,130 Możecie czytać slajdy na Twojej wygody później. 973 00:42:22,130 --> 00:42:24,880 Ale po prostu wiem, że jest wielu sposoby pisać to samo 974 00:42:24,880 --> 00:42:28,300 stanie z różnych pętli. 975 00:42:28,300 --> 00:42:28,800 OK. 976 00:42:28,800 --> 00:42:32,380 >> Tak, teraz mamy na pytanie, co Jeśli mamy do pętli wewnątrz pętli. 977 00:42:32,380 --> 00:42:35,810 Dostajemy się prawdziwa Incepcja typu rzeczy tutaj. 978 00:42:35,810 --> 00:42:40,640 Gdy chcesz robić rzeczy wielokrotność razy wewnątrz innych rzeczy 979 00:42:40,640 --> 00:42:44,129 że robić rzeczy wiele razy, ci chcą czegoś, co nazywa zagnieżdżonej pętli. 980 00:42:44,129 --> 00:42:47,420 Dla tych, którzy po raz pierwszy zobaczyć i się bardzo mylić, wszystko, co robimy, 981 00:42:47,420 --> 00:42:50,580 jest o pętli for gdzie mamy zmienną rzędu. 982 00:42:50,580 --> 00:42:54,500 Ale w jej wnętrzu, mamy też inny pętli kolumny zmiennej nazywa. 983 00:42:54,500 --> 00:42:58,560 I gorąco polecam was wszystkich którzy są zdezorientowani najpierw utrzymać 984 00:42:58,560 --> 00:43:00,310 track-- zwrócić na to uwagę, zwrócić na to uwagę. 985 00:43:00,310 --> 00:43:03,000 Nie próbuj słusznej przyczyny przez to, wyciągnąć go na zewnątrz. 986 00:43:03,000 --> 00:43:06,630 >> W głowie, na tym kawałku papier, lub cokolwiek, napisać wiersz, 987 00:43:06,630 --> 00:43:08,614 śledzić, co rząd jest równy. 988 00:43:08,614 --> 00:43:10,780 Napisz kolumnę, śledzenie co kolumna jest równa. 989 00:43:10,780 --> 00:43:13,490 I śledzić to, co jest drukowanie z każdej iteracji. 990 00:43:13,490 --> 00:43:16,320 Każde powtórzenie tej pętli, każde iteracja tej większej pętli, 991 00:43:16,320 --> 00:43:17,820 po prostu zachować zgodnie z logiką. 992 00:43:17,820 --> 00:43:20,190 I gwarantuję Ci, pokochasz to, co widzisz, 993 00:43:20,190 --> 00:43:24,307 bo to bardzo zastosowanie dla swoich zbiorów problemowych. 994 00:43:24,307 --> 00:43:24,806 Chłodny. 995 00:43:24,806 --> 00:43:27,501 996 00:43:27,501 --> 00:43:28,000 W porządku. 997 00:43:28,000 --> 00:43:30,723 Więc to, co najważniejsze że chłopaki są chyba wszystko 998 00:43:30,723 --> 00:43:32,400 myśleć o tej chwili, stanowią problem Ustaw 1s, 999 00:43:32,400 --> 00:43:33,650 które są spowodowane czwartek / piątek. 1000 00:43:33,650 --> 00:43:36,890 1001 00:43:36,890 --> 00:43:39,710 >> W programie water.c, podpowiedź będziesz mieć 1002 00:43:39,710 --> 00:43:41,590 aby skłonić użytkownika do wejścia. 1003 00:43:41,590 --> 00:43:43,640 W ramach programu mario.c będziesz mieć 1004 00:43:43,640 --> 00:43:46,431 używać zagnieżdżonej pętli, który jest dla pętli wewnątrz pętli for, 1005 00:43:46,431 --> 00:43:50,247 wydrukować bloku piramidy, zasadniczo jak co Mario ma przeskoczyć. 1006 00:43:50,247 --> 00:43:53,330 A następnie wewnątrz greedy-- czy może Dokonywanie zmiany, jeśli ktoś z was chłopaki 1007 00:43:53,330 --> 00:43:55,740 kiedykolwiek słyszał that-- masz zamiar być bardzo 1008 00:43:55,740 --> 00:43:58,160 Uważaj na pierwszych wartości zmiennoprzecinkowych. 1009 00:43:58,160 --> 00:44:01,860 Pamiętaj, pływające po przecinku i liczby całkowite nie to samo. 1010 00:44:01,860 --> 00:44:03,620 Śledzić, który z nich jest którym. 1011 00:44:03,620 --> 00:44:05,953 I masz zamiar użyć Instrukcje warunkowe, jak również. 1012 00:44:05,953 --> 00:44:09,070 1013 00:44:09,070 --> 00:44:10,940 >> Dobrze, ostatnia rzecz. 1014 00:44:10,940 --> 00:44:12,770 Mam kilka pozostawił minut. 1015 00:44:12,770 --> 00:44:13,460 Styl. 1016 00:44:13,460 --> 00:44:19,320 Więc to jest coś, co nie faktycznie wpływać na wydajność, 1017 00:44:19,320 --> 00:44:21,010 lub rzeczywisty bieg kodzie. 1018 00:44:21,010 --> 00:44:24,380 Jednak jej skutki nas jako Twoje równiarki, jak czytelników. 1019 00:44:24,380 --> 00:44:27,290 Działa się, jeśli jesteś starając się znaleźć problem. 1020 00:44:27,290 --> 00:44:30,700 Wpływa to na czytelność kodu. 1021 00:44:30,700 --> 00:44:34,070 >> Więc styl, jak wtedy, gdy starasz się styl esej na angielski, jeśli 1022 00:44:34,070 --> 00:44:36,070 nie mają paragrafy, masz wszystko rodzaju 1023 00:44:36,070 --> 00:44:39,190 z pomieszane razem w jednej linii, to sprawia, że ​​bardzo trudne dla każdego 1024 00:44:39,190 --> 00:44:42,620 przeczytać esej, nawet jeśli Twoje punkty są logicznie dźwięku. 1025 00:44:42,620 --> 00:44:44,390 Samo w programowaniu. 1026 00:44:44,390 --> 00:44:47,910 Możesz mieć strasznie niejasne Kod, który obejmie Scaz, 1027 00:44:47,910 --> 00:44:49,660 i może nadal działać i funkcjonować. 1028 00:44:49,660 --> 00:44:53,110 Ale dla nas, jak twoje piękne TAs, którzy będą czytać i oceny swoich PSets, 1029 00:44:53,110 --> 00:44:54,460 to nie jest bardzo miłe. 1030 00:44:54,460 --> 00:44:56,859 >> Więc proszę, dla dobra z nas i siebie, 1031 00:44:56,859 --> 00:44:58,900 kiedy starasz się naprawić problem w kodzie, 1032 00:44:58,900 --> 00:45:00,774 i starasz się przeczytać swój własny kod, aby 1033 00:45:00,774 --> 00:45:03,910 należy postępować pewne konwencje które mamy zamiar przejść. 1034 00:45:03,910 --> 00:45:04,510 >> Więc po pierwsze. 1035 00:45:04,510 --> 00:45:07,070 Daj zmienne znaczące nazwy. 1036 00:45:07,070 --> 00:45:11,450 Jeśli chcesz zapisać liczbę całkowitą zwany wiek, należy wymienić go wieku. 1037 00:45:11,450 --> 00:45:12,875 Nie nazwać to wysokość. 1038 00:45:12,875 --> 00:45:14,750 Kiedy starasz się przechowywać wiek wysokości, 1039 00:45:14,750 --> 00:45:16,722 to sprawia, że ​​wszystko, bardzo mylące dla nas. 1040 00:45:16,722 --> 00:45:17,930 Nie podoba nam się mylić. 1041 00:45:17,930 --> 00:45:19,180 Nie podoba ci się mylić. 1042 00:45:19,180 --> 00:45:20,350 Nikt nie lubi być mylony. 1043 00:45:20,350 --> 00:45:23,100 Jeśli masz zamiar stworzyć coś, nazwać to coś znaczącego. 1044 00:45:23,100 --> 00:45:26,440 >> Jednak w pętli for single Zmienne znakowe są zazwyczaj dobrze. 1045 00:45:26,440 --> 00:45:31,350 A w pętli, jeśli chcesz po prostu ja, oraz j, k, nie krępuj się po prostu zrobić. 1046 00:45:31,350 --> 00:45:32,670 >> Zgodne inicjalizacji. 1047 00:45:32,670 --> 00:45:33,770 Więc co to oznacza? 1048 00:45:33,770 --> 00:45:37,600 Oznacza to, że technicznie, teoretycznie, można zainicjować i utworzyć 1049 00:45:37,600 --> 00:45:40,140 wielu zmiennych na tej samej linii. 1050 00:45:40,140 --> 00:45:42,820 Tak na przykład, można utworzyć liczbą całkowitą o nazwie scaz_age, 1051 00:45:42,820 --> 00:45:47,110 i całkowita nazywa andi_age = 20, i liczbą całkowitą o nazwie jason_age 1052 00:45:47,110 --> 00:45:48,090 na tej samej linii. 1053 00:45:48,090 --> 00:45:52,060 I mogę przypisać tylko jeden z im, a nie innych do wartości. 1054 00:45:52,060 --> 00:45:54,142 Prosimy was proszę, nie rób tego. 1055 00:45:54,142 --> 00:45:57,350 Bo tu już w zasadzie stworzył Trzy zmienne, ale tylko jeden z nich 1056 00:45:57,350 --> 00:45:58,295 faktycznie ma wartość. 1057 00:45:58,295 --> 00:46:00,170 I wtedy, gdy jesteśmy próbuje odczytać kodu, 1058 00:46:00,170 --> 00:46:01,850 lub jeśli starasz się naprawić problem w kodzie, 1059 00:46:01,850 --> 00:46:03,340 to jest bardzo mylące do naśladowania. 1060 00:46:03,340 --> 00:46:09,300 Tak tylko dla czytelności, na nasz czytelność, nie rób tego. 1061 00:46:09,300 --> 00:46:10,355 >> Spójne nawiasy klamrowe. 1062 00:46:10,355 --> 00:46:12,980 Niektórzy ludzie lubią umieścić swoje nawiasy klamrowe w różnych miejscach. 1063 00:46:12,980 --> 00:46:14,100 To naprawdę nie ma znaczenia. 1064 00:46:14,100 --> 00:46:17,900 Tylko upewnij się, że jesteś konsekwentny w swojej własny kod, gdzie chcesz je umieścić. 1065 00:46:17,900 --> 00:46:18,950 >> Zgodne odstępy. 1066 00:46:18,950 --> 00:46:22,040 Jeśli umieścisz miejsca po pętli, zawsze zrobić. 1067 00:46:22,040 --> 00:46:24,930 Nie tak jak rodzaj zrobić na niektóre miejsca, nie rób tego w innych. 1068 00:46:24,930 --> 00:46:26,580 Wystarczy być spójne. 1069 00:46:26,580 --> 00:46:29,500 >> Po drugie, jeśli ktoś chciałby do zapoznania się z CS50 Style Guide, 1070 00:46:29,500 --> 00:46:33,230 oficjalnie mieć przewodnika stylu, że mówi, wszystkie z tych konwencji, 1071 00:46:33,230 --> 00:46:34,890 plus więcej. 1072 00:46:34,890 --> 00:46:35,530 To jest online. 1073 00:46:35,530 --> 00:46:38,670 To jak cs50.net/style~~pobj czy coś takiego. 1074 00:46:38,670 --> 00:46:40,180 Możesz to google. 1075 00:46:40,180 --> 00:46:41,399 >> Spójność jest kluczem. 1076 00:46:41,399 --> 00:46:43,190 Więc nie martw się, co inni ludzie robią, 1077 00:46:43,190 --> 00:46:46,180 tylko upewnij się, że jesteś spójne w obrębie własnego kodu. 1078 00:46:46,180 --> 00:46:50,570 Ktoś ma jakieś pytania, które? 1079 00:46:50,570 --> 00:46:51,070 Tak. 1080 00:46:51,070 --> 00:46:53,370 >> GŁOŚNIK 18: Więc właściwa rzecz, zrobić z inicjalizacji jest tylko 1081 00:46:53,370 --> 00:46:56,130 mają je wszystkie w oddzielnym linia, jest to, że to, co mówisz? 1082 00:46:56,130 --> 00:46:58,850 >> ANDI PENG: Więc ja rzadko się to zdarzyć. 1083 00:46:58,850 --> 00:47:02,230 Ale jeśli chcesz, jeśli chcesz być jak oszczędność miejsca w kodzie, 1084 00:47:02,230 --> 00:47:04,000 lub cokolwiek, możesz to zrobić. 1085 00:47:04,000 --> 00:47:07,800 Pytamy, że po prostu nie zainicjować jedna rzecz, a nie inni. 1086 00:47:07,800 --> 00:47:12,600 Więc jeśli chcesz zrobić int scaz_age, int andi_age, int jason_age, że jest w porządku. 1087 00:47:12,600 --> 00:47:15,600 Tylko nie zainicjować jeden a nie inne jest wszystko. 1088 00:47:15,600 --> 00:47:18,380 1089 00:47:18,380 --> 00:47:19,904 >> Pytania? 1090 00:47:19,904 --> 00:47:20,850 W porządku. 1091 00:47:20,850 --> 00:47:24,610 Zamierzam przejść off mikrofon, a wskaźnik laserowy, 1092 00:47:24,610 --> 00:47:28,862 i baton do Scaz w tym momencie. 1093 00:47:28,862 --> 00:47:29,808 To jest niezręczne. 1094 00:47:29,808 --> 00:47:32,650 1095 00:47:32,650 --> 00:47:33,200 Tutaj jest. 1096 00:47:33,200 --> 00:47:34,408 >> BRIAN SCASSELLATI: Dziękuję. 1097 00:47:34,408 --> 00:47:42,500 1098 00:47:42,500 --> 00:47:43,380 Jak to na dźwięk? 1099 00:47:43,380 --> 00:47:46,420 1100 00:47:46,420 --> 00:47:47,900 Dźwięk jest dobry? , 1101 00:47:47,900 --> 00:47:49,220 Doskonałe. 1102 00:47:49,220 --> 00:47:50,350 OK. 1103 00:47:50,350 --> 00:47:52,110 Tak, cześć wszystkim. 1104 00:47:52,110 --> 00:47:56,540 >> Mam zamiar spróbować pracy poprzez praktyczny przykład z tobą. 1105 00:47:56,540 --> 00:48:00,850 I mamy zamiar używać CS50 na środowisko programistyczne, co nazywa 1106 00:48:00,850 --> 00:48:03,120 Integrated Development Environment. 1107 00:48:03,120 --> 00:48:05,145 A widzieliście ten wykazano w wykładzie. 1108 00:48:05,145 --> 00:48:07,520 Aw Problem Set 1, jesteś będzie miał okazję 1109 00:48:07,520 --> 00:48:10,890 go używać, i bawić się z Opisz i przyzwyczaić się do tego, 1110 00:48:10,890 --> 00:48:13,640 bo mamy zamiar go używać przez resztę semestru. 1111 00:48:13,640 --> 00:48:20,350 >> Więc w tym IDE, co wygląda jak bardzo tradycyjnej przeglądarki plików 1112 00:48:20,350 --> 00:48:21,890 na jednej stronie. 1113 00:48:21,890 --> 00:48:24,360 Masz część się góry, gdzie idziesz 1114 00:48:24,360 --> 00:48:28,850 aby zobaczyć kod źródłowy, twój Cfile, kod, który piszesz. 1115 00:48:28,850 --> 00:48:31,880 Iw dół dołu, będziesz mają okno terminala 1116 00:48:31,880 --> 00:48:36,330 którego będziesz używać do zarówno skompilować program 1117 00:48:36,330 --> 00:48:39,090 i uruchomić lub wykonać program. 1118 00:48:39,090 --> 00:48:40,100 OK. 1119 00:48:40,100 --> 00:48:46,560 >> Więc po prostu dać nam trochę fundacja, w tym oknie terminala, 1120 00:48:46,560 --> 00:48:48,930 masz zamiar być za pomocą zestawu rozkazów 1121 00:48:48,930 --> 00:48:53,040 które są standardowe polecenia całym większość systemów Unix lub Linux. 1122 00:48:53,040 --> 00:48:55,890 I tak, jeśli kiedykolwiek używałeś każda forma Unix, Ubuntu, 1123 00:48:55,890 --> 00:48:59,140 lub dowolne z innych smakach to będzie wyglądać znajomo. 1124 00:48:59,140 --> 00:49:00,890 >> Jeśli nie, nie martw się. 1125 00:49:00,890 --> 00:49:02,830 Nie ma nic skomplikowanego w nich. 1126 00:49:02,830 --> 00:49:05,330 Oni tylko za pomocą innego składni, różne nazewnictwo 1127 00:49:05,330 --> 00:49:07,630 Konwencja niż ty widziałeś wcześniej. 1128 00:49:07,630 --> 00:49:12,190 >> Więc do listy z plików obrębie danego katalogu 1129 00:49:12,190 --> 00:49:15,310 oni będą używać Komenda nazywa ls lub Lista. 1130 00:49:15,310 --> 00:49:18,010 Jeśli chcesz zobaczyć wszystko ze wszystkimi szczegółami, 1131 00:49:18,010 --> 00:49:21,535 musisz użyć polecenia Argument linia z ls -l. 1132 00:49:21,535 --> 00:49:23,910 I że pokażę wam wszystko Bardziej szczegółowo, w tym 1133 00:49:23,910 --> 00:49:26,270 uprawnienia do pliku. 1134 00:49:26,270 --> 00:49:31,190 >> Aby zmienić katalog, musisz użyć polecenia cd. 1135 00:49:31,190 --> 00:49:35,180 I będziesz mógł zmienić katalog zarówno w celu przejdź do katalogu domowego. 1136 00:49:35,180 --> 00:49:38,500 To tylko cd wszystkim Sam, cd z dwoma 1137 00:49:38,500 --> 00:49:42,930 kropki spowoduje powrót do jednego Poziom do poprzedniego katalogu. 1138 00:49:42,930 --> 00:49:46,400 I można również płyty CD na podkatalogu wpisując cd 1139 00:49:46,400 --> 00:49:48,500 i nazwa tego katalogu. 1140 00:49:48,500 --> 00:49:50,540 >> Można również tworzyć nowe katalogi. 1141 00:49:50,540 --> 00:49:52,790 I będziemy chodzić przez to w zaledwie minutę. 1142 00:49:52,790 --> 00:49:54,498 Ale po prostu umieścić wszystko na ekranie. 1143 00:49:54,498 --> 00:49:56,310 Tak, że można je zobaczyć. 1144 00:49:56,310 --> 00:50:00,420 >> Będziesz mieć również możliwość bezpośrednio manipulować pliki 1145 00:50:00,420 --> 00:50:02,100 z linii poleceń. 1146 00:50:02,100 --> 00:50:06,059 Będziesz mógł je skopiować, do przenieść je lub je usunąć, 1147 00:50:06,059 --> 00:50:07,600 czyli efektywnie, aby je usunąć. 1148 00:50:07,600 --> 00:50:10,310 1149 00:50:10,310 --> 00:50:15,350 >> CS50 IDE daje pełny siła argumentów wiersza poleceń. 1150 00:50:15,350 --> 00:50:20,280 A to oznacza, można również to bardzo niebezpieczne rzeczy. 1151 00:50:20,280 --> 00:50:21,560 OK. 1152 00:50:21,560 --> 00:50:25,010 Na przykład, można usunąć, lub że jest kasowania, 1153 00:50:25,010 --> 00:50:28,750 plik bez pytania o potwierdzenie. 1154 00:50:28,750 --> 00:50:31,820 I można nawet usunąć recursively-- to 1155 00:50:31,820 --> 00:50:38,940 kreska r flag-- tam całego podkatalog i całą jego zawartość. 1156 00:50:38,940 --> 00:50:39,660 OK. 1157 00:50:39,660 --> 00:50:42,940 Są one wymienione w czerwonym, bo Ciebie należy myśleć "niebezpieczeństwo" za każdym razem, 1158 00:50:42,940 --> 00:50:45,000 widzisz te rzeczy. 1159 00:50:45,000 --> 00:50:45,920 OK. 1160 00:50:45,920 --> 00:50:46,420 W porządku. 1161 00:50:46,420 --> 00:50:50,090 1162 00:50:50,090 --> 00:50:53,430 >> Teraz wreszcie rzeczy, które są będzie bardzo cenne dla Ciebie, 1163 00:50:53,430 --> 00:50:57,270 są tam kilka dobrych sztuczek wiedzieć, jak jesteś nawigacji 1164 00:50:57,270 --> 00:50:59,190 przez ten oknie terminala. 1165 00:50:59,190 --> 00:51:03,590 Po pierwsze, można wyczyścić ekran w za każdym razem, poprzez wpisanie w jasne. 1166 00:51:03,590 --> 00:51:06,310 I masz zamiar zobaczyć mnie do tego dość często. 1167 00:51:06,310 --> 00:51:09,990 Możesz też po prostu wyświetlić treść pliku 1168 00:51:09,990 --> 00:51:13,992 wpisując Więcej, a następnie nazwę pliku. 1169 00:51:13,992 --> 00:51:17,200 Będziesz wtedy mógł przewinąć do tyłu i dalej z tym tylko spacją 1170 00:51:17,200 --> 00:51:19,010 i klawiszy strzałek. 1171 00:51:19,010 --> 00:51:25,450 >> Jeśli tak, jak my dzisiaj w wykładzie, program, który działa nieprzerwanie 1172 00:51:25,450 --> 00:51:29,190 w nieskończonej pętli, można można zatrzymać ten program 1173 00:51:29,190 --> 00:51:35,160 z wykonania przez wpisanie w kontroli, że jest przytrzymując Control-C. 1174 00:51:35,160 --> 00:51:38,360 A może trzeba zrobić to wiele razy. 1175 00:51:38,360 --> 00:51:40,620 Komputer staje się daleko przed wami. 1176 00:51:40,620 --> 00:51:43,380 I czasami trzeba dać mu kilka prób 1177 00:51:43,380 --> 00:51:46,280 zanim faktycznie przechodzą. 1178 00:51:46,280 --> 00:51:48,760 >> Będziesz także być w stanie sortowania poleceń 1179 00:51:48,760 --> 00:51:54,230 że po prostu wpisane za pomocą przycisku w górę, klawisz strzałki, a następnie klawisz strzałki w dół. 1180 00:51:54,230 --> 00:51:57,560 A co jest najbardziej przydatna jest zamiast wpisywać się długie nazwy plików, 1181 00:51:57,560 --> 00:52:02,209 będziesz w stanie karcie stosowania na uzupełni kilka wskazówek. 1182 00:52:02,209 --> 00:52:04,750 Teraz jedziemy do wykazania wszystkie z nich w ciągu sekundy. 1183 00:52:04,750 --> 00:52:06,780 Więc jeśli nie pamiętam je, nie martw się. 1184 00:52:06,780 --> 00:52:10,780 Są to rzeczy, które będziesz podnieść i wykorzystać jako idziemy. 1185 00:52:10,780 --> 00:52:11,470 OK. 1186 00:52:11,470 --> 00:52:18,830 >> Tak więc w przeciwieństwie do Scratch-- C-- C jest skompilowany języka. 1187 00:52:18,830 --> 00:52:23,210 Oznacza to, że mamy zamiar podjąć źródło file-- to tekst, który piszesz, 1188 00:52:23,210 --> 00:52:26,500 Polecenia, które piszesz, tym printf () oświadczenia, pętle, 1189 00:52:26,500 --> 00:52:32,580 wszystko else-- i będziemy wziąć ten plik i przekazać go 1190 00:52:32,580 --> 00:52:34,670 do programu o nazwie kompilatora. 1191 00:52:34,670 --> 00:52:39,850 >> Kompilator następnie że tekst, który napisałeś 1192 00:52:39,850 --> 00:52:43,270 i przełożyć je na instrukcje binarne 1193 00:52:43,270 --> 00:52:46,010 że komputer jest rzeczywiście będzie wykorzystanie. 1194 00:52:46,010 --> 00:52:49,700 To się nazywa przedmiot lub plik wykonywalny. 1195 00:52:49,700 --> 00:52:55,320 Jeśli spojrzeć na tym pliku, będziesz aby zobaczyć kod, który napisałeś. 1196 00:52:55,320 --> 00:52:59,480 Jeśli spojrzeć na tym pliku, będziesz zobaczyć losowy ciąg znaków 1197 00:52:59,480 --> 00:53:01,680 że nie ma sensu w ogóle. 1198 00:53:01,680 --> 00:53:03,250 To dlatego, że jest to binarny. 1199 00:53:03,250 --> 00:53:05,560 To nie znaczy, aby czytać. 1200 00:53:05,560 --> 00:53:08,690 >> Jednak za każdym razem chcesz uruchomić coś, co masz zamiar 1201 00:53:08,690 --> 00:53:13,670 być uruchomiony jest plik ten przedmiot. 1202 00:53:13,670 --> 00:53:19,110 Tak więc, gdy pracujemy z nich Pliki, będziemy pisać do pliku w C 1203 00:53:19,110 --> 00:53:23,400 Będziemy następnie skompilować go, za pomocą Polecenie jak marki, który będzie wywoływał 1204 00:53:23,400 --> 00:53:27,070 dzyń kompilator języka C. 1205 00:53:27,070 --> 00:53:31,530 I że będzie produkować obiektu złożyć, jak out, lub w tym przypadku, 1206 00:53:31,530 --> 00:53:36,580 nazwa, mój plik, który umieściłem w. 1207 00:53:36,580 --> 00:53:37,780 W porządku. 1208 00:53:37,780 --> 00:53:39,790 >> Więc rzeczywiście spróbować. 1209 00:53:39,790 --> 00:53:42,850 Więc wpadłem na przykład z tego, co chciałem spróbować. 1210 00:53:42,850 --> 00:53:47,380 A jedną z rzeczy, które Fascynuje mnie to, animacja. 1211 00:53:47,380 --> 00:53:51,010 Tak więc mamy zamiar spróbować zrobić trochę animacji 1212 00:53:51,010 --> 00:53:53,760 używając tylko znaki ASCII. 1213 00:53:53,760 --> 00:53:56,470 Znaków możemy wydrukować łatwo teraz. 1214 00:53:56,470 --> 00:54:00,890 >> Więc tutaj jest mój najlepszy próba stworzenie dla Ciebie 1215 00:54:00,890 --> 00:54:07,005 animacja króliczka uruchomiony przez wysoką trawę. 1216 00:54:07,005 --> 00:54:07,505 Tam jest. 1217 00:54:07,505 --> 00:54:10,150 1218 00:54:10,150 --> 00:54:10,670 OK. 1219 00:54:10,670 --> 00:54:14,050 Więc on nie jest jeszcze uruchomiony, ale jest stoi w wysokiej trawie. 1220 00:54:14,050 --> 00:54:17,810 >> Teraz gdybym był animatorem, w starej szkole 1221 00:54:17,810 --> 00:54:20,860 wersja animacji, co ja zrobi to chciałbym produkować 1222 00:54:20,860 --> 00:54:23,640 obraz tego bunny w trawie. 1223 00:54:23,640 --> 00:54:25,390 A potem chciałbym produkować kolejny picture-- 1224 00:54:25,390 --> 00:54:30,600 innego, co nazywa cell--, że miał króliczka tylko nieznacznie poruszył. 1225 00:54:30,600 --> 00:54:34,870 A potem trzeci, który miał króliczek przeniósł się trochę dalej. 1226 00:54:34,870 --> 00:54:40,610 >> I chciałbym produkować całej karty Kolejność tych komórek. 1227 00:54:40,610 --> 00:54:44,220 Niektóre gdzie króliczek jest ponad na lewej stronie. 1228 00:54:44,220 --> 00:54:47,050 A następnie porusza się powoli, jeden przez jednego kierunku środku. 1229 00:54:47,050 --> 00:54:51,120 A następnie od środka na prawo. 1230 00:54:51,120 --> 00:54:55,760 A gdybym był wtedy naprawdę szczęście, mogłem umieścić go razem 1231 00:54:55,760 --> 00:54:57,970 i może je ożywić. 1232 00:54:57,970 --> 00:55:00,370 I jest mój króliczek przebiegającej przez trawy. 1233 00:55:00,370 --> 00:55:02,310 >> To moja wielka PowerPoint oszukać na dzień. 1234 00:55:02,310 --> 00:55:02,809 OK. 1235 00:55:02,809 --> 00:55:04,760 Więc to jest tak dobre, jak to robi. 1236 00:55:04,760 --> 00:55:05,260 OK. 1237 00:55:05,260 --> 00:55:08,455 Tak, tu jeszcze raz, tu jest nasz króliczek przebiegającej przez trawy. 1238 00:55:08,455 --> 00:55:09,217 >> GŁOŚNIK 19: Jeszcze raz. 1239 00:55:09,217 --> 00:55:11,050 BRIAN SCASSELLATI: Jeden więcej czasu, wszystko w porządku. 1240 00:55:11,050 --> 00:55:11,940 Oto twój króliczek. 1241 00:55:11,940 --> 00:55:12,940 OK. 1242 00:55:12,940 --> 00:55:15,470 >> Więc dzisiaj, co będziemy zrobić, to jedziemy 1243 00:55:15,470 --> 00:55:21,110 spróbować zautomatyzować proces wytwarzania tych komórek. 1244 00:55:21,110 --> 00:55:24,135 Nie będziemy dość dostać się do punktu jest w stanie umieścić je wszystkie razem. 1245 00:55:24,135 --> 00:55:28,900 Ale mamy zamiar spróbować zautomatyzować Proces generowania tej sekwencji. 1246 00:55:28,900 --> 00:55:32,900 >> I to jest dużo co animacja dziś jest podobne. 1247 00:55:32,900 --> 00:55:36,690 To znaczy, nie robić rzeczy, niekoniecznie rysując wszystko ręcznie. 1248 00:55:36,690 --> 00:55:40,610 Używamy komputera do automatyzacji Części tego procesu. 1249 00:55:40,610 --> 00:55:41,110 OK. 1250 00:55:41,110 --> 00:55:47,720 >> Więc pozwól mi przełączyć teraz do naszego CS50 IDE. 1251 00:55:47,720 --> 00:55:54,260 I stworzyliśmy dla us-- i pozwól mi przybliżyć tutaj trochę bit-- skończyłem 1252 00:55:54,260 --> 00:55:58,420 stworzony dla nas punktem wyjścia. 1253 00:55:58,420 --> 00:56:03,830 >> Za każdym razem, prosimy siedzieć w dół i napisać kawałek kodu, 1254 00:56:03,830 --> 00:56:09,250 co tak naprawdę pytaniem o wykonanie jest, że pytamy, aby rozwiązać problem. 1255 00:56:09,250 --> 00:56:11,810 A sposób, że zalecana myśleć o robi, że 1256 00:56:11,810 --> 00:56:17,900 Jest zaczynając od niektórych proste częścią tego rozwiązania. 1257 00:56:17,900 --> 00:56:21,730 A następnie zbudować z tej części. 1258 00:56:21,730 --> 00:56:23,400 I to, co mamy zamiar zrobić dzisiaj. 1259 00:56:23,400 --> 00:56:27,570 >> Więc zamiast próbować od razu do Napisać całą masę kodu, który jest 1260 00:56:27,570 --> 00:56:30,770 będzie produkować te 10 komórki animacji, 1261 00:56:30,770 --> 00:56:35,506 mamy zamiar rozpocząć zamiast z jednego kawałka, który działa. 1262 00:56:35,506 --> 00:56:37,380 I wtedy będziemy budować trochę dookoła, że 1263 00:56:37,380 --> 00:56:39,740 i trochę więcej i trochę więcej. 1264 00:56:39,740 --> 00:56:42,550 >> Teraz dobre rzeczy na temat rozwiązywania problemów w ten sposób 1265 00:56:42,550 --> 00:56:46,716 jest to, że pozwoli to na rozpoczęcie zawsze z czymś, co wiesz 1266 00:56:46,716 --> 00:56:51,130 robót i przedstawić jedno stopniowe zmiany. 1267 00:56:51,130 --> 00:56:54,090 I to jest to świetny sposób, dowiedzieć się, jak do kodu, 1268 00:56:54,090 --> 00:56:58,590 bo za każdym razem zrobić Zmiana, widzisz, jaki wpływ ma. 1269 00:56:58,590 --> 00:56:59,540 OK. 1270 00:56:59,540 --> 00:57:01,450 >> Więc tutaj jest nasz punkt wyjścia. 1271 00:57:01,450 --> 00:57:01,950 OK. 1272 00:57:01,950 --> 00:57:08,030 Więc na początku mojego pliku, Mam hash #included stdio.h. 1273 00:57:08,030 --> 00:57:12,560 To jest tak, że mogę dostać printf () do pracy. 1274 00:57:12,560 --> 00:57:15,240 >> I wtedy mam głównej funkcji. 1275 00:57:15,240 --> 00:57:18,760 I to wciąż wygląda trochę Arcane lub niejasne dla niektórych z was. 1276 00:57:18,760 --> 00:57:20,010 Dobrze. 1277 00:57:20,010 --> 00:57:23,190 Wszystko to mówi się, że główną funkcją ma 1278 00:57:23,190 --> 00:57:27,830 nie arguments-- void środki nic w C i to 1279 00:57:27,830 --> 00:57:29,940 powraca by konwencji liczbą całkowitą. 1280 00:57:29,940 --> 00:57:33,290 Głównym zawsze zwraca liczbę całkowitą, Zazwyczaj kod mówiąc rzeczy 1281 00:57:33,290 --> 00:57:35,071 poszło dobrze i nie dobrze. 1282 00:57:35,071 --> 00:57:35,570 OK. 1283 00:57:35,570 --> 00:57:39,110 Ale głównym musi mieć, że stanowią dla nas teraz. 1284 00:57:39,110 --> 00:57:42,080 >> Mam następnie umieścić w trzech linii kodu. 1285 00:57:42,080 --> 00:57:46,760 A wraz z każdym wierszu Kod, mam umieścić komentarz. 1286 00:57:46,760 --> 00:57:51,340 Teraz jedna z rzeczy, które będziemy nalegać, aby to zrobić, 1287 00:57:51,340 --> 00:57:55,320 i to jest takie ważne Praktyka programowania, 1288 00:57:55,320 --> 00:57:57,800 jest zawsze skomentować swój kod. 1289 00:57:57,800 --> 00:58:02,550 Zawsze należy zapisać w sposób Angielski komentarz coś 1290 00:58:02,550 --> 00:58:06,740 że myślisz Kod ma robić. 1291 00:58:06,740 --> 00:58:11,360 W ten sposób, później po powrocie do że można spojrzeć na to i można powiedzieć, 1292 00:58:11,360 --> 00:58:13,800 Och, ja pamiętam, co było stara się zrobić z tym. 1293 00:58:13,800 --> 00:58:17,590 Albo gdy TA siada z tobą starają się pomóc w godzinach pracy urzędu, 1294 00:58:17,590 --> 00:58:20,890 mogą patrzeć na to i odejść, zobacz, co staraliśmy się zrobić, 1295 00:58:20,890 --> 00:58:25,630 lecz jest tego, co się naprawdę dzieje. 1296 00:58:25,630 --> 00:58:26,130 OK. 1297 00:58:26,130 --> 00:58:30,300 >> Więc mam trzy części do mojego kodu, Mam zamiar przede wszystkim drukiem 1298 00:58:30,300 --> 00:58:33,110 z niektórych punktów na początku. 1299 00:58:33,110 --> 00:58:37,480 Wtedy będę wydrukować my bardzo fantazyjne króliczek. 1300 00:58:37,480 --> 00:58:40,600 A nawet nieco kropki na końcu. 1301 00:58:40,600 --> 00:58:45,220 >> I te trzy oświadczenia druku powinien wygląda znajomo dla Ciebie w tym momencie. 1302 00:58:45,220 --> 00:58:47,350 Wszystko, co robię w każdy z nich jest, że jestem 1303 00:58:47,350 --> 00:58:49,780 drukowanie sekwencję znaków. 1304 00:58:49,780 --> 00:58:51,370 Nie ma zmienne związane. 1305 00:58:51,370 --> 00:58:54,320 Wszystko jest płaskie. 1306 00:58:54,320 --> 00:58:55,270 OK. 1307 00:58:55,270 --> 00:59:07,340 >> Więc jeśli zejść teraz do mojego terminal-- Zobaczmy, czy uda mi się to z powrotem out-- 1308 00:59:07,340 --> 00:59:09,370 i mam zamiar ponownie wpisać jasne. 1309 00:59:09,370 --> 00:59:12,507 >> GŁOŚNIK 20: Czy możemy użyć podwójny ukośnik dodać komentarz? 1310 00:59:12,507 --> 00:59:14,340 BRIAN SCASSELLATI: Czy użyj double-- tak. 1311 00:59:14,340 --> 00:59:16,920 Istnieje wiele sposobów komentarze w C. One 1312 00:59:16,920 --> 00:59:19,440 sposobem jest użycie podwójnego ukośnika. 1313 00:59:19,440 --> 00:59:24,910 Drugim jest użycie slash i gwiazdkę a następnie zamknij gwiazdką i ukośnikiem. 1314 00:59:24,910 --> 00:59:26,110 W porządku. 1315 00:59:26,110 --> 00:59:28,950 >> Przede wszystkim mam zamiar rozpocząć nawigację tutaj. 1316 00:59:28,950 --> 00:59:35,350 Więc jeśli pójdę do mojego katalogu domowego, Zmieniłem katalogów tam, 1317 00:59:35,350 --> 00:59:40,230 Będę patrzeć i widzieć, co jest w tym katalogu, ls, wymienić się. 1318 00:59:40,230 --> 00:59:43,230 Idę zobaczyć, że mam ma dwa podkatalogi. 1319 00:59:43,230 --> 00:59:47,910 Zróbmy to trochę większe tutaj tak, że wszyscy możemy zobaczyć. 1320 00:59:47,910 --> 00:59:50,610 >> Widzę, że mam ma dwa podkatalogi. 1321 00:59:50,610 --> 00:59:53,510 Zmienię katalogu iść do pracy. 1322 00:59:53,510 --> 00:59:58,380 I mam zamiar tylko wpisać się część, a potem po prostu wciskamy Tab. 1323 00:59:58,380 --> 01:00:01,520 I będzie ona zakończyć resztę dla mnie. 1324 01:00:01,520 --> 01:00:03,370 Fancy. 1325 01:00:03,370 --> 01:00:04,960 >> Będę patrzeć i widzieć w pracy. 1326 01:00:04,960 --> 01:00:08,431 A teraz jestem w pracy na SuperSection 1327 01:00:08,431 --> 01:00:09,680 że uczysz teraz. 1328 01:00:09,680 --> 01:00:10,971 Więc pójdę do tego katalogu. 1329 01:00:10,971 --> 01:00:14,770 1330 01:00:14,770 --> 01:00:15,970 I wreszcie, patrzeć i widzieć. 1331 01:00:15,970 --> 01:00:18,480 A ja mam tego pliku bunny.c. 1332 01:00:18,480 --> 01:00:20,980 >> Dobrze więc pozwól mi czysta. 1333 01:00:20,980 --> 01:00:24,370 I mam zamiar znowu jestem now-- nadal pobytu w tym katalogu 1334 01:00:24,370 --> 01:00:27,540 i to mówi mi, że jestem w że katalog SuperSection. 1335 01:00:27,540 --> 01:00:30,690 Mam zamiar iść do przodu i mój program króliczka. 1336 01:00:30,690 --> 01:00:33,730 1337 01:00:33,730 --> 01:00:38,810 I to polecenie, aby króliczka, podczas gdy brzmiące trochę dziwne, 1338 01:00:38,810 --> 01:00:42,960 również wywołuje kompilator clang. 1339 01:00:42,960 --> 01:00:46,470 >> I to jest produkowane przez mi wyjście, które jest 1340 01:00:46,470 --> 01:00:52,130 wykonywalny funny-- Plik wykonywalny nazywa króliczka. 1341 01:00:52,130 --> 01:00:52,700 OK. 1342 01:00:52,700 --> 01:00:56,700 Mogę wtedy, i to brzmi jeszcze gorzej, wykonać króliczka. 1343 01:00:56,700 --> 01:00:59,360 1344 01:00:59,360 --> 01:01:00,680 OK. 1345 01:01:00,680 --> 01:01:03,150 I zobaczmy, co robi. 1346 01:01:03,150 --> 01:01:04,527 OK. 1347 01:01:04,527 --> 01:01:06,360 To trochę czego się spodziewałem. 1348 01:01:06,360 --> 01:01:11,290 Mam moje zdjęcie króliczka tam, ale rodzaj chciał to wszystko sama. 1349 01:01:11,290 --> 01:01:13,186 Co mnie ominęło? 1350 01:01:13,186 --> 01:01:14,478 >> GŁOŚNIK 21: Slash l lub ukośnik n. 1351 01:01:14,478 --> 01:01:15,602 BRIAN SCASSELLATI: Slash n. 1352 01:01:15,602 --> 01:01:16,580 OK. 1353 01:01:16,580 --> 01:01:18,800 Więc wróćmy tutaj. 1354 01:01:18,800 --> 01:01:20,330 A ja się z tym. 1355 01:01:20,330 --> 01:01:23,320 I wrócę do tego. 1356 01:01:23,320 --> 01:01:27,720 I niech spojrzeć teraz z mojej głównej funkcji tutaj. 1357 01:01:27,720 --> 01:01:29,280 >> Więc co powinienem zrobić? 1358 01:01:29,280 --> 01:01:30,465 Chcę, aby zakończyć linię. 1359 01:01:30,465 --> 01:01:34,020 1360 01:01:34,020 --> 01:01:35,800 Więc będę umieścić w komentarzu. 1361 01:01:35,800 --> 01:01:38,430 Włożę w printf (). 1362 01:01:38,430 --> 01:01:41,350 I co mam umieścić w? 1363 01:01:41,350 --> 01:01:41,890 / n. 1364 01:01:41,890 --> 01:01:43,480 OK. 1365 01:01:43,480 --> 01:01:46,040 Co mam do końca go? 1366 01:01:46,040 --> 01:01:47,100 Średnik. 1367 01:01:47,100 --> 01:01:48,730 W porządku. 1368 01:01:48,730 --> 01:01:52,880 >> Teraz jeden z naprawdę ważne rzeczy, to upewnij się, 1369 01:01:52,880 --> 01:01:56,720 za każdym razem gdy coś zmienić w kodzie, które go zapisać. 1370 01:01:56,720 --> 01:02:01,380 Jeśli nie zapisałeś swój kod, jesteś odnotuje trochę gwiazda tam. 1371 01:02:01,380 --> 01:02:03,420 I mówi, że gwiazda cię nie zapisany ten kod. 1372 01:02:03,420 --> 01:02:07,790 >> Jeśli mogę skompilować to teraz, to nie jest będzie odzwierciedlać żadnej z tych zmian, 1373 01:02:07,790 --> 01:02:11,680 ponieważ kompilator patrzy na pliku to jest na dysku, a nie pliku to 1374 01:02:11,680 --> 01:02:13,790 otworzyć w edytorze. 1375 01:02:13,790 --> 01:02:14,290 W porządku. 1376 01:02:14,290 --> 01:02:20,830 >> Warto więc zapisać, a potem pójdziemy prawo na dół tutaj, wróć na zewnątrz. 1377 01:02:20,830 --> 01:02:24,670 Przyjdź do mojego terminalu. 1378 01:02:24,670 --> 01:02:27,193 I niech jeszcze raz wyczyścić przestrzeń. 1379 01:02:27,193 --> 01:02:30,690 1380 01:02:30,690 --> 01:02:35,760 >> I możemy iść do przodu i jeden czas, aby nasz program króliczka. 1381 01:02:35,760 --> 01:02:40,180 I wykonać króliczka. 1382 01:02:40,180 --> 01:02:42,500 To nie działało. 1383 01:02:42,500 --> 01:02:43,950 Źle ukośnik. 1384 01:02:43,950 --> 01:02:52,280 Więc jeśli spojrzeć na to, co mam, mogę umieścić / n tam, ale miałem zły slash. 1385 01:02:52,280 --> 01:02:56,190 >> Wszystko, że komputer Czy jest bardzo wyraźne. 1386 01:02:56,190 --> 01:02:57,230 OK? 1387 01:02:57,230 --> 01:03:01,250 Jeden mały błąd, interpunkcji i nagle nie dostaniesz, co chcesz. 1388 01:03:01,250 --> 01:03:01,750 W porządku. 1389 01:03:01,750 --> 01:03:03,740 Więc znowu widok. 1390 01:03:03,740 --> 01:03:04,410 Wrócimy. 1391 01:03:04,410 --> 01:03:07,930 Cóż zrobić, że bardzo szybkie naprawy. 1392 01:03:07,930 --> 01:03:09,270 Będziemy umieścić ukośnik w prawo. 1393 01:03:09,270 --> 01:03:10,570 Będziemy go zapisać. 1394 01:03:10,570 --> 01:03:13,410 Będziemy widok. 1395 01:03:13,410 --> 01:03:16,730 >> Z jakiegoś powodu, że nie jest jest szczęśliwy, ale idziemy do przodu 1396 01:03:16,730 --> 01:03:19,850 i wrócimy do terminalu tutaj. 1397 01:03:19,850 --> 01:03:22,940 Usunąć ją. 1398 01:03:22,940 --> 01:03:24,880 Będziemy powiększyć. 1399 01:03:24,880 --> 01:03:28,410 I jeszcze raz, zrobimy króliczka. 1400 01:03:28,410 --> 01:03:32,360 A teraz na pewno wystarczy, to działa. 1401 01:03:32,360 --> 01:03:33,240 Brawo. 1402 01:03:33,240 --> 01:03:34,300 OK. 1403 01:03:34,300 --> 01:03:39,580 >> Więc spróbujmy zrobić to nieco bardziej ogólnie. 1404 01:03:39,580 --> 01:03:46,750 Zobaczymy, czy zamiast tylko wydruk jednej konkretnej klatki, 1405 01:03:46,750 --> 01:03:49,610 Zobaczmy, czy możemy zrobić to tak, że możemy uzyskać wszystkie 10 1406 01:03:49,610 --> 01:03:52,960 z tych animowanych ramkach że chcieliśmy mieć. 1407 01:03:52,960 --> 01:03:56,550 Więc jeszcze raz, rzućmy Ten etap w czasie. 1408 01:03:56,550 --> 01:03:59,900 >> Niech najpierw uogólnienia, nie tak, aby zrobić wszystkie klatki, 1409 01:03:59,900 --> 01:04:03,990 ale jak to zrobić w jedno Rama, że ​​może chcę. 1410 01:04:03,990 --> 01:04:05,920 Więc co za różnica pomiędzy ramami? 1411 01:04:05,920 --> 01:04:07,377 Czy królik to samo? 1412 01:04:07,377 --> 01:04:07,960 PUBLICZNOŚCI: Tak. 1413 01:04:07,960 --> 01:04:08,390 BRIAN SCASSELLATI: Tak. 1414 01:04:08,390 --> 01:04:09,370 Co za różnica? 1415 01:04:09,370 --> 01:04:10,246 >> PUBLICZNOŚCI: stanowisko. 1416 01:04:10,246 --> 01:04:11,870 BRIAN SCASSELLATI: Jego pozycja, prawda? 1417 01:04:11,870 --> 01:04:15,590 I jak kontrolować swoją pozycję? 1418 01:04:15,590 --> 01:04:17,340 Ile kropki jestem umieszczenie na początku 1419 01:04:17,340 --> 01:04:19,048 i ile kropki jestem umieszczenie na końcu. 1420 01:04:19,048 --> 01:04:21,970 Więc miałem pięć u poczynając pięć na końcu. 1421 01:04:21,970 --> 01:04:28,320 >> Miejmy zastąpienie tego pięć z pętli for. 1422 01:04:28,320 --> 01:04:29,380 OK. 1423 01:04:29,380 --> 01:04:32,330 I mam zamiar stworzyć dla Pętla teraz powie, 1424 01:04:32,330 --> 01:04:37,800 Mam zamiar wydrukować jakiś numer kropek na początku. 1425 01:04:37,800 --> 01:04:39,600 Zamierzam użyć zmiennej. 1426 01:04:39,600 --> 01:04:44,150 Powiedzmy, może ja jako licznik w moim pętli. 1427 01:04:44,150 --> 01:04:47,200 I mam zamiar zadeklarować go góry. 1428 01:04:47,200 --> 01:04:49,360 >> A następnie w pętli for I trzeba zrobić trzy rzeczy. 1429 01:04:49,360 --> 01:04:52,340 Pierwszą rzeczą, którą musisz zrobić, jest potrzebne, aby zainicjować i. 1430 01:04:52,340 --> 01:04:56,570 Co należy zainicjować go, aby zacząć być? 1431 01:04:56,570 --> 01:04:57,160 0. 1432 01:04:57,160 --> 01:04:58,310 OK. 1433 01:04:58,310 --> 01:05:00,950 >> To muszę powiedzieć, co jest stan rozwiązanie? 1434 01:05:00,950 --> 01:05:03,020 Kiedy powinienem przestać? 1435 01:05:03,020 --> 01:05:05,983 Cóż, ile kropek prawda Aby wydrukować na ten jeden? 1436 01:05:05,983 --> 01:05:06,921 >> PUBLICZNOŚCI: Pięć. 1437 01:05:06,921 --> 01:05:08,170 BRIAN SCASSELLATI: Pięć ponownie? 1438 01:05:08,170 --> 01:05:10,650 Jak o zróbmy coś inny, zrobiliśmy pięć. 1439 01:05:10,650 --> 01:05:12,584 Pokażmy, że jest inaczej. 1440 01:05:12,584 --> 01:05:13,250 GŁOŚNIK 22: Dwa. 1441 01:05:13,250 --> 01:05:13,580 BRIAN SCASSELLATI: Dwa. 1442 01:05:13,580 --> 01:05:14,080 OK. 1443 01:05:14,080 --> 01:05:17,760 Więc jeśli chcę dwie kropki, co mam umieścić tutaj? 1444 01:05:17,760 --> 01:05:19,140 >> PUBLICZNOŚCI: Trzy. 1445 01:05:19,140 --> 01:05:20,530 >> BRIAN SCASSELLATI: Trzy. 1446 01:05:20,530 --> 01:05:21,400 OK. 1447 01:05:21,400 --> 01:05:24,220 Ile razy jest to, że zamiar przejść? 1448 01:05:24,220 --> 01:05:28,469 To będzie przejść przez trzy razy, 0, 1 i 2, prawda? 1449 01:05:28,469 --> 01:05:30,010 Dobrze, wróćmy do dwóch. 1450 01:05:30,010 --> 01:05:31,570 Teraz mamy dwie kropki. 1451 01:05:31,570 --> 01:05:35,800 I to, co chcę robić każdego razem idę przez pętlę? 1452 01:05:35,800 --> 01:05:38,657 Co musi się zmienić za każdym razem przejść? 1453 01:05:38,657 --> 01:05:39,850 >> GŁOŚNIK 23: Dodaj kropkę. 1454 01:05:39,850 --> 01:05:41,020 >> BRIAN SCASSELLATI: Muszę iść dalej. 1455 01:05:41,020 --> 01:05:41,978 Mam zamiar dodać kropkę. 1456 01:05:41,978 --> 01:05:45,310 Mam zamiar wydrukować kropkę, za każdym razem przez pętlę. 1457 01:05:45,310 --> 01:05:49,990 Ale jak mam śledzenie, jak wiele razy byłem przez pętlę? 1458 01:05:49,990 --> 01:05:53,260 Używam i, że Zmienna, że ​​licznik. 1459 01:05:53,260 --> 01:05:57,110 >> Dlatego za każdym razem dzięki, będę do zwiększamy licznik o jeden. 1460 01:05:57,110 --> 01:06:00,670 Teraz, to jest taki sam dla mnie jak mówi i = i + 1. 1461 01:06:00,670 --> 01:06:01,210 Dobrze. 1462 01:06:01,210 --> 01:06:04,653 Mógłbym zrobić that-- lubię skrót, więc mam zamiar powiedzieć, i ++. 1463 01:06:04,653 --> 01:06:07,190 1464 01:06:07,190 --> 01:06:08,370 OK. 1465 01:06:08,370 --> 01:06:10,680 >> Zróbmy to samo tu, na dole. 1466 01:06:10,680 --> 01:06:11,846 Tylko ja niby zrobiłem tego. 1467 01:06:11,846 --> 01:06:13,990 Zamierzam niech chłopaki zrobić ten jeden całkowicie. 1468 01:06:13,990 --> 01:06:14,260 W porządku. 1469 01:06:14,260 --> 01:06:15,426 >> Więc co powinienem napisać tutaj? 1470 01:06:15,426 --> 01:06:17,170 Oto mój pętli. 1471 01:06:17,170 --> 01:06:23,162 Mam zamiar zrobić printf () i mam zamiar aby tak było, że tylko wydrukować jedną kropkę 1472 01:06:23,162 --> 01:06:25,740 w tym spodzie. 1473 01:06:25,740 --> 01:06:27,740 >> Co powinienem napisać wewnątrz tej pętli teraz? 1474 01:06:27,740 --> 01:06:30,897 1475 01:06:30,897 --> 01:06:33,948 Cóż, przede wszystkim, jakie Zmienne należy użyć? 1476 01:06:33,948 --> 01:06:35,430 >> GŁOŚNIK 24: j. 1477 01:06:35,430 --> 01:06:36,880 >> BRIAN SCASSELLATI: można używać j. 1478 01:06:36,880 --> 01:06:38,040 Czy mogę wykorzystać ten sam? 1479 01:06:38,040 --> 01:06:39,961 Czy mogę używać i ponownie? 1480 01:06:39,961 --> 01:06:40,460 Tak. 1481 01:06:40,460 --> 01:06:45,531 To jest OK, bo IS że używam tutaj, 1482 01:06:45,531 --> 01:06:47,780 I nie trzeba ich ponownie, gdy I dostać się do tego punktu. 1483 01:06:47,780 --> 01:06:52,240 1484 01:06:52,240 --> 01:06:53,790 >> Więc co należy zainicjować i do? 1485 01:06:53,790 --> 01:06:56,675 1486 01:06:56,675 --> 01:06:57,300 GŁOŚNIK 25: 10. 1487 01:06:57,300 --> 01:06:58,567 BRIAN SCASSELLATI: 0. 1488 01:06:58,567 --> 01:06:59,400 Co mam sprawdzić? 1489 01:06:59,400 --> 01:07:02,960 Ile punktów muszę się teraz na końcu jeśli mam dwie kropki na początku? 1490 01:07:02,960 --> 01:07:05,820 1491 01:07:05,820 --> 01:07:09,165 Muszę w końcu osiem lat, więc to, co należy sprawdzić, ja mniej than-- 1492 01:07:09,165 --> 01:07:12,645 >> PUBLICZNOŚCI: Siedem, osiem, dziewięć. 1493 01:07:12,645 --> 01:07:14,020 BRIAN SCASSELLATI: Słyszałem siedem. 1494 01:07:14,020 --> 01:07:14,810 Słyszałem osiem. 1495 01:07:14,810 --> 01:07:15,970 I usłyszałem dziewięć. 1496 01:07:15,970 --> 01:07:16,470 OK. 1497 01:07:16,470 --> 01:07:19,540 Więc wszyscy jesteśmy w prawo ball-- Jason mówi 10. 1498 01:07:19,540 --> 01:07:21,550 OK. 1499 01:07:21,550 --> 01:07:25,920 >> Gdybym potrzebował dwie kropki na pierwszy z nich, jak wiele zrobić 1500 01:07:25,920 --> 01:07:30,170 Ja-- i muszę ośmiu punktów za ostatnia jedno- kładę dwa się wyżej, 1501 01:07:30,170 --> 01:07:31,743 co należy umieścić na dole? 1502 01:07:31,743 --> 01:07:32,570 >> PUBLICZNOŚCI: Osiem. 1503 01:07:32,570 --> 01:07:33,611 >> BRIAN SCASSELLATI: Osiem. 1504 01:07:33,611 --> 01:07:35,695 Bo, że będzie Graf Zero przez siedem. 1505 01:07:35,695 --> 01:07:38,490 I to jest osiem razy przez pętlę. 1506 01:07:38,490 --> 01:07:38,990 OK. 1507 01:07:38,990 --> 01:07:41,774 A co mam zrobić na końcu? 1508 01:07:41,774 --> 01:07:42,670 >> PUBLICZNOŚCI: i ++. 1509 01:07:42,670 --> 01:07:44,400 >> BRIAN SCASSELLATI: i ++. 1510 01:07:44,400 --> 01:07:45,440 W porządku. 1511 01:07:45,440 --> 01:07:48,260 Tak, że wygląda całkiem nieźle tam. 1512 01:07:48,260 --> 01:07:50,620 Spróbujmy go i zobaczymy, co robi. 1513 01:07:50,620 --> 01:07:51,450 OK. 1514 01:07:51,450 --> 01:07:53,770 Więc będziemy go zapisać. 1515 01:07:53,770 --> 01:07:54,940 Ładne i zapisane. 1516 01:07:54,940 --> 01:07:56,910 >> Będziemy się widok. 1517 01:07:56,910 --> 01:07:58,220 Spróbujemy tu w terminalu. 1518 01:07:58,220 --> 01:08:01,440 1519 01:08:01,440 --> 01:08:02,970 Będziemy powiększyć. 1520 01:08:02,970 --> 01:08:05,416 Ups. 1521 01:08:05,416 --> 01:08:09,990 Zaloguj się, jeszcze raz, aby nasz program króliczka. 1522 01:08:09,990 --> 01:08:14,460 I iść do przodu i wykonywać króliczka. 1523 01:08:14,460 --> 01:08:15,980 I nie jest to. 1524 01:08:15,980 --> 01:08:17,710 >> Więc jest nasz króliczek. 1525 01:08:17,710 --> 01:08:25,130 Gdzie to ma dwie kropki na początku oraz osiem punktów na końcu. 1526 01:08:25,130 --> 01:08:27,540 Wszyscy wciąż ze mną? 1527 01:08:27,540 --> 01:08:28,770 OK. 1528 01:08:28,770 --> 01:08:29,580 >> Więc zbudowaliśmy go. 1529 01:08:29,580 --> 01:08:33,000 Zbudowaliśmy jeden bunny, jeden szczególności ramki. 1530 01:08:33,000 --> 01:08:36,229 Teraz byliśmy w stanie uogólnić, że do budowy 1531 01:08:36,229 --> 01:08:38,390 więcej, różne rodzaje klatek. 1532 01:08:38,390 --> 01:08:42,399 >> Teraz idziemy do przodu i mieć generować nie tylko jedną ramkę, 1533 01:08:42,399 --> 01:08:46,290 ale niech generują 10 ramki, gdzie powoli 1534 01:08:46,290 --> 01:08:50,569 sprawiają, że króliczek przenieść wszystkie sposób w całym zakresie. 1535 01:08:50,569 --> 01:08:51,430 W porządku. 1536 01:08:51,430 --> 01:08:53,660 >> Wracajmy. 1537 01:08:53,660 --> 01:08:54,839 A my postaramy się teraz. 1538 01:08:54,839 --> 01:09:00,680 1539 01:09:00,680 --> 01:09:02,830 Więc co tak naprawdę trzeba zmienić tutaj? 1540 01:09:02,830 --> 01:09:06,139 1541 01:09:06,139 --> 01:09:07,180 Co muszę zmienić? 1542 01:09:07,180 --> 01:09:10,638 >> GŁOŚNIK 26: Najpierw trzeba zmienić liczbę kropek maksimum 1543 01:09:10,638 --> 01:09:11,626 na początku. 1544 01:09:11,626 --> 01:09:16,850 Bo jeśli robimy 10 punktów, to będzie musiał się w skali. 1545 01:09:16,850 --> 01:09:17,850 BRIAN SCASSELLATI: Tak. 1546 01:09:17,850 --> 01:09:23,760 Więc teraz mam to rodzaj przewodowych zawsze zrobić dwie kropki na początku 1547 01:09:23,760 --> 01:09:27,890 i zawsze osiem kropki na końcu. 1548 01:09:27,890 --> 01:09:30,660 >> Chcę zbudować kolejną pętlę, prawda? 1549 01:09:30,660 --> 01:09:33,290 Bo nie chcę zbudować tylko jeden obraz króliczka, 1550 01:09:33,290 --> 01:09:37,140 Chcę zbudować 10 królika zdjęcia. 1551 01:09:37,140 --> 01:09:41,500 Więc muszę zbudować kolejną pętlę, a jak przejść tej pętli, 1552 01:09:41,500 --> 01:09:44,660 Chcę zmienić, ile kropki wydrukować na początku 1553 01:09:44,660 --> 01:09:50,529 i ile punktów drukować na końcu, na podstawie których cykl przez pętlę 1554 01:09:50,529 --> 01:09:52,270 Jestem w. 1555 01:09:52,270 --> 01:09:52,770 W porządku. 1556 01:09:52,770 --> 01:09:54,430 >> Więc przejdźmy kolejny licznik. 1557 01:09:54,430 --> 01:09:58,142 Ktoś wcześniej powiedział, j, tak zrobimy kolejny j. 1558 01:09:58,142 --> 01:10:00,100 A teraz mamy zamiar budować kolejny pętli. 1559 01:10:00,100 --> 01:10:02,650 1560 01:10:02,650 --> 01:10:06,200 >> To, co dzieje się wewnątrz tej pętli? 1561 01:10:06,200 --> 01:10:09,060 Ten materiał ma iść wewnątrz pętli, prawda? 1562 01:10:09,060 --> 01:10:11,190 Czy króliczek ma iść wewnątrz pętli? 1563 01:10:11,190 --> 01:10:13,390 Czy muszę Zajączek w każda z tych 10 klatek? 1564 01:10:13,390 --> 01:10:14,099 >> PUBLICZNOŚCI: Aha. 1565 01:10:14,099 --> 01:10:15,098 BRIAN SCASSELLATI: Tak. 1566 01:10:15,098 --> 01:10:17,250 Chcę Zajączek w każdym z 10 klatek, prawda? 1567 01:10:17,250 --> 01:10:20,531 Jak o kropki w koniec, muszę, że? 1568 01:10:20,531 --> 01:10:21,030 OK. 1569 01:10:21,030 --> 01:10:22,550 >> Więc mam zamiar wciąć wszystkie z nich. 1570 01:10:22,550 --> 01:10:25,110 Mam zamiar zaznaczyć wszystkie to, i mam zamiar uderzyć Tab. 1571 01:10:25,110 --> 01:10:28,590 I że będzie pchać je na całym trochę tak, że jest to dla mnie łatwe 1572 01:10:28,590 --> 01:10:32,010 zobaczyć, co jest w pętli. 1573 01:10:32,010 --> 01:10:33,710 A potem będę ją zakończyć. 1574 01:10:33,710 --> 01:10:35,850 Powiedzmy. 1575 01:10:35,850 --> 01:10:36,430 OK? 1576 01:10:36,430 --> 01:10:39,230 >> Teraz, w pętlę Jestem building-- whoops, 1577 01:10:39,230 --> 01:10:43,810 sprawiają, że tak można see-- Mam mój licznik j. 1578 01:10:43,810 --> 01:10:45,630 Ja to zaczęło się od 0. 1579 01:10:45,630 --> 01:10:47,829 Ile razy chcę przejść tej pętli? 1580 01:10:47,829 --> 01:10:48,620 PUBLICZNOŚCI: 10 razy. 1581 01:10:48,620 --> 01:10:49,786 BRIAN SCASSELLATI: 10 razy. 1582 01:10:49,786 --> 01:10:51,402 Więc jaki numer należy umieścić tutaj? 1583 01:10:51,402 --> 01:10:52,880 >> PUBLICZNOŚCI: 9, 10. 1584 01:10:52,880 --> 01:10:55,600 >> Brian SCASSELLATI: 9, 10, Ktoś musi powiedzieć, 11, prawda? 1585 01:10:55,600 --> 01:10:58,190 1586 01:10:58,190 --> 01:11:01,585 Chciałem dwie kropki przed i umieścić i mniej niż 2. 1587 01:11:01,585 --> 01:11:03,810 Chciałem ośmiu punktów, Włożyłem i mniej niż 8. 1588 01:11:03,810 --> 01:11:06,950 Teraz chcę przejść przez 10 razy, więc kładę j mniej than-- 1589 01:11:06,950 --> 01:11:07,590 >> PUBLICZNOŚCI: 10. 1590 01:11:07,590 --> 01:11:08,610 >> BRIAN SCASSELLATI: 10. 1591 01:11:08,610 --> 01:11:10,150 No to jedziemy. 1592 01:11:10,150 --> 01:11:13,360 A co mam zrobić, w końcu do j? 1593 01:11:13,360 --> 01:11:15,310 ++, Zwiększać ją. 1594 01:11:15,310 --> 01:11:16,230 OK. 1595 01:11:16,230 --> 01:11:21,500 Teraz tutaj jest skomplikowana część, co jest stanie się teraz, czy mogę to zrobić? 1596 01:11:21,500 --> 01:11:24,537 Mam zamiar wydrukować 10 klatek? 1597 01:11:24,537 --> 01:11:26,370 GŁOŚNIK 27: Myślę, że wszyscy będą takie same. 1598 01:11:26,370 --> 01:11:28,453 BRIAN SCASSELLATI: Będą wszystkie takie same, prawda? 1599 01:11:28,453 --> 01:11:31,750 Ponieważ wszystkie z nich są nadal w toku umieścić dwie kropki na początku. 1600 01:11:31,750 --> 01:11:34,162 Ale ja nie chcę ich wszystkich mają dwie kropki na początku. 1601 01:11:34,162 --> 01:11:35,870 Ile kropki zrobić I chce na początku? 1602 01:11:35,870 --> 01:11:39,097 1603 01:11:39,097 --> 01:11:40,020 >> PUBLICZNOŚCI: Zmiana. 1604 01:11:40,020 --> 01:11:42,840 >> BRIAN SCASSELLATI: I chcesz to zmienić, prawda? 1605 01:11:42,840 --> 01:11:46,588 Więc co mam tutaj, to się zmienia za każdym razem, pętla przechodzi? 1606 01:11:46,588 --> 01:11:48,242 >> PUBLICZNOŚCI: Liczba punktów, j. 1607 01:11:48,242 --> 01:11:49,950 BRIAN SCASSELLATI: j, liczba punktów. 1608 01:11:49,950 --> 01:11:54,782 Więc może to zmienić się j. 1609 01:11:54,782 --> 01:11:59,190 Po raz pierwszy poprzez pętli, co to będzie? 1610 01:11:59,190 --> 01:12:01,700 Co mogę ustawić j, aby w pierwszej kolejności? 1611 01:12:01,700 --> 01:12:02,420 >> PUBLICZNOŚCI: 0. 1612 01:12:02,420 --> 01:12:05,700 >> BRIAN SCASSELLATI: Tak jak wielu razy mam to zrobić? 1613 01:12:05,700 --> 01:12:06,750 0. 1614 01:12:06,750 --> 01:12:11,750 Za drugim razem przez pętlę, j na będzie 1, bo zwiększamy go. 1615 01:12:11,750 --> 01:12:14,180 Ile punktów mam zamiar drukować? 1616 01:12:14,180 --> 01:12:15,100 1. 1617 01:12:15,100 --> 01:12:19,904 Za trzecim razem przez pętlę, ile punktów mam zamiar drukować? 1618 01:12:19,904 --> 01:12:20,587 >> PUBLICZNOŚCI: Trzy. 1619 01:12:20,587 --> 01:12:22,170 BRIAN SCASSELLATI: j będzie 3. 1620 01:12:22,170 --> 01:12:24,890 Ile punktów mam zamiar drukować? 1621 01:12:24,890 --> 01:12:26,817 Oh, przepraszam, j będzie 2. 1622 01:12:26,817 --> 01:12:28,233 Ile punktów mam zamiar drukować? 1623 01:12:28,233 --> 01:12:28,980 >> PUBLICZNOŚCI: 2. 1624 01:12:28,980 --> 01:12:29,855 >> BRIAN SCASSELLATI: 2. 1625 01:12:29,855 --> 01:12:32,460 OK, więc mam zamiar utrzymać zwiększając że idziemy. 1626 01:12:32,460 --> 01:12:33,460 Jak o na dole? 1627 01:12:33,460 --> 01:12:34,310 Co się dzieje na dole? 1628 01:12:34,310 --> 01:12:38,080 Nie chcę 8 zawsze na koniec już? 1629 01:12:38,080 --> 01:12:39,269 >> GŁOŚNIK 28: 10. 1630 01:12:39,269 --> 01:12:40,685 BRIAN SCASSELLATI: Chcę 10 punktów? 1631 01:12:40,685 --> 01:12:43,440 1632 01:12:43,440 --> 01:12:44,620 Chcę to zmienić, też. 1633 01:12:44,620 --> 01:12:47,469 Więc jak chcę go zmienić? 1634 01:12:47,469 --> 01:12:49,167 >> PUBLICZNOŚCI: [niesłyszalne]. 1635 01:12:49,167 --> 01:12:51,750 BRIAN SCASSELLATI: Cóż, jeśli I mają pięć punktów na początku, 1636 01:12:51,750 --> 01:12:53,293 Kropka na ile mogę dostać się na końcu? 1637 01:12:53,293 --> 01:12:54,020 >> PUBLICZNOŚCI: Pięć. 1638 01:12:54,020 --> 01:12:55,630 >> BRIAN SCASSELLATI: Jeśli mam sześć kropki na początku, 1639 01:12:55,630 --> 01:12:56,875 ile mogę dostać się na końcu? 1640 01:12:56,875 --> 01:12:57,500 PUBLICZNOŚCI: Cztery. 1641 01:12:57,500 --> 01:12:58,950 BRIAN SCASSELLATI: Jeśli mam siedem kropki na początku, 1642 01:12:58,950 --> 01:13:00,204 ile mogę dostać się na końcu? 1643 01:13:00,204 --> 01:13:00,870 PUBLICZNOŚCI: Trzy. 1644 01:13:00,870 --> 01:13:03,161 BRIAN SCASSELLATI: Jeśli mam ale j kropki na początku, 1645 01:13:03,161 --> 01:13:04,790 ile mogę dostać się na końcu? 1646 01:13:04,790 --> 01:13:07,520 10-j. 1647 01:13:07,520 --> 01:13:08,650 OK. 1648 01:13:08,650 --> 01:13:10,390 Więc spróbujmy to. 1649 01:13:10,390 --> 01:13:13,180 >> Więc mam zamiar zapisać nasz program króliczka. 1650 01:13:13,180 --> 01:13:16,270 Po raz kolejny będziemy pomniejszyć. 1651 01:13:16,270 --> 01:13:19,090 Pójdziemy do naszego terminalu. 1652 01:13:19,090 --> 01:13:20,180 Będziemy je wyczyścić. 1653 01:13:20,180 --> 01:13:23,410 I powiększyć. 1654 01:13:23,410 --> 01:13:26,410 Zrobimy nasz program króliczka, ponownie. 1655 01:13:26,410 --> 01:13:27,690 A my ją wykonać. 1656 01:13:27,690 --> 01:13:30,462 1657 01:13:30,462 --> 01:13:32,090 O o. 1658 01:13:32,090 --> 01:13:34,580 >> Poczekaj, niech pomniejszyć. 1659 01:13:34,580 --> 01:13:36,860 Czy mogę dostać 10 klatek? 1660 01:13:36,860 --> 01:13:38,970 Cóż, jak wiele zające widzę tam? 1661 01:13:38,970 --> 01:13:43,330 1, 2, 3, 4, 5, 6, 7, 8, 9, 10. 1662 01:13:43,330 --> 01:13:44,820 Mam 10 klatek. 1663 01:13:44,820 --> 01:13:46,375 Czy wszystkie są takie same? 1664 01:13:46,375 --> 01:13:47,000 PUBLICZNOŚCI: Tak. 1665 01:13:47,000 --> 01:13:48,740 Nie. 1666 01:13:48,740 --> 01:13:50,000 >> BRIAN SCASSELLATI: Nie 1667 01:13:50,000 --> 01:13:55,050 To pierwsza z nich, króliczek jest daleko po lewej stronie. 1668 01:13:55,050 --> 01:13:57,541 A tutaj, króliczek jest daleko na 1669 01:13:57,541 --> 01:13:58,290 GŁOŚNIK 29: Racja. 1670 01:13:58,290 --> 01:14:00,502 BRIAN SCASSELLATI: Tak, co zapomniałem zrobić? 1671 01:14:00,502 --> 01:14:01,750 GŁOŚNIK 30: Rozpoczęcie nowego wiersza. 1672 01:14:01,750 --> 01:14:04,041 BRIAN SCASSELLATI: zapomniałem aby rozpocząć nową linię, ponownie. 1673 01:14:04,041 --> 01:14:05,270 Sam błąd zrobiłem wcześniej. 1674 01:14:05,270 --> 01:14:07,120 Dobrze, chodźmy naprawić. 1675 01:14:07,120 --> 01:14:11,690 Teraz mam jeszcze kod tam, aby nowy wiersz. 1676 01:14:11,690 --> 01:14:13,899 Dlaczego nie działa? 1677 01:14:13,899 --> 01:14:15,440 GŁOŚNIK 31: To nie jest wewnątrz pętli. 1678 01:14:15,440 --> 01:14:17,710 BRIAN SCASSELLATI: Och, to nie jest wewnątrz pętli. 1679 01:14:17,710 --> 01:14:18,520 To prawda. 1680 01:14:18,520 --> 01:14:20,150 To tu siedzi na zewnątrz. 1681 01:14:20,150 --> 01:14:23,470 1682 01:14:23,470 --> 01:14:29,050 A do pętli wszystko że jest w środku tego tekstu. 1683 01:14:29,050 --> 01:14:35,500 >> Więc mam zamiar przenieść to wewnątrz pętli for. 1684 01:14:35,500 --> 01:14:39,410 I będę Tab przed nim do wskazują, że jest we właściwym miejscu. 1685 01:14:39,410 --> 01:14:42,020 A teraz będziemy go zapisać ponownie. 1686 01:14:42,020 --> 01:14:44,350 Będziemy pomniejszyć. 1687 01:14:44,350 --> 01:14:45,770 Będziemy przełączyć się na naszym terminalu. 1688 01:14:45,770 --> 01:14:48,330 1689 01:14:48,330 --> 01:14:50,360 Zbliżenie. 1690 01:14:50,360 --> 01:14:54,050 Będziemy przerobić nasz program króliczka. 1691 01:14:54,050 --> 01:14:59,070 A teraz, teraz mamy nasze 10 klatek. 1692 01:14:59,070 --> 01:15:00,190 >> [Klaskanie] 1693 01:15:00,190 --> 01:15:02,120 >> BRIAN SCASSELLATI: OK. 1694 01:15:02,120 --> 01:15:04,080 Więc. 1695 01:15:04,080 --> 01:15:08,370 Tu jest nasz zagnieżdżone pętle. 1696 01:15:08,370 --> 01:15:13,140 Byliśmy w stanie generować w Wewnętrzna pętla ile punktów chciałem 1697 01:15:13,140 --> 01:15:15,320 drukować na początku, na końcu. 1698 01:15:15,320 --> 01:15:21,570 A zewnętrzna pętla sterowany ile klatek Budowałem. 1699 01:15:21,570 --> 01:15:26,340 Zaczęliśmy jeden mały Jądro problemu, 1700 01:15:26,340 --> 01:15:30,320 i zbudowany od tego miejsca. 1701 01:15:30,320 --> 01:15:30,820 W porządku. 1702 01:15:30,820 --> 01:15:33,500 >> Zróbmy jeszcze jeden krok. 1703 01:15:33,500 --> 01:15:35,040 Jesteś gotowy? 1704 01:15:35,040 --> 01:15:38,800 Jest jedna rzecz, tu, gdzie mamy rzeczywiście rodzaj dostał 1705 01:15:38,800 --> 01:15:42,180 bardziej złożony, niż potrzebujemy. 1706 01:15:42,180 --> 01:15:44,700 Spójrzmy. 1707 01:15:44,700 --> 01:15:52,050 Tak więc w naszym programie króliczka, jeśli pomniejszyć tutaj, 1708 01:15:52,050 --> 01:15:54,980 I faktycznie niektóre z tych samych rzeczy w kółko. 1709 01:15:54,980 --> 01:15:59,032 Co mam zrobić, że to coś w rodzaju to samo powtarza się dwukrotnie? 1710 01:15:59,032 --> 01:16:00,310 >> GŁOŚNIK 32: Broszura kropki. 1711 01:16:00,310 --> 01:16:03,526 >> BRIAN SCASSELLATI: Tak I dwa razy wydrukować te kropki. 1712 01:16:03,526 --> 01:16:05,710 Naprawdę, powinienem mieć Ten komentarz tutaj. 1713 01:16:05,710 --> 01:16:09,037 Wydrukować kilka punktów u począwszy, aż tutaj. 1714 01:16:09,037 --> 01:16:10,620 A następnie wydrukować jakieś kropki na końcu. 1715 01:16:10,620 --> 01:16:14,694 I robię to za dokładnie to samo. 1716 01:16:14,694 --> 01:16:17,110 Co mamy zamiar zacząć pracy na w najbliższych tygodniach 1717 01:16:17,110 --> 01:16:23,440 jest w stanie wziąć te bloki Kod, który używamy w kółko, 1718 01:16:23,440 --> 01:16:25,800 i w procesie nazywa abstrakcja, 1719 01:16:25,800 --> 01:16:31,100 mamy zamiar wyciągnąć je i zapisać je kiedyś tak, że możemy to 1720 01:16:31,100 --> 01:16:35,130 ponownie je w kółko. 1721 01:16:35,130 --> 01:16:37,210 Warto więc spróbować. 1722 01:16:37,210 --> 01:16:38,220 Gotowi? 1723 01:16:38,220 --> 01:16:42,200 >> Zamierzamy wziąć ten blok kodu. 1724 01:16:42,200 --> 01:16:45,280 I mam zamiar zabrać go stamtąd. 1725 01:16:45,280 --> 01:16:50,530 I mam zamiar define-- u dołu, 1726 01:16:50,530 --> 01:16:53,130 Mam zamiar napisać nową funkcję. 1727 01:16:53,130 --> 01:16:54,750 Nie będzie powrotu nic. 1728 01:16:54,750 --> 01:16:58,550 I zamierzam to nazwać printDots. 1729 01:16:58,550 --> 01:17:01,530 >> To zajmie jeden Argument, liczba całkowita 1730 01:17:01,530 --> 01:17:04,920 mówi howManyDots powinienem wydrukować. 1731 01:17:04,920 --> 01:17:09,310 1732 01:17:09,310 --> 01:17:17,720 A teraz zamiast drukować j kropki, będę Drukuj howManyDots powinienem wydrukować. 1733 01:17:17,720 --> 01:17:21,581 >> I jest jeden mały problem. 1734 01:17:21,581 --> 01:17:22,580 Ktoś wie, co to jest? 1735 01:17:22,580 --> 01:17:27,270 1736 01:17:27,270 --> 01:17:31,505 Co mam, które jest wymienione tu, że nie jest zdefiniowane? 1737 01:17:31,505 --> 01:17:34,165 1738 01:17:34,165 --> 01:17:35,090 >> PUBLICZNOŚCI: [niesłyszalne] 1739 01:17:35,090 --> 01:17:37,465 >> BRIAN SCASSELLATI: Cóż, jak wiele kropki definiuje aż 1740 01:17:37,465 --> 01:17:40,584 tutaj, ale używam tej zmiennej i. 1741 01:17:40,584 --> 01:17:43,750 Więc mam zamiar podjąć tę zmienną i i mam zamiar go zdefiniować w tutaj 1742 01:17:43,750 --> 01:17:44,610 Zamiast. 1743 01:17:44,610 --> 01:17:49,683 >> Więc teraz to będzie stay-- oops, dostał caps lock na somehow-- jestem 1744 01:17:49,683 --> 01:17:52,060 zamierza utrzymać I w tutaj. 1745 01:17:52,060 --> 01:17:57,050 >> Teraz tutaj jest mój mały funkcja lub sub-rutyny, i mówi, 1746 01:17:57,050 --> 01:18:00,640 ile punktów mam zamiar drukować? 1747 01:18:00,640 --> 01:18:05,300 I będzie ona przejść przez tę pętlę i wydrukować je w kółko. 1748 01:18:05,300 --> 01:18:10,940 >> Mogę zmodyfikować mój program się tutaj. 1749 01:18:10,940 --> 01:18:12,540 I co ja nazywam ta funkcja? 1750 01:18:12,540 --> 01:18:13,960 printDots. 1751 01:18:13,960 --> 01:18:17,060 Więc zadzwonię printDots. 1752 01:18:17,060 --> 01:18:21,530 Ile kropki chcę wydrukować Po raz pierwszy przed króliczka? 1753 01:18:21,530 --> 01:18:22,030 PUBLICZNOŚCI: j. 1754 01:18:22,030 --> 01:18:23,230 BRIAN SCASSELLATI: j. 1755 01:18:23,230 --> 01:18:27,110 Ile kropki chcę wydrukować Na koniec, po króliczka? 1756 01:18:27,110 --> 01:18:30,610 1757 01:18:30,610 --> 01:18:31,110 10-j. 1758 01:18:31,110 --> 01:18:35,020 1759 01:18:35,020 --> 01:18:38,010 >> I jest jedna rzecz mi brakuje. 1760 01:18:38,010 --> 01:18:43,740 Jak widzieliśmy w wykładzie dzisiaj, mamy zamiar zadeklarować printDots 1761 01:18:43,740 --> 01:18:52,430 się wyżej, z wytworzeniem prototypu. 1762 01:18:52,430 --> 01:18:56,740 1763 01:18:56,740 --> 01:18:58,220 OK. 1764 01:18:58,220 --> 01:19:03,530 >> Więc to, co zrobiłem jest Próbowałam izolować, że ponownie wykorzystane część kodu 1765 01:19:03,530 --> 01:19:06,430 które zrobiłem w kółko. 1766 01:19:06,430 --> 01:19:11,120 I starałem się wyciągnąć go tak, że wszystko to jest zawarty w jednym miejscu. 1767 01:19:11,120 --> 01:19:16,810 W ten sposób, jeśli mam gdzieś błąd, Mam tylko naprawić to w jednym miejscu. 1768 01:19:16,810 --> 01:19:17,310 W porządku. 1769 01:19:17,310 --> 01:19:18,470 >> Warto więc zapisać go. 1770 01:19:18,470 --> 01:19:20,950 I niech to upewnić się, że działa. 1771 01:19:20,950 --> 01:19:22,050 Więc chodźmy się. 1772 01:19:22,050 --> 01:19:25,200 Pojedziemy jeszcze raz do naszego terminalu. 1773 01:19:25,200 --> 01:19:27,960 Będziemy powiększyć. 1774 01:19:27,960 --> 01:19:31,010 Zrobimy ten proces króliczka. 1775 01:19:31,010 --> 01:19:32,380 >> Och. 1776 01:19:32,380 --> 01:19:34,800 I to daje mi ostrzeżenie. 1777 01:19:34,800 --> 01:19:37,070 Co jest mi powiedzieć? 1778 01:19:37,070 --> 01:19:39,870 Cóż w żadnej z nich razy, zawsze chcesz 1779 01:19:39,870 --> 01:19:44,170 aby przewinąć do pierwszej error-- teraz na ten jeden, ja tylko mam jeden. 1780 01:19:44,170 --> 01:19:52,700 >> Mówi mi w bunny.c, na linii 8, kolumna 9, pojawia się problem. 1781 01:19:52,700 --> 01:19:58,650 Mówi pan oświadczył tego zmienne i oraz nie zostały wykorzystane. 1782 01:19:58,650 --> 01:20:02,230 >> Teraz normalnie, to nie najgorszy błąd. 1783 01:20:02,230 --> 01:20:04,300 To jest łatwe do naprawienia. 1784 01:20:04,300 --> 01:20:07,550 A w rzeczywistości, możemy wrócić. 1785 01:20:07,550 --> 01:20:09,910 Możemy wrócić zajączek. 1786 01:20:09,910 --> 01:20:13,010 I w tym przypadku, wszystko, musisz zrobić, to pozbyć i, 1787 01:20:13,010 --> 01:20:16,630 dlatego, że nie używasz I w terminie głównym więcej. 1788 01:20:16,630 --> 01:20:19,860 Jesteśmy po prostu go za pomocą w naszym sub-rutyny. 1789 01:20:19,860 --> 01:20:22,777 >> Warto więc zapisać, że. 1790 01:20:22,777 --> 01:20:23,360 Wrócimy. 1791 01:20:23,360 --> 01:20:26,760 1792 01:20:26,760 --> 01:20:28,630 I powiększyć. 1793 01:20:28,630 --> 01:20:30,700 Będziemy jeszcze raz zrobić króliczka. 1794 01:20:30,700 --> 01:20:33,810 1795 01:20:33,810 --> 01:20:36,530 I znów to nasze 10 klatek. 1796 01:20:36,530 --> 01:20:39,450 1797 01:20:39,450 --> 01:20:41,360 OK. 1798 01:20:41,360 --> 01:20:43,190 >> Za każdym razem, dostaniemy procedure-- Tak. 1799 01:20:43,190 --> 01:20:44,690 GŁOŚNIK 33: Mam A-- jestem zdezorientowany. 1800 01:20:44,690 --> 01:20:45,892 Można wrócić do kodu? 1801 01:20:45,892 --> 01:20:46,850 BRIAN SCASSELLATI: Tak. 1802 01:20:46,850 --> 01:20:50,730 1803 01:20:50,730 --> 01:20:54,367 >> GŁOŚNIK 33: Więc, kiedy napisał Twój prototyp, argument ci 1804 01:20:54,367 --> 01:20:56,550 gdyby imieniem nazwano howMany? 1805 01:20:56,550 --> 01:20:57,540 Ale below-- 1806 01:20:57,540 --> 01:20:57,640 >> BRIAN SCASSELLATI: O tak. 1807 01:20:57,640 --> 01:20:59,140 >> GŁOŚNIK 33: --called im coś inaczej, nie rozumiem. 1808 01:20:59,140 --> 01:21:00,240 >> BRIAN SCASSELLATI: Dlaczego są one różne. 1809 01:21:00,240 --> 01:21:01,780 Więc to jest wielkie pytanie. 1810 01:21:01,780 --> 01:21:08,250 Więc pytanie było, aż tutaj napisałem howMany, 1811 01:21:08,250 --> 01:21:12,380 i na dole, napisałem howManyDots. 1812 01:21:12,380 --> 01:21:15,590 >> Powodem jest to, że w swoim prototypie, to faktycznie nie jest zwracając uwagę 1813 01:21:15,590 --> 01:21:17,090 do nazw, że jesteś wprowadzenie. 1814 01:21:17,090 --> 01:21:20,530 Wszystko tak naprawdę zależy na jest to, że jest liczbą całkowitą. 1815 01:21:20,530 --> 01:21:23,080 Chce wiedzieć, formularz z tego, co masz wprowadzenie. 1816 01:21:23,080 --> 01:21:31,560 >> Teraz stylistically-- oops-- co powinienem nie, to chciałbym, aby te spotkanie. 1817 01:21:31,560 --> 01:21:33,150 OK. 1818 01:21:33,150 --> 01:21:36,430 Dlatego, że będę trzymać mi łatwiej zapamiętać. 1819 01:21:36,430 --> 01:21:38,390 Ale to był mój błąd Tak. 1820 01:21:38,390 --> 01:21:47,620 >> GŁOŚNIK 34: I tak dla Prototyp pracować tylko 1821 01:21:47,620 --> 01:21:50,510 pisząc ten wiersz, pisanie prototyp, 1822 01:21:50,510 --> 01:21:53,932 Umożliwia to funkcja, która pochodzi tuż poniżej, aby przejść do końca 1823 01:21:53,932 --> 01:21:55,140 i pobierać co to oznacza? 1824 01:21:55,140 --> 01:21:58,480 >> BRIAN SCASSELLATI: Co to oznacza? jest, gdy kompilator przechodzi, 1825 01:21:58,480 --> 01:22:01,930 przechodzi od wierzchołka kod do dołu. 1826 01:22:01,930 --> 01:22:05,430 A co to prototyp, Jest to w zasadzie obietnica. 1827 01:22:05,430 --> 01:22:09,570 >> Mówi, że będzie funkcja zdefiniowana gdzieś. 1828 01:22:09,570 --> 01:22:11,880 To będzie tzw printDots. 1829 01:22:11,880 --> 01:22:15,110 I to zajmie jeden argument że będzie liczbą całkowitą 1830 01:22:15,110 --> 01:22:18,590 i to będzie powrót nic, nieważne typu. 1831 01:22:18,590 --> 01:22:19,310 OK. 1832 01:22:19,310 --> 01:22:22,950 Obiecuję, że będzie zdefiniowana gdzieś w dół drogi. 1833 01:22:22,950 --> 01:22:25,590 Ale za każdym razem można zobaczyć , że jak idziesz w dół 1834 01:22:25,590 --> 01:22:28,710 przez resztę mojego Główną funkcją, chcę 1835 01:22:28,710 --> 01:22:33,800 które można traktować jako funkcję które ma jedno wejście całkowitą. 1836 01:22:33,800 --> 01:22:37,970 >> I tak, gdy kompilator idzie w dół przez to, że widzi tę obietnicę. 1837 01:22:37,970 --> 01:22:40,220 A kiedy robi się w dół, utrzymuje dzieje, ciągle dzieje, 1838 01:22:40,220 --> 01:22:43,060 stwierdzi się po raz pierwszy printDots wspomina. 1839 01:22:43,060 --> 01:22:46,910 I mówi, Oh, dajesz mi to j. j jest liczbą całkowitą. 1840 01:22:46,910 --> 01:22:49,570 >> Dobrze mi obiecałeś, że jest liczbą całkowitą i to prawda. 1841 01:22:49,570 --> 01:22:51,370 Dobrze. 1842 01:22:51,370 --> 01:22:53,880 I w końcu, w dół na samym dole, 1843 01:22:53,880 --> 01:22:58,340 zanim się do końca mojego Plik, robię dobrze na mojej obietnicy 1844 01:22:58,340 --> 01:22:59,896 i zdefiniować. 1845 01:22:59,896 --> 01:23:01,868 OK? 1846 01:23:01,868 --> 01:23:06,320 >> GŁOŚNIK 35: Tak, to saves-- Program zapisze spacje 1847 01:23:06,320 --> 01:23:09,570 że wraca i wypełnia na końcu? 1848 01:23:09,570 --> 01:23:12,140 >> BRIAN SCASSELLATI: Nie o alokacji pamięci. 1849 01:23:12,140 --> 01:23:16,800 Jest to tak naprawdę tylko o to, co Typ oczekujesz zobaczyć. 1850 01:23:16,800 --> 01:23:19,340 Jeśli to, co masz Argument, lub pięć argumentów? 1851 01:23:19,340 --> 01:23:23,590 Należy mieć to liczby całkowite być względu na to, czy strun? 1852 01:23:23,590 --> 01:23:25,780 To wszystko wygląda zrobić, to sprawdzić, 1853 01:23:25,780 --> 01:23:29,303 dajesz mi odpowiedni rodzaj argumentu. 1854 01:23:29,303 --> 01:23:31,560 OK? 1855 01:23:31,560 --> 01:23:32,300 W porządku. 1856 01:23:32,300 --> 01:23:38,570 >> Pozwól mi zostawić z jedna nieco patrzeć. 1857 01:23:38,570 --> 01:23:44,850 ASCII nie jest wielkim wzorem animacji, jak to jest dzisiaj. 1858 01:23:44,850 --> 01:23:50,850 Ale niektórzy ludzie oczywiście wziąć sprawy i pchnąć go do swoich skrajności. 1859 01:23:50,850 --> 01:23:56,790 >> Jest to, jak wykazano, David w wykładzie, kawałek kodu 1860 01:23:56,790 --> 01:24:02,150 że w żadnym przypadku nie spróbuj odtworzyć siebie. 1861 01:24:02,150 --> 01:24:05,260 Bo to jest straszne stylistycznie. 1862 01:24:05,260 --> 01:24:11,180 W rzeczywistości, jest wykonane w taki sposób trudne, jak to możliwe, aby przeczytać. 1863 01:24:11,180 --> 01:24:11,680 OK. 1864 01:24:11,680 --> 01:24:16,210 >> Tak, aby ponownie zrobić, niech przybliżyć tutaj. 1865 01:24:16,210 --> 01:24:20,120 Mam zamiar iść, katalog zmian. 1866 01:24:20,120 --> 01:24:24,050 Zamierzam przejść się jedną Poziom, do mojej pracy. 1867 01:24:24,050 --> 01:24:29,760 Będę wtedy zmienić katalog, w tym inny katalog, który stworzyłem. 1868 01:24:29,760 --> 01:24:36,190 >> I to jest międzynarodowa Ukrywane C w Programowaniu Zespołowym. 1869 01:24:36,190 --> 01:24:40,650 Ukrywane środki jak trudno jak to możliwe, aby zrozumieć. 1870 01:24:40,650 --> 01:24:44,150 Więc proszę, nie bój się, jeśli spojrzeć w tym i iść, nie mogę przeczytać, że. 1871 01:24:44,150 --> 01:24:46,350 To jest sens tego. 1872 01:24:46,350 --> 01:24:47,700 OK? 1873 01:24:47,700 --> 01:24:52,770 >> Ale mamy to wspaniały program, że jestem 1874 01:24:52,770 --> 01:24:57,180 przyjrzymy się poprzez wpisanie więcej. 1875 01:24:57,180 --> 01:25:01,890 I zobaczmy, czy mogę pomniejszyć tylko trochę, więc można go zobaczyć 1876 01:25:01,890 --> 01:25:03,940 >> I to jest program. 1877 01:25:03,940 --> 01:25:08,080 To się nazywa endo.c. 1878 01:25:08,080 --> 01:25:14,850 I wygląda na to, tym segmencie z rodzaj liter F-L-U-I-D w nim. 1879 01:25:14,850 --> 01:25:16,440 >> To jest rzeczywiście program. 1880 01:25:16,440 --> 01:25:20,260 Jest napisany w najbardziej niejasne sposób, że autorzy mogli ewentualnie 1881 01:25:20,260 --> 01:25:21,760 Napisz to. 1882 01:25:21,760 --> 01:25:29,210 Ale to wspaniały mały kawałek, który generuje modelu dynamiki płynów. 1883 01:25:29,210 --> 01:25:34,870 >> I tak mamy zamiar dać ten model wejście, które 1884 01:25:34,870 --> 01:25:42,520 wygląda tak, znaczny staired zestaw pojemników 1885 01:25:42,520 --> 01:25:45,820 z jakimś płynem, niektóre cieczy u góry. 1886 01:25:45,820 --> 01:25:48,790 I musimy symulować co się dzieje z nim. 1887 01:25:48,790 --> 01:25:52,415 >> Więc zadzwonię do tej funkcji, endo. 1888 01:25:52,415 --> 01:25:59,000 A ja go dać, że plik wejściowy, który miałem. 1889 01:25:59,000 --> 01:26:02,830 I nie jest naszym uosobieniem sztuki ASCII. 1890 01:26:02,830 --> 01:26:08,960 Pełne płyn dynamiczny symulator uruchomiony w ciągu zaledwie kilku linii kodu. 1891 01:26:08,960 --> 01:26:13,750 >> Teraz to, co jest rzeczywiście bardzo niesamowite o tym małym programem 1892 01:26:13,750 --> 01:26:17,280 jest to, że chcę, aby zatrzymać go teraz, tak, mam zamiar wykorzystać to, co polecenia? 1893 01:26:17,280 --> 01:26:18,660 >> PUBLICZNOŚCI: Control-C. 1894 01:26:18,660 --> 01:26:20,390 >> BRIAN SCASSELLATI: Control-C. OK. 1895 01:26:20,390 --> 01:26:22,960 Więc będę używać Control-C. C To będzie go zatrzymać. 1896 01:26:22,960 --> 01:26:25,330 Będę wyczyścić ponownie. 1897 01:26:25,330 --> 01:26:31,210 I teraz mam zamiar podniesienia zarzutu Program, uruchomić program, 1898 01:26:31,210 --> 01:26:33,740 używając siebie jako wejście. 1899 01:26:33,740 --> 01:26:36,760 1900 01:26:36,760 --> 01:26:42,700 >> I zobaczymy dynamikę płynów symulacja nim topienia. 1901 01:26:42,700 --> 01:26:43,830 OK. 1902 01:26:43,830 --> 01:26:48,180 Proszę, nie pozwól tego programu jest rzeczą, że myli cię. 1903 01:26:48,180 --> 01:26:52,220 To jest po prostu tak, że możemy zakończyć na coś fajne i ciekawe. 1904 01:26:52,220 --> 01:26:53,930 OK. 1905 01:26:53,930 --> 01:26:56,330 >> Powodzenia w swoich zestawach problemowych. 1906 01:26:56,330 --> 01:26:59,030 Będziemy szczęśliwi, aby odpowiedzieć Pytania po klasie. 1907 01:26:59,030 --> 01:27:01,180 Dzięki dużo, chłopaki. 1908 01:27:01,180 --> 01:27:02,793