1 00:00:00,000 --> 00:00:07,170 2 00:00:07,170 --> 00:00:09,100 >> LUCAS FREITAS: OK, cred acum suntem în direct. 3 00:00:09,100 --> 00:00:11,220 Bine ati venit la CS50 supersecțiune. 4 00:00:11,220 --> 00:00:12,880 Suntem mai puțin confortabil. 5 00:00:12,880 --> 00:00:13,870 Numele meu este Lucas Freitas. 6 00:00:13,870 --> 00:00:16,230 Sunt unul CS50 cap TFS. 7 00:00:16,230 --> 00:00:17,523 Acest lucru este Lauren. 8 00:00:17,523 --> 00:00:19,002 >> LAUREN CARVALHO: Bună, eu sunt Lauren. 9 00:00:19,002 --> 00:00:21,330 Sunt, de asemenea, TF cap pentru CS50. 10 00:00:21,330 --> 00:00:24,730 >> LUCAS FREITAS: Astăzi vom merge doar pentru a oferi o imagine de ansamblu a ceea ce tot ce 11 00:00:24,730 --> 00:00:28,440 băieți au învățat într-o săptămână, sperăm pentru a vă oferi un bun baieti 12 00:00:28,440 --> 00:00:32,580 sens la ceea ce trebuie să știți pentru problema stabilit o. 13 00:00:32,580 --> 00:00:34,120 >> Doar câteva anunțuri. 14 00:00:34,120 --> 00:00:36,490 Mai întâi de toate, ore de birou. 15 00:00:36,490 --> 00:00:41,580 Orelor de program se întâmplă de luni până joi, în diferite case din 16 00:00:41,580 --> 00:00:43,450 Annenberg fiecare zi. 17 00:00:43,450 --> 00:00:46,680 Ei sunt o resursă foarte bună pentru tine oameni să vină și să pună întrebări, și 18 00:00:46,680 --> 00:00:49,470 vorbesc cu TFS, și chiar de schimb idei cu alți studenți. 19 00:00:49,470 --> 00:00:55,420 Astfel încât să fie sigur de a utiliza această resursă în favoarea ta. 20 00:00:55,420 --> 00:00:59,790 >> Al doilea lucru este CS50 Appliance. 21 00:00:59,790 --> 00:01:01,390 Pentru ultima [neauzit] 22 00:01:01,390 --> 00:01:04,180 voi nu trebuie să de fapt au un aparat. 23 00:01:04,180 --> 00:01:06,910 Tocmai ai făcut totul în computerul personal. 24 00:01:06,910 --> 00:01:10,330 Dar de această problemă, aveți de fapt, de a avea o mașină virtuală, astfel încât să fie 25 00:01:10,330 --> 00:01:14,680 vă pentru a descărca CS50 Aparat și a pus-o. 26 00:01:14,680 --> 00:01:18,670 >> Și al treilea lucru este să fie sigur de a începe problema stabilit ASAP doar 27 00:01:18,670 --> 00:01:22,740 pentru că este mult mai ușor de a găsi ajuta atunci când vă aflați în 28 00:01:22,740 --> 00:01:23,730 la începutul săptămânii. 29 00:01:23,730 --> 00:01:27,540 Pentru că oamenii tind să aștepte până când ultima secundă pentru a porni setul problemă, 30 00:01:27,540 --> 00:01:29,730 și apoi te duci la orele de birou, și există o mulțime de oameni. 31 00:01:29,730 --> 00:01:33,020 În cazul în care, dacă te duci la luni, ai de gând pentru a vedea că puteți vorbi cu TFS 32 00:01:33,020 --> 00:01:35,870 destul de mult pentru toată noaptea, și ei vor fi mai mult decât 33 00:01:35,870 --> 00:01:37,790 bucuros să vă ajute. 34 00:01:37,790 --> 00:01:40,720 >> LAUREN CARVALHO: Pot să opresc te pentru o secundă? 35 00:01:40,720 --> 00:01:43,330 A fost în toată lumea posibilitatea de a descărca CS50 Appliance? 36 00:01:43,330 --> 00:01:44,255 Au încercat oamenii? 37 00:01:44,255 --> 00:01:47,120 >> LUCAS FREITAS: Pentru a descărca, de către Astfel, puteți obține instrucțiuni de la 38 00:01:47,120 --> 00:01:48,045 cs50.net/appliance. 39 00:01:48,045 --> 00:01:48,817 >> LAUREN CARVALHO: Corect. 40 00:01:48,817 --> 00:01:53,120 Și aceasta nu ia un pic de timp pentru noastre administratori SYS pentru a vă obține o licență 41 00:01:53,120 --> 00:01:55,450 cheie, așa că vă înscrieți pentru de încercare gratuită primul. 42 00:01:55,450 --> 00:01:59,080 În acest fel veți avea pentru 30 de zile, și apoi așteptați pentru cheia de licență 43 00:01:59,080 --> 00:02:02,650 care ar trebui să dea pentru a vă pentru un an. 44 00:02:02,650 --> 00:02:04,100 >> LUCAS FREITAS: Mai întâi de toate, hai sa vorbim un pic 45 00:02:04,100 --> 00:02:06,180 despre CS50 Appliance. 46 00:02:06,180 --> 00:02:10,770 CS50 Appliance este de fapt o virtuală masina pe care ai de gând să 47 00:02:10,770 --> 00:02:15,040 rula în propriul computer care este de fapt rulează pe un alt calculator 48 00:02:15,040 --> 00:02:16,010 în propriul computer. 49 00:02:16,010 --> 00:02:16,800 Care este destul de rece. 50 00:02:16,800 --> 00:02:19,420 Și de fapt este folosit peste tot. 51 00:02:19,420 --> 00:02:23,150 Oamenii care a tech-ar ști că acest lucru este folosit tot timpul. 52 00:02:23,150 --> 00:02:23,250 tu? 53 00:02:23,250 --> 00:02:26,200 Poate avea mai multe computere într-un singur dispozitiv. 54 00:02:26,200 --> 00:02:27,760 >> Să aruncăm o privire de fapt, la Appliance. 55 00:02:27,760 --> 00:02:32,680 56 00:02:32,680 --> 00:02:36,640 Când te duci la aparatul după înregistrare, ai de gând să trebuie să 57 00:02:36,640 --> 00:02:42,035 pune numele dumneavoastră și a vă conecta la Harvard astfel încât să putem obține ai toate înregistrate. 58 00:02:42,035 --> 00:02:46,570 Ai de gând pentru a vedea de fapt doar un tapet, și apoi Acasă și Gunoi, 59 00:02:46,570 --> 00:02:48,980 și apoi aceste icoane mici. 60 00:02:48,980 --> 00:02:51,930 Acest trei icoane sunt de fapt cele mai lucruri importante pe care le poate avea în 61 00:02:51,930 --> 00:02:53,000 Appliance dumneavoastră. 62 00:02:53,000 --> 00:03:00,270 >> Prima dintre ele este gedit, care este un text editor, la fel ca Notepad sau ca 63 00:03:00,270 --> 00:03:01,440 orice fel de editor de text. 64 00:03:01,440 --> 00:03:09,750 Este doar ceva pe care le folosim pentru a scrie cod și apoi a face lucruri cu ea. 65 00:03:09,750 --> 00:03:11,770 >> Al doilea lucru care ne-am aici este Chrome. 66 00:03:11,770 --> 00:03:13,910 Deci, dacă aveți nevoie pentru a folosi internetul în aparat, care este 67 00:03:13,910 --> 00:03:15,030 ceea ce se poate utiliza. 68 00:03:15,030 --> 00:03:22,000 >> Și al treilea lucru este terminalul, care este de fapt foarte dulce. 69 00:03:22,000 --> 00:03:26,420 Oamenii, de obicei, sunt un fel de speriat de terminalul pentru că e foarte 70 00:03:26,420 --> 00:03:32,320 cerere de modă veche, în care vă doar de tip practic tot cu 71 00:03:32,320 --> 00:03:32,940 tastatura. 72 00:03:32,940 --> 00:03:34,730 Nu este o mulțime de interacțiune cu mouse-ul. 73 00:03:34,730 --> 00:03:39,780 Dar, de fapt terminalul face lucruri foarte bune. 74 00:03:39,780 --> 00:03:43,990 >> Mai întâi de toate, hai sa mergem prin unele comenzi pe care le 75 00:03:43,990 --> 00:03:48,765 pot utiliza în terminal. 76 00:03:48,765 --> 00:03:51,995 >> LAUREN CARVALHO: Și nu ezitați să oprească ne dacă aveți întrebări. 77 00:03:51,995 --> 00:03:52,830 >> LUCAS FREITAS: Da. 78 00:03:52,830 --> 00:04:01,950 Deci, prima comanda pe care o avem pentru terminalul este ls. 79 00:04:01,950 --> 00:04:06,450 ls înseamnă în esență lista totul, toate fișierele și toți directorii, 80 00:04:06,450 --> 00:04:09,540 că am la locul pe care eu sunt la. 81 00:04:09,540 --> 00:04:15,200 Deci, dacă eu fac E aici, am de gând să văd că am unele directoare. 82 00:04:15,200 --> 00:04:18,670 Am desktop, descărcări, jurnalele, și vhosts. 83 00:04:18,670 --> 00:04:21,260 Cei care sunt în albastru, deoarece acestea sunt toate directoarele. 84 00:04:21,260 --> 00:04:24,160 >> Atunci aveți alte fișiere. 85 00:04:24,160 --> 00:04:27,840 Trebuie ca salut și hello.c, care sunt doar fișiere, și sunt în 86 00:04:27,840 --> 00:04:28,910 culori diferite. 87 00:04:28,910 --> 00:04:33,960 Deci, aceasta este o comandă foarte importantă doar puteți vedea ce fișiere 88 00:04:33,960 --> 00:04:37,690 și directoarele pe care le au în directorul care 89 00:04:37,690 --> 00:04:39,410 esti la în terminal. 90 00:04:39,410 --> 00:04:44,580 Când vedeți jharvard @ aparat și apoi puțin simbolul acolo, 91 00:04:44,580 --> 00:04:49,185 tilda, asta înseamnă doar că e director că ești în acest moment. 92 00:04:49,185 --> 00:04:52,970 >> LAUREN CARVALHO: Deci tastarea ls este aproape cum ar fi clic pe folderul 93 00:04:52,970 --> 00:04:57,380 care este listat acolo, în arată că tu tot conținutul pe care sunt 94 00:04:57,380 --> 00:04:58,886 în acel folder. 95 00:04:58,886 --> 00:05:04,232 >> Audiența: Este de text după hello.c? 96 00:05:04,232 --> 00:05:10,070 >> LAUREN CARVALHO: Oh, nu se poate a se vedea că, pentru că e albastru. 97 00:05:10,070 --> 00:05:12,490 >> LUCAS FREITAS: Se spune busteni si vhosts. 98 00:05:12,490 --> 00:05:14,450 >> LAUREN CARVALHO: Acestea sunt doar alte dosare. 99 00:05:14,450 --> 00:05:16,890 Îmi pare rău, e foarte greu pentru a vedea. 100 00:05:16,890 --> 00:05:19,090 Poate că dacă ne-am stins luminile? 101 00:05:19,090 --> 00:05:23,002 Colton, vrei să încerci și găsi întrerupătorul de lumină? 102 00:05:23,002 --> 00:05:24,960 Îmi pare rău pentru asta. 103 00:05:24,960 --> 00:05:25,675 Nu m-am gândi la asta. 104 00:05:25,675 --> 00:05:27,340 >> LUCAS FREITAS: Dar e de fapt - 105 00:05:27,340 --> 00:05:30,310 Da, dacă ai putea - 106 00:05:30,310 --> 00:05:32,278 >> LAUREN CARVALHO: Zoom in ecran. 107 00:05:32,278 --> 00:05:34,738 >> LUCAS FREITAS: Eu nu fac au această caracteristică. 108 00:05:34,738 --> 00:05:35,988 >> LAUREN CARVALHO: [inaudibil]. 109 00:05:35,988 --> 00:05:39,528 110 00:05:39,528 --> 00:05:40,001 OK. 111 00:05:40,001 --> 00:05:44,270 Ei bine, nu e doar o mulțime de naturale lumină în această cameră, de asemenea. 112 00:05:44,270 --> 00:05:48,726 >> LUCAS FREITAS: Să presupunem că există alte două directoare de acolo. 113 00:05:48,726 --> 00:05:49,780 >> LAUREN CARVALHO: Doar aibă cu noi. 114 00:05:49,780 --> 00:05:54,200 Aceasta este singura parte care veți se uita la terminal. 115 00:05:54,200 --> 00:06:00,160 >> LUCAS FREITAS: Următoarea comandă este în principiu, poate doriți să organizați 116 00:06:00,160 --> 00:06:01,080 fișierele - 117 00:06:01,080 --> 00:06:05,015 de exemplu, toate fișierele C într-un singur director, dar nu aveți un 118 00:06:05,015 --> 00:06:07,180 director doar pentru fișiere C încă. 119 00:06:07,180 --> 00:06:11,590 Puteți crea de fapt un director folosind terminalul de asemenea, care este 120 00:06:11,590 --> 00:06:15,670 același lucru ca și clic dreapta și a zis Folder nou. 121 00:06:15,670 --> 00:06:20,640 Comanda se face director, care este mkdir, deci practic "face" și 122 00:06:20,640 --> 00:06:21,260 "Directorul." 123 00:06:21,260 --> 00:06:22,680 >> Și apoi puteți pune numele directorului. 124 00:06:22,680 --> 00:06:32,490 Să spunem că am vrut să fie numit, Nu știu, să spunem pset1 Doing 125 00:06:32,490 --> 00:06:33,900 acest lucru, am creat un director. 126 00:06:33,900 --> 00:06:35,910 Să verificați că este acolo. 127 00:06:35,910 --> 00:06:40,870 Deci, dacă eu fac ls, acum văd busteni, și apoi pset1, și apoi vhosts. 128 00:06:40,870 --> 00:06:44,360 Așa că am avea noul director acolo. 129 00:06:44,360 --> 00:06:46,670 >> Și apoi, după ce avea un nou director, poate doriți să navigați 130 00:06:46,670 --> 00:06:51,760 în ea, astfel încât următoarea comandă acest cd, ceea ce înseamnă, practic, doar du-te la o 131 00:06:51,760 --> 00:06:53,400 directorul specific. 132 00:06:53,400 --> 00:06:58,377 Așa că dacă vreau să merg la pset1, Eu pot face doar cd pset1. 133 00:06:58,377 --> 00:07:01,550 >> LAUREN CARVALHO: cd standuri pentru schimbare director, [auzite] posibilitatea de a 134 00:07:01,550 --> 00:07:02,230 amintiți-vă că. 135 00:07:02,230 --> 00:07:05,460 >> LUCAS FREITAS: Și acum veți vedea că în loc de a avea doar jharvard 136 00:07:05,460 --> 00:07:09,150 aparat, am jharvard aparat, și apoi pset1, deoarece se arată 137 00:07:09,150 --> 00:07:14,150 -mi unde sunt în acest calculator. 138 00:07:14,150 --> 00:07:17,510 >> Acum, dacă vreau să mă întorc la director care a fost înainte de aceasta, am 139 00:07:17,510 --> 00:07:22,950 poate face un punct cd punct, ceea ce înseamnă pur și simplu du-te la directorul pe care am fost înainte, 140 00:07:22,950 --> 00:07:26,290 ca mamă a acestei director, practic. 141 00:07:26,290 --> 00:07:30,460 Și acum văd că am înapoi la jharvard. 142 00:07:30,460 --> 00:07:36,050 >> Următorul lucru pe care pot să-l fac este rm, care este elimina un fișier. 143 00:07:36,050 --> 00:07:39,590 De exemplu, să facem mai întâi ls pentru a vedea ce am aici. 144 00:07:39,590 --> 00:07:41,790 Eu am salut și hello.c. 145 00:07:41,790 --> 00:07:43,780 Să spunem că vreau să le eliminați. 146 00:07:43,780 --> 00:07:48,280 Eu pot face rm salut. 147 00:07:48,280 --> 00:07:52,770 Se va spune "elimina fișier regulat Alo? "Iar eu spun" da ". Și acum, dacă am 148 00:07:52,770 --> 00:07:56,410 face ls, am vedea că este nu mai există. 149 00:07:56,410 --> 00:07:59,700 >> Dacă am încerca să folosiți rm pentru un director, totuși, nu se va 150 00:07:59,700 --> 00:08:00,800 să te las să faci nimic. 151 00:08:00,800 --> 00:08:02,960 Se va spune, hei, tu nu se poate elimina un director. 152 00:08:02,960 --> 00:08:08,100 Deci avem acest alt venit numit rmdir, ceea ce înseamnă, practic, doar 153 00:08:08,100 --> 00:08:09,800 elimina director. 154 00:08:09,800 --> 00:08:12,842 Eu pot, de exemplu, elimina pset1. 155 00:08:12,842 --> 00:08:15,770 Și dacă eu fac ls, eu nu fac l-au mai. 156 00:08:15,770 --> 00:08:18,430 >> Orice întrebări cu privire la acest lucru? 157 00:08:18,430 --> 00:08:20,200 Nu? 158 00:08:20,200 --> 00:08:20,595 Da? 159 00:08:20,595 --> 00:08:23,954 >> Audiența: Este important să plece un spațiu după - ori de câte ori 160 00:08:23,954 --> 00:08:26,540 începeți să scrieți ceva în? 161 00:08:26,540 --> 00:08:26,830 >> LUCAS FREITAS: Da. 162 00:08:26,830 --> 00:08:32,080 Dacă fac place cd și directorul, Am să pun un spațiu. 163 00:08:32,080 --> 00:08:33,350 Ce spațiu vorbești? 164 00:08:33,350 --> 00:08:34,979 >> LAUREN CARVALHO: Spațiul dintre CD și [neauzit]. 165 00:08:34,979 --> 00:08:37,710 >> LUCAS FREITAS: Da, va trebui să pune spațiile pentru că CD-ul este 166 00:08:37,710 --> 00:08:42,770 comandă, și apoi șirul următor care ce tip este, în principiu director. 167 00:08:42,770 --> 00:08:45,020 Deci, e ca un argument. 168 00:08:45,020 --> 00:08:45,360 Da? 169 00:08:45,360 --> 00:08:47,952 >> Audiența: Când listă, toți cei sunt diferite directoare, corect? 170 00:08:47,952 --> 00:08:50,125 >> LUCAS FREITAS: Da, ei sunt în directorul. 171 00:08:50,125 --> 00:08:53,524 >> Audiența: Ce este diferențele printre directoarele? 172 00:08:53,524 --> 00:08:55,390 >> LUCAS FREITAS: Sunt doar dosare diferite. 173 00:08:55,390 --> 00:08:57,366 Director este un director în calculatorul dumneavoastră. 174 00:08:57,366 --> 00:08:58,120 >> AUDIENTA: Open folder. 175 00:08:58,120 --> 00:09:00,140 >> LUCAS FREITAS: Da, e doar un folder deschis. 176 00:09:00,140 --> 00:09:03,400 >> LAUREN Carvalho: aici, cele , care sunt în albastru sunt reale 177 00:09:03,400 --> 00:09:07,107 directoare pe care le puteți obține în și apoi vezi o grămadă de lucruri care sunt 178 00:09:07,107 --> 00:09:10,248 în care, ceea ce este regretabil pentru că nu se poate citi, de fapt, 179 00:09:10,248 --> 00:09:11,290 cele în albastru. 180 00:09:11,290 --> 00:09:16,166 Și cele din alb sunt doar fișiere , care sunt în directorul curent. 181 00:09:16,166 --> 00:09:17,870 >> LUCAS FREITAS: Deci directoare sunt dosare. 182 00:09:17,870 --> 00:09:18,810 Celelalte sunt fișiere. 183 00:09:18,810 --> 00:09:22,810 >> Audienta: Care este comanda a reseta sau să-l clar? 184 00:09:22,810 --> 00:09:23,650 LUCAS FREITAS: Pentru a șterge? 185 00:09:23,650 --> 00:09:24,362 LAUREN CARVALHO: Pentru a șterge? 186 00:09:24,362 --> 00:09:27,985 LUCAS FREITAS: Cred că e "clar". Da. 187 00:09:27,985 --> 00:09:32,370 Deci, doar tastați clar dacă ecranul este prea murdar. 188 00:09:32,370 --> 00:09:33,700 Orice alte întrebări? 189 00:09:33,700 --> 00:09:36,720 Și vă va învăța o grămadă de alte comenzi doar în mod natural în timpul 190 00:09:36,720 --> 00:09:38,405 semestru, deoarece acestea sunt foarte utile. 191 00:09:38,405 --> 00:09:42,380 192 00:09:42,380 --> 00:09:46,155 >> Deci, acum, hai sa vorbim despre compilarea. 193 00:09:46,155 --> 00:09:51,510 194 00:09:51,510 --> 00:09:54,730 Am vorbit despre pseudocod și codul sursă și cod obiect. 195 00:09:54,730 --> 00:09:59,020 Și există o mulțime de coduri, și poate voi sunteți confuz despre asta. 196 00:09:59,020 --> 00:10:02,190 Hai sa vorbim un pic despre ceea ce se întâmplă atunci când scrii un program, 197 00:10:02,190 --> 00:10:06,620 și tu-l compilați, și devine un fișier executabil. 198 00:10:06,620 --> 00:10:10,190 Acestea sunt toate cuvintele pe care le baieti Probabil a auzit, și poate că tu nu ești 199 00:10:10,190 --> 00:10:12,130 într-adevăr sigur că ceea ce se întâmplă. 200 00:10:12,130 --> 00:10:15,540 >> Să spunem, de exemplu, pe care vreau să scrie un program care spune "salut". 201 00:10:15,540 --> 00:10:19,670 primul lucru care vine în mintea ta este ce fel de a încerca să se gândească la modul în care ești 202 00:10:19,670 --> 00:10:23,000 de gând să faci asta în mintea ta, și esti, probabil, de gândire în limba engleză sau 203 00:10:23,000 --> 00:10:25,550 o altă limbă, cum ar fi naturale limba, probabil. 204 00:10:25,550 --> 00:10:28,770 Si apoi te gandesti, bine, dacă vreau să, de exemplu, a scrie un program care 205 00:10:28,770 --> 00:10:32,630 spune: "Bună ziua," aș începe un program, Eu va imprima salut, iar apoi voi 206 00:10:32,630 --> 00:10:35,270 închide programul. 207 00:10:35,270 --> 00:10:36,350 Acest lucru este pseudocod. 208 00:10:36,350 --> 00:10:41,740 Acest lucru este doar practic pe care încercați să veni cu o serie de evenimente 209 00:10:41,740 --> 00:10:46,510 care ai de gând să faci pentru a fi capabil să scrie un program. 210 00:10:46,510 --> 00:10:49,610 >> Apoi, aveți codul sursă, și codul sursă nu trebuie să 211 00:10:49,610 --> 00:10:53,240 să fie în mod special în C. Vorbim despre codul sursă în C, pentru că e 212 00:10:53,240 --> 00:10:56,760 limba suntem de învățare, dar desigur Codul poate fi destul de mult orice 213 00:10:56,760 --> 00:10:59,160 limbaj de programare pe care le au. 214 00:10:59,160 --> 00:11:01,230 Mai târziu, în semestrul, ai de gând să învețe alte limbi. 215 00:11:01,230 --> 00:11:03,230 Acesta este, de asemenea, codul sursă. 216 00:11:03,230 --> 00:11:07,380 >> De exemplu, aici, aceasta este sursa mea cod, și apoi eu, inclusiv o 217 00:11:07,380 --> 00:11:10,170 bibliotecă, și apoi am început principal, iar apoi am imprima. 218 00:11:10,170 --> 00:11:14,510 Și Laura este de gând să vorbim un pic bit despre toate astea. 219 00:11:14,510 --> 00:11:16,190 Deci, aceasta este codul sursă. 220 00:11:16,190 --> 00:11:19,590 >> Și ceea ce este codul obiect? 221 00:11:19,590 --> 00:11:22,500 Obiectul este o grămadă de zerouri și cele, practic. 222 00:11:22,500 --> 00:11:27,680 Ce se întâmplă este de ai inițial pseudocod, care este tot în limba engleză. 223 00:11:27,680 --> 00:11:29,020 Și vreau să spun, ați înțeles. 224 00:11:29,020 --> 00:11:31,260 Probabil prietenii tăi înțeleg el, și cei mai mulți oameni ar fi 225 00:11:31,260 --> 00:11:32,560 înțelege ideea. 226 00:11:32,560 --> 00:11:36,770 Dar calculatoarele sunt foarte prost, și ei nu înțeleg limba engleză, astfel încât să 227 00:11:36,770 --> 00:11:41,320 au traduce asta în ceva, de obicei, traduse în unele 228 00:11:41,320 --> 00:11:42,460 limbaj de programare. 229 00:11:42,460 --> 00:11:46,840 >> Și vă puteți gândi de o programare limba ca un fel de limbaj 230 00:11:46,840 --> 00:11:50,970 ca să vă spun cât de computer de a vorbi și de a înțelege. 231 00:11:50,970 --> 00:11:54,160 Ești practic scris ceva în o limbă pe care amândoi și dumneavoastră 232 00:11:54,160 --> 00:11:55,190 calculator înțeleg. 233 00:11:55,190 --> 00:11:56,470 Asta e codul sursă. 234 00:11:56,470 --> 00:12:00,580 Deci, va forma pseudocod la sursă cod, este de până la tine. 235 00:12:00,580 --> 00:12:03,130 Este practic faci program. 236 00:12:03,130 --> 00:12:06,740 >> Dar problema este că nu chiar de calculator 237 00:12:06,740 --> 00:12:08,360 înțelege limbajul de programare. 238 00:12:08,360 --> 00:12:10,320 Acesta nu înțelege codul sursă la toate. 239 00:12:10,320 --> 00:12:12,520 Este de fapt doar înțelege zero si unu. 240 00:12:12,520 --> 00:12:16,570 Deci avem acest lucru foarte magie numit un compilator, care, practic, este 241 00:12:16,570 --> 00:12:19,755 mergi la a lua sursa numit pe care le a scris într-o limbă pe care atât tu cât 242 00:12:19,755 --> 00:12:25,320 și computerul vorbesc, și acum ești O să transforme că în 243 00:12:25,320 --> 00:12:26,270 zero si unu. 244 00:12:26,270 --> 00:12:30,860 Deci, practic ceea ce compilatorul nu este devine cod sursă, în acest caz C, 245 00:12:30,860 --> 00:12:34,100 este de gând să-l transforme în zerouri și cele care calculatorul 246 00:12:34,100 --> 00:12:37,440 înțelege și poate face o fișier executabil din ea. 247 00:12:37,440 --> 00:12:40,900 >> Asta face sens? 248 00:12:40,900 --> 00:12:45,300 Vă puteți gândi doar de compilator ca un fel de traducător, care este 249 00:12:45,300 --> 00:12:50,280 ajutându-vă explica la computer exact ceea ce ar trebui să facă. 250 00:12:50,280 --> 00:12:52,310 >> Dar cum pot compila. 251 00:12:52,310 --> 00:12:59,680 Să mergem înapoi la aparat, iar Să spunem că eu fac acest program. 252 00:12:59,680 --> 00:13:04,220 În primul rând am de gând pentru a crea un director aici, și am de gând să-l numesc 253 00:13:04,220 --> 00:13:11,130 "Practică". Acum am de gând pentru a naviga la directorul, așa practica cd. 254 00:13:11,130 --> 00:13:13,210 Acum sunt în practică. 255 00:13:13,210 --> 00:13:16,860 >> Acum vreau să încep gedit, Deci, cum fac asta? 256 00:13:16,860 --> 00:13:21,920 Pot să faceți clic aici, sau pot pur și simplu literalmente de tip "gedit", și se va 257 00:13:21,920 --> 00:13:24,290 pentru a deschide pentru mine. 258 00:13:24,290 --> 00:13:28,100 >> Acum am de gând să tastați programul meu, așa exact ceea ce am scris în diapozitiv. 259 00:13:28,100 --> 00:13:30,360 Declar o bibliotecă. 260 00:13:30,360 --> 00:13:35,440 Fac int principal, gol. 261 00:13:35,440 --> 00:13:39,180 Și acum fac printf, salut. 262 00:13:39,180 --> 00:13:46,530 263 00:13:46,530 --> 00:13:50,170 Acum am de gând să salveze această. 264 00:13:50,170 --> 00:13:53,665 Lasă-mă să-l pună în practică, și Am de gând să numim această hello.c. 265 00:13:53,665 --> 00:13:57,710 266 00:13:57,710 --> 00:13:59,590 Deci, acum este salvată. 267 00:13:59,590 --> 00:14:03,250 >> Dacă vreau să-l compilați, eu de fapt se poate face în două locuri diferite. 268 00:14:03,250 --> 00:14:07,090 Pot să o fac, fie într-o fereastră terminal, astfel încât aceasta de mare, sau puteți 269 00:14:07,090 --> 00:14:09,860 folosi gedit care are de fapt o fereastră de terminal chiar aici. 270 00:14:09,860 --> 00:14:17,890 Astfel încât să puteți foarte convenabil face doar codul, iar apoi aveți posibilitatea să tastați doar 271 00:14:17,890 --> 00:14:20,670 indiferent de aici, și să încerce să-l compilați. 272 00:14:20,670 --> 00:14:23,450 >> Deci, cum am compila cod? 273 00:14:23,450 --> 00:14:27,495 Cel mai simplu mod pe care o avem este prin utilizarea face, care este o funcție care 274 00:14:27,495 --> 00:14:29,590 este, în principiu va compila codul. 275 00:14:29,590 --> 00:14:34,170 Trebuie doar să spui facă salut, așa "Face" și numele programului. 276 00:14:34,170 --> 00:14:35,420 >> Oops. 277 00:14:35,420 --> 00:14:38,250 278 00:14:38,250 --> 00:14:39,280 Acest lucru este ciudat. 279 00:14:39,280 --> 00:14:41,738 >> LAUREN CARVALHO: Poti sa [inaudibil]? 280 00:14:41,738 --> 00:14:45,182 281 00:14:45,182 --> 00:14:45,990 >> LUCAS FREITAS: Îmi pare rău. 282 00:14:45,990 --> 00:14:49,960 Nu l-am salva în directorul corect. 283 00:14:49,960 --> 00:14:52,130 Vino la practica, iar acum salvați-l ca hello.c. 284 00:14:52,130 --> 00:14:54,750 Îmi pare rău. 285 00:14:54,750 --> 00:14:56,250 Acum, acesta este salvat. 286 00:14:56,250 --> 00:14:58,300 >> Lasă-mă să fac ls și să fie sigur că e aici. 287 00:14:58,300 --> 00:14:59,460 OK, acum e aici. 288 00:14:59,460 --> 00:15:05,930 Deci, acum, dacă fac fac salut, scuipa o mulțime de lucruri, dar apoi ea doar dă 289 00:15:05,930 --> 00:15:08,870 mi-o altă linie pentru terminalul, care înseamnă că a avut succes. 290 00:15:08,870 --> 00:15:13,160 Deci, acum, dacă am face un ls din nou, am de fapt, a se vedea acest fișier în verde, care este 291 00:15:13,160 --> 00:15:15,470 fișier executabil. 292 00:15:15,470 --> 00:15:21,700 >> Și apoi, dacă vreau să-l rula, tot ce Ce trebuie să fac este slash punct salut. 293 00:15:21,700 --> 00:15:25,830 O să salut aici, așa este exact ceea ce am eu o cer asta. 294 00:15:25,830 --> 00:15:29,620 >> Nu este unul mai mult mod de compilare, care se utilizează zăngănit. 295 00:15:29,620 --> 00:15:35,740 Zăngănit este doar un compilator pe care le avem, și e un pic mai detaliată a 296 00:15:35,740 --> 00:15:36,390 compilați-l. 297 00:15:36,390 --> 00:15:40,180 Dar funcționează la fel de bine. 298 00:15:40,180 --> 00:15:46,810 Deci, dacă am face zăngănit, și apoi-o, și apoi numele pe care vreau să dau la 299 00:15:46,810 --> 00:15:50,400 fișierul executabil, asa ca hai sa spunem "Salut". Și apoi fișierul pe care vreau 300 00:15:50,400 --> 00:15:53,460 pentru a compila, hello.c. 301 00:15:53,460 --> 00:15:55,900 Este, de asemenea, va compila. 302 00:15:55,900 --> 00:15:59,020 Și aveți fișierul de aici, și Pot să-l executa la fel de bine. 303 00:15:59,020 --> 00:16:00,610 Astfel încât ambele dintre ei lucrează. 304 00:16:00,610 --> 00:16:03,270 >> Asta face sens? 305 00:16:03,270 --> 00:16:06,020 Orice întrebări? 306 00:16:06,020 --> 00:16:09,020 >> Audiența: poți mări într-un pic? 307 00:16:09,020 --> 00:16:09,913 >> LUCAS FREITAS: Îmi pare rău? 308 00:16:09,913 --> 00:16:11,135 >> Audiența: Zoom in? 309 00:16:11,135 --> 00:16:13,310 >> LAUREN CARVALHO: Te crezi doar poate comanda plus. 310 00:16:13,310 --> 00:16:14,295 >> LUCAS FREITAS: Poruncește ce? 311 00:16:14,295 --> 00:16:16,060 >> LAUREN CARVALHO: Command plus. 312 00:16:16,060 --> 00:16:17,000 >> LUCAS FREITAS: Nu. 313 00:16:17,000 --> 00:16:19,350 >> LAUREN CARVALHO: Oh, asta nu-i de gând să lucreze pentru că - 314 00:16:19,350 --> 00:16:25,548 este pentru că ne-am stabilit rezoluția pentru acest lucru. 315 00:16:25,548 --> 00:16:27,450 >> LUCAS FREITAS: Eu nu fac cred că putem mări inch 316 00:16:27,450 --> 00:16:30,852 317 00:16:30,852 --> 00:16:34,130 Da, nu putem mări. 318 00:16:34,130 --> 00:16:36,200 Aveți o întrebare? 319 00:16:36,200 --> 00:16:36,680 Scuze. 320 00:16:36,680 --> 00:16:39,170 >> Audiența: Poți să repeți zăngănit? 321 00:16:39,170 --> 00:16:40,630 >> LUCAS FREITAS: zăngănitul? 322 00:16:40,630 --> 00:16:44,190 Zăngănit este același lucru ca și face, dar Diferența este că în primul rând am de gând 323 00:16:44,190 --> 00:16:48,460 pentru a scrie zăngănit, care este comanda, atunci am de gând să fac -0, toate, ceea ce este 324 00:16:48,460 --> 00:16:51,680 doar ceea ce am de gând să afla mai târziu, ca un steag. 325 00:16:51,680 --> 00:16:54,440 Deci cred că ai mereu trebuie să puneți-O. 326 00:16:54,440 --> 00:16:58,690 >> Și apoi în primul rând, ai de gând să pună numele de fișier executabil, 327 00:16:58,690 --> 00:17:00,680 de fapt fișierul pe care esti va crea. 328 00:17:00,680 --> 00:17:06,430 Deci, eu pot spune, de exemplu, hello2 și apoi fișierul pe care vreau să compila, 329 00:17:06,430 --> 00:17:07,800 care este fișierul c... 330 00:17:07,800 --> 00:17:09,240 Deci, asta e hello.c. 331 00:17:09,240 --> 00:17:10,871 Asta face sens? 332 00:17:10,871 --> 00:17:12,635 >> Audiența: Alo ce? 333 00:17:12,635 --> 00:17:13,076 Ce este asta? 334 00:17:13,076 --> 00:17:15,960 >> LUCAS FREITAS: hello.c. 335 00:17:15,960 --> 00:17:19,849 Și dacă l-am compila, și în cazul în care Eu ls, am, de asemenea, o 336 00:17:19,849 --> 00:17:22,010 hello2 că am compilat. 337 00:17:22,010 --> 00:17:26,339 Și dacă am încerca să îl rulați, se va face exact același lucru ca și salut, 338 00:17:26,339 --> 00:17:27,089 doar imprima salut. 339 00:17:27,089 --> 00:17:31,660 >> Audiența: Cum pentru marca puteți pune hello.c după? 340 00:17:31,660 --> 00:17:33,880 >> LUCAS FREITAS: In face, te Nu trebuie să puneți. c.. 341 00:17:33,880 --> 00:17:36,140 În a face, vă spun doar numele programului. 342 00:17:36,140 --> 00:17:37,750 Nu trebuie să spun. C.. 343 00:17:37,750 --> 00:17:39,020 Dar pentru zăngănit, ar trebui. 344 00:17:39,020 --> 00:17:44,040 >> Audiența: Cu zăngănit face, de asemenea, trebuie să adăugați [neauzit] 345 00:17:44,040 --> 00:17:44,480 >> LAUREN CARVALHO: Da. 346 00:17:44,480 --> 00:17:46,180 Deci, va trebui, de asemenea, la biblioteca. 347 00:17:46,180 --> 00:17:51,170 >> LUCAS FREITAS: Da, asta e ceva vom folosi mai târziu. 348 00:17:51,170 --> 00:17:54,850 Asta se numește de legătură, și cred că suntem O să vorbim despre asta mai târziu. 349 00:17:54,850 --> 00:17:55,930 O altă întrebare? 350 00:17:55,930 --> 00:17:59,927 >> Audiența: Nu ai pus un zăngănit punct slash? 351 00:17:59,927 --> 00:18:01,060 >> LUCAS FREITAS: Nu. 352 00:18:01,060 --> 00:18:06,040 Punct slash este doar de a deschide fișierul executabil. 353 00:18:06,040 --> 00:18:09,440 Deci zăngănit, tu doar scrie "zăngănit," și apoi, dacă doriți să deschideți 354 00:18:09,440 --> 00:18:12,640 fișier executabil pe care tocmai ați compilate, atunci tu nu dot 355 00:18:12,640 --> 00:18:13,780 slash și numele. 356 00:18:13,780 --> 00:18:15,100 Asta face sens? 357 00:18:15,100 --> 00:18:18,635 358 00:18:18,635 --> 00:18:22,435 >> Audiența: Daca ar fi sa doar schimbare [Auzite] a hello world, nu-i asa 359 00:18:22,435 --> 00:18:23,870 trebuie să-l recompilați? 360 00:18:23,870 --> 00:18:24,750 >> LUCAS FREITAS: Da. 361 00:18:24,750 --> 00:18:36,650 dacă vreau să spun, de exemplu, "salut acolo, "Eu pot doar salva acum, și eu 362 00:18:36,650 --> 00:18:38,020 doar compilați din nou. 363 00:18:38,020 --> 00:18:41,910 Deci, lasă-mă să fac un make salut. 364 00:18:41,910 --> 00:18:48,490 Și dacă eu fac salut, o să spune "salut acolo." Are sens? 365 00:18:48,490 --> 00:18:50,280 Orice alte întrebări? 366 00:18:50,280 --> 00:18:54,384 >> Audiența: Nu trebuie să includă I / O standard pentru a coordona activitatea? 367 00:18:54,384 --> 00:18:55,480 >> LUCAS FREITAS: Da. 368 00:18:55,480 --> 00:18:58,050 Standard I / O este de fapt biblioteca, care are o 369 00:18:58,050 --> 00:19:00,050 de punere în aplicare pentru printf. 370 00:19:00,050 --> 00:19:03,450 371 00:19:03,450 --> 00:19:06,910 Astfel că dreptul de lucru de pe top include stdio. 372 00:19:06,910 --> 00:19:11,920 Acesta este echipat cu o bibliotecă care are de fapt o grămadă de diferite 373 00:19:11,920 --> 00:19:13,260 instrumente pe care le puteți folosi. 374 00:19:13,260 --> 00:19:13,480 una? 375 00:19:13,480 --> 00:19:17,820 Dintre ele este printf care este o funcție că, practic, printuri 376 00:19:17,820 --> 00:19:21,290 mesajelor pe ecran. 377 00:19:21,290 --> 00:19:23,200 >> Orice alte întrebări? 378 00:19:23,200 --> 00:19:24,700 Nu? 379 00:19:24,700 --> 00:19:25,060 OK. 380 00:19:25,060 --> 00:19:31,620 Deci, acum, hai sa vorbim despre - 381 00:19:31,620 --> 00:19:33,948 >> LAUREN CARVALHO: Să du-te la ghidul de stil. 382 00:19:33,948 --> 00:19:35,896 Vrei să-l găsiți doar aici? 383 00:19:35,896 --> 00:19:37,880 >> LUCAS FREITAS: Deci vom pentru a vorbi despre stil. 384 00:19:37,880 --> 00:19:47,006 385 00:19:47,006 --> 00:19:50,430 >> LAUREN CARVALHO: Oh, David nu a terminat. 386 00:19:50,430 --> 00:19:51,230 OK. 387 00:19:51,230 --> 00:19:53,870 De ce nu ne-am întoarce la stil de la sfârșitul? 388 00:19:53,870 --> 00:19:56,220 A fost de fapt actualizate în timp ce vorbim. 389 00:19:56,220 --> 00:19:56,810 >> LUCAS FREITAS: Da. 390 00:19:56,810 --> 00:19:58,300 Să cale pentru David pentru a termina asta. 391 00:19:58,300 --> 00:20:07,150 392 00:20:07,150 --> 00:20:08,600 >> LAUREN CARVALHO: Can vom trece de fapt? 393 00:20:08,600 --> 00:20:14,920 394 00:20:14,920 --> 00:20:17,200 >> Deci, sper că toată lumea a fost se bucură de Scratch. 395 00:20:17,200 --> 00:20:21,950 Din păcate, e timpul să se mute departe de acest lucru - 396 00:20:21,950 --> 00:20:25,280 din păcate, e timpul să se mute departe din aceste blocuri de programare destul de 397 00:20:25,280 --> 00:20:28,530 pe C. Dar, din fericire, tot a programare construiește pe care le-ați 398 00:20:28,530 --> 00:20:32,370 a fost de lucru cu în Scratch sunt direct traductibile la C, și suntem 399 00:20:32,370 --> 00:20:35,130 de gând să înceapă să învețe despre unele dintre ele chiar acum. 400 00:20:35,130 --> 00:20:39,200 Să vorbim mai întâi despre condițiile de în expresii booleene. 401 00:20:39,200 --> 00:20:41,944 >> Acesta este pe rezervă energia bateriei. 402 00:20:41,944 --> 00:20:43,912 >> LUCAS FREITAS: Cât este că nu de lucru? 403 00:20:43,912 --> 00:20:47,850 404 00:20:47,850 --> 00:20:48,010 OK. 405 00:20:48,010 --> 00:20:50,256 Tu du-te acolo, am de gând pentru a obține - 406 00:20:50,256 --> 00:20:53,700 407 00:20:53,700 --> 00:20:57,390 >> LAUREN CARVALHO: Deci condițiile sunt important, deoarece ele ne permit să 408 00:20:57,390 --> 00:21:00,588 introducă logică în programele noastre. 409 00:21:00,588 --> 00:21:04,620 Iată un exemplu de o condiție în cadrul unui program C. 410 00:21:04,620 --> 00:21:06,130 Să observăm cum acest lucru - 411 00:21:06,130 --> 00:21:11,324 Deci, acest bloc stare chiar aici, acest Declarația printf nu va executa 412 00:21:11,324 --> 00:21:14,860 decât dacă starea cadrul paranteze, n mai mare decât 0, 413 00:21:14,860 --> 00:21:16,800 evaluează la true. 414 00:21:16,800 --> 00:21:20,780 >> Acum, toate condițiile din cadrul f declarații sunt expresii booleene, 415 00:21:20,780 --> 00:21:22,970 ceea ce înseamnă că există sunt doar două opțiuni. 416 00:21:22,970 --> 00:21:26,856 Ele ar putea evalua fie adevărat, sau se pot evalua la fals. 417 00:21:26,856 --> 00:21:33,174 Deci, aici, așa că acest lucru are sens, nu? n mai mare decât 0, înseamnă că este un pozitiv 418 00:21:33,174 --> 00:21:41,160 număr, ceea ce înseamnă că se va imprima out "ai ales un număr pozitiv." 419 00:21:41,160 --> 00:21:44,630 >> Există o mulțime de expresii booleene care poate forma cu condiția unei 420 00:21:44,630 --> 00:21:47,190 Declarația de inițializare. 421 00:21:47,190 --> 00:21:48,520 Avem mai puțin decât. 422 00:21:48,520 --> 00:21:50,950 Acest lucru este mai mică sau egală cu. 423 00:21:50,950 --> 00:21:52,200 Acesta este doar un amuzant [neauzit]. 424 00:21:52,200 --> 00:21:54,800 425 00:21:54,800 --> 00:22:01,630 Dacă doriți ca printf să apară în cazul în care este mai mare sau egal cu 0, atunci 426 00:22:01,630 --> 00:22:03,345 v-ar alege acest lucru. 427 00:22:03,345 --> 00:22:07,750 Astfel egalul doar adaugă dreapta după mai mare decât semnul. 428 00:22:07,750 --> 00:22:12,030 >> Irilor, care este diferit de doar un semn egal, irilor 429 00:22:12,030 --> 00:22:16,430 înseamnă de fapt că, indiferent pe partea stângă a acestei este aceeași ca 430 00:22:16,430 --> 00:22:20,610 ceea ce este pe partea dreapta a acestei în cazul în care un semn egal este ceea ce? 431 00:22:20,610 --> 00:22:23,333 Ceea ce este doar un semn egal? 432 00:22:23,333 --> 00:22:24,275 Cesiune. 433 00:22:24,275 --> 00:22:25,985 >> LUCAS FREITAS: Cine a spus asta? 434 00:22:25,985 --> 00:22:27,170 Este ca bomboane? 435 00:22:27,170 --> 00:22:27,370 Oh, nu. 436 00:22:27,370 --> 00:22:27,885 Scuze. 437 00:22:27,885 --> 00:22:28,210 Scuze. 438 00:22:28,210 --> 00:22:30,400 Amândoi obține bomboane. 439 00:22:30,400 --> 00:22:31,510 Oh, OK! 440 00:22:31,510 --> 00:22:33,046 Trei oameni a lua bomboane! 441 00:22:33,046 --> 00:22:37,393 >> LAUREN CARVALHO: Deci, asta de aici este operatorul bang precedent 442 00:22:37,393 --> 00:22:40,240 semnul egal, astfel încât este nu este egal cu. 443 00:22:40,240 --> 00:22:46,560 Deci, dacă acest lucru a fost în starea mea, corpul condiției ar 444 00:22:46,560 --> 00:22:49,615 executa numai în cazul în care orice în stânga nu este același lucru cu 445 00:22:49,615 --> 00:22:52,540 ceea ce este pe dreapta. 446 00:22:52,540 --> 00:22:57,680 >> Pot avea, de asemenea, drepți semn de exclamare. 447 00:22:57,680 --> 00:23:01,250 De fapt, vom vedea într-o funcție alunece cum ar fi folosit acest. 448 00:23:01,250 --> 00:23:03,830 >> LUCAS FREITAS: Aveți întrebări? 449 00:23:03,830 --> 00:23:06,450 Nu? 450 00:23:06,450 --> 00:23:10,460 >> LAUREN CARVALHO: Putem combina aceste Expresii booleene pentru a construi mai mult 451 00:23:10,460 --> 00:23:12,500 declarații condiționale complicate. 452 00:23:12,500 --> 00:23:19,680 Deci, aici, în cazul în care orice pe stânga în partea stângă a două baruri sau 453 00:23:19,680 --> 00:23:23,160 tot ce este pe partea dreaptă a duble barele se evaluează la true, 454 00:23:23,160 --> 00:23:25,700 atunci vom imprima invalid. 455 00:23:25,700 --> 00:23:29,503 Și apoi în jos aici, în cazul în care orice e pe partea stângă a doua 456 00:23:29,503 --> 00:23:33,480 ampersand și orice cu privire la dreptul în partea stângă a celor două ampersand 457 00:23:33,480 --> 00:23:37,470 evaluează la adevărat, atunci vom imprima valabil. 458 00:23:37,470 --> 00:23:42,195 Liniile duble sunt numite logică Operatorul OR duble ampersand sunt 459 00:23:42,195 --> 00:23:44,190 numit operatorul logic ȘI. 460 00:23:44,190 --> 00:23:44,648 Da? 461 00:23:44,648 --> 00:23:47,850 >> Audiența: Sunt cei care doar minuscule l's? 462 00:23:47,850 --> 00:23:48,620 >> LAUREN CARVALHO: Nu. 463 00:23:48,620 --> 00:23:50,890 Ei sunt de fapt - 464 00:23:50,890 --> 00:23:55,134 știi reacția, cum ar fi de mai sus cheia Înapoi? 465 00:23:55,134 --> 00:23:56,585 Vezi asta? 466 00:23:56,585 --> 00:23:57,940 >> LUCAS FREITAS: Este de fapt un bar. 467 00:23:57,940 --> 00:24:02,100 >> LAUREN CARVALHO: Este de fapt doar două baruri. 468 00:24:02,100 --> 00:24:05,724 >> Audiența: Poti folosi echipă pentru siruri de caractere? 469 00:24:05,724 --> 00:24:07,000 >> LUCAS FREITAS: Nu. 470 00:24:07,000 --> 00:24:09,130 Vom afla mai târziu ceva despre asta. 471 00:24:09,130 --> 00:24:10,735 >> LAUREN CARVALHO: Există o funcție pe care le puteți folosi. 472 00:24:10,735 --> 00:24:12,644 Dar nu trebuie să vă faceți griji că doar încă. 473 00:24:12,644 --> 00:24:15,530 474 00:24:15,530 --> 00:24:18,270 >> Ce se întâmplă dacă am da acest program numărul 5? 475 00:24:18,270 --> 00:24:20,850 Ce se va imprima? 476 00:24:20,850 --> 00:24:22,100 >> Audiența: [inaudibil] 477 00:24:22,100 --> 00:24:27,780 478 00:24:27,780 --> 00:24:28,275 valabil. 479 00:24:28,275 --> 00:24:29,770 >> LAUREN CARVALHO: valid? 480 00:24:29,770 --> 00:24:30,135 Da. 481 00:24:30,135 --> 00:24:34,092 Nu știu care a ajuns asta. 482 00:24:34,092 --> 00:24:35,036 >> [Râsete] 483 00:24:35,036 --> 00:24:37,990 >> LAUREN CARVALHO: Asta e un fel de infricosator [neauzit]. 484 00:24:37,990 --> 00:24:40,900 >> Audiența: Deci, dublu și, că doar înseamnă și? 485 00:24:40,900 --> 00:24:41,740 >> LAUREN CARVALHO: Da. 486 00:24:41,740 --> 00:24:46,160 Deci, numărul 5 este atât de mare decât 0 și mai mic de 100. 487 00:24:46,160 --> 00:24:48,970 >> Audiența: De ce ar fi unul? 488 00:24:48,970 --> 00:24:51,350 >> LAUREN CARVALHO: O ampersand este de fapt ceva diferit, și este 489 00:24:51,350 --> 00:24:53,390 un operator la nivel de bit, pe care veți afla despre mai târziu. 490 00:24:53,390 --> 00:24:58,250 Dar e ceva care chiar funcționează cu biții unui număr dat. 491 00:24:58,250 --> 00:25:00,872 >> LUCAS FREITAS: Doar cred că nu fac trebuie să vă faceți griji despre asta de acum. 492 00:25:00,872 --> 00:25:04,590 >> LAUREN CARVALHO: Cred că este, probabil, vine săptămâna viitoare. 493 00:25:04,590 --> 00:25:06,420 >> LUCAS FREITAS: Orice alte întrebări? 494 00:25:06,420 --> 00:25:07,990 Nu? 495 00:25:07,990 --> 00:25:12,480 >> LAUREN CARVALHO: Deci, am văzut că o bloca poate sta singur, dar se poate 496 00:25:12,480 --> 00:25:15,370 de asemenea, să fie asociat cu și mai bloc. 497 00:25:15,370 --> 00:25:18,880 Deci, în acest caz, dacă n este mai mare decât 0, vom imprima "Tu 498 00:25:18,880 --> 00:25:23,855 ales un număr pozitiv. "altceva, ceea ce înseamnă dacă este 0 sau dacă este mai puțin 499 00:25:23,855 --> 00:25:27,170 decât 0, vom imprima, "Ai ales un număr negativ." 500 00:25:27,170 --> 00:25:30,390 >> Cel mai interesant lucru este că acestea se exclud reciproc. 501 00:25:30,390 --> 00:25:33,940 Acolo nu va fi un caz în care aceasta și această 502 00:25:33,940 --> 00:25:35,544 posibilitatea de a imprima pe amândoi. 503 00:25:35,544 --> 00:25:38,190 504 00:25:38,190 --> 00:25:41,030 >> Sunt sigur că ai lucrat cu cazul / else caseta în Scratch, astfel încât aceasta ar trebui să fie 505 00:25:41,030 --> 00:25:42,392 destul de familiar. 506 00:25:42,392 --> 00:25:42,874 Da? 507 00:25:42,874 --> 00:25:48,522 >> Audiența: Nu avem nevoie de spațiul dintre int n este egal cu getint apoi în spațiu 508 00:25:48,522 --> 00:25:49,460 if? 509 00:25:49,460 --> 00:25:51,565 Ca și cum am folosi o linie [inaudibil] 510 00:25:51,565 --> 00:25:52,790 >> LAUREN CARVALHO: Oh, spațiul de aici? 511 00:25:52,790 --> 00:25:56,742 >> Audiența: Ca asta, dar dublezi spațiu. 512 00:25:56,742 --> 00:25:58,718 Nu, du-te în sus. 513 00:25:58,718 --> 00:25:59,706 Du-te în sus. 514 00:25:59,706 --> 00:26:00,610 >> LUCAS FREITAS: Doar linia? 515 00:26:00,610 --> 00:26:01,140 >> Audienta: Da. 516 00:26:01,140 --> 00:26:02,870 >> LUCAS FREITAS: Doar linia de gol? 517 00:26:02,870 --> 00:26:03,270 >> Audienta: Da. 518 00:26:03,270 --> 00:26:04,070 >> LAUREN CARVALHO: linie Blank? 519 00:26:04,070 --> 00:26:04,470 Nu. 520 00:26:04,470 --> 00:26:06,320 Asta e doar o chestie stilistic. 521 00:26:06,320 --> 00:26:09,360 >> LUCAS FREITAS: E ca si cum, uneori, doar sari peste unele linii, astfel 522 00:26:09,360 --> 00:26:12,330 care codul nu arata ca un bloc mare de text. 523 00:26:12,330 --> 00:26:15,800 >> LAUREN CARVALHO: Cred că ceea ce sa întâmplat a fost că am avut un comentariu aici, dar eu 524 00:26:15,800 --> 00:26:18,220 a luat-o în așa fel încât voi ar trebui să se gândească la acest cod, mai degrabă 525 00:26:18,220 --> 00:26:19,920 decât doar citit comentariul meu. 526 00:26:19,920 --> 00:26:24,170 În general, distanța nu va fi într-adevăr afecta modul în care programul se execută. 527 00:26:24,170 --> 00:26:26,070 E mai mult o chestie stilistic. 528 00:26:26,070 --> 00:26:29,460 Și atunci când avem ghidul de stil actualizat și gata pentru a merge până la sfârșitul anului 529 00:26:29,460 --> 00:26:33,260 supersecțiune, vom vorbi despre asta mai mult. 530 00:26:33,260 --> 00:26:34,660 >> E ceva în neregulă cu acest program, corect? 531 00:26:34,660 --> 00:26:38,980 Deoarece 0 nu este cu adevărat un număr negativ. 532 00:26:38,980 --> 00:26:40,270 Să vedem dacă putem repara asta. 533 00:26:40,270 --> 00:26:45,710 534 00:26:45,710 --> 00:26:48,370 >> Probabil vă puteți imagina cu acest spune, nu? 535 00:26:48,370 --> 00:26:52,850 Dacă n este mai mare decât 0, ne imprima, "Tu ales un număr pozitiv. "Atunci altcineva 536 00:26:52,850 --> 00:26:57,340 dacă n este mai mic decât 0, "Ai ales o număr negativ. "altceva," Ai ales 537 00:26:57,340 --> 00:27:01,040 0. " 538 00:27:01,040 --> 00:27:06,030 >> Acum, un lucru interesant este faptul că acest lucru ar putea continua la nesfârșit. 539 00:27:06,030 --> 00:27:10,020 Puteți avea un bloc în cazul în care, în cazul în care o parte bloc, o altă parte în cazul în bloc, în cazul în care altcineva, 540 00:27:10,020 --> 00:27:14,790 altceva în cazul în care, în cazul în care altcineva, altceva, practic atâta timp cât doriți. 541 00:27:14,790 --> 00:27:17,110 Și atunci când sunt construite ca aceasta, toate acestea sunt de gând să fie 542 00:27:17,110 --> 00:27:19,206 exclud reciproc. 543 00:27:19,206 --> 00:27:19,650 Da? 544 00:27:19,650 --> 00:27:24,130 >> Audiența: Deci, de ce nu poți pur și simplu utilizați un alt dacă în loc de [inaudibil]? 545 00:27:24,130 --> 00:27:26,990 >> LAUREN CARVALHO: În acest caz, da, am ar putea folosi un alt dacă, și ar fi 546 00:27:26,990 --> 00:27:29,190 absolut bine, deoarece condiții sunt ele însele 547 00:27:29,190 --> 00:27:30,600 exclud reciproc. 548 00:27:30,600 --> 00:27:33,560 Dar, în cazul în care condițiile nu au fost exclusiv unul de altul, aceasta ar 549 00:27:33,560 --> 00:27:37,596 îi forțează să nu atât de a evalua, în cazul în care are sens. 550 00:27:37,596 --> 00:27:44,195 >> Audiența: În acest caz, am putea cuib al doilea, dacă în primul dacă? 551 00:27:44,195 --> 00:27:46,160 >> LAUREN CARVALHO: În cazul în care - Ce vrei să spui? 552 00:27:46,160 --> 00:27:49,660 >> Audiența: Dacă cele două condiții nu se exclud reciproc? 553 00:27:49,660 --> 00:27:54,700 >> LAUREN CARVALHO: În cazul în care condițiile nu se exclud reciproc? 554 00:27:54,700 --> 00:27:58,000 Dar vrei doar unul dintre ei pentru a rula? 555 00:27:58,000 --> 00:28:00,260 >> Audiența: Vrei doar în cazul în care în loc de altceva. 556 00:28:00,260 --> 00:28:01,020 >> LAUREN CARVALHO: Da. 557 00:28:01,020 --> 00:28:03,630 Există întotdeauna o să fie o mulțime de moduri în care puteți face acest lucru. 558 00:28:03,630 --> 00:28:06,600 Puteți siguranta cuib ei. 559 00:28:06,600 --> 00:28:10,390 Și veți vedea într-un diapozitiv viitor care puteți avea mai multe FI, doar unul 560 00:28:10,390 --> 00:28:11,680 după alta. 561 00:28:11,680 --> 00:28:14,840 Dar aceasta este o modalitate de logic organizarea fluxului de programul tău. 562 00:28:14,840 --> 00:28:18,000 >> LUCAS FREITAS: Si nu e una mai mult lucru, este că ați întrebat despre punerea 563 00:28:18,000 --> 00:28:20,110 dacă și apoi altul, dacă. 564 00:28:20,110 --> 00:28:25,240 Care să funcționeze perfect, dar e rău Design pentru că, practic, dacă 565 00:28:25,240 --> 00:28:29,320 verificați mai întâi dacă, și observați că numărul este mai mare decât 0, te 566 00:28:29,320 --> 00:28:30,660 poate termina doar programul. 567 00:28:30,660 --> 00:28:33,080 Nu trebuie să verifice dacă este mai mic decât 0, corect? 568 00:28:33,080 --> 00:28:37,510 >> Dar, dacă nu, dacă în cazul în care, se va verifica atât, în timp ce dacă fac în cazul în care altcineva este, 569 00:28:37,510 --> 00:28:39,260 se va verifica dacă este mai mare decât 0. 570 00:28:39,260 --> 00:28:43,500 Dacă este, ea nu va arăta chiar la celelalte linii de cod. 571 00:28:43,500 --> 00:28:48,560 Deci tu practic o verificare ca de două ori inutil, de aceea noi 572 00:28:48,560 --> 00:28:50,750 face în cazul în care altcineva în cazul în care. 573 00:28:50,750 --> 00:28:52,350 Orice alte întrebări? 574 00:28:52,350 --> 00:28:56,547 >> Audiența: Deci, funcționalitatea de altfel daca este aceeași ca 575 00:28:56,547 --> 00:28:57,790 în cazul în care acesta a fost doar în cazul în care? 576 00:28:57,790 --> 00:28:58,470 >> LAUREN CARVALHO: Nu. 577 00:28:58,470 --> 00:29:02,720 Ai de fapt de gând să vedeți în următorul meu glisați un exemplu în care se poate 578 00:29:02,720 --> 00:29:03,270 fi diferit. 579 00:29:03,270 --> 00:29:05,690 În acest caz, e aproape la fel. 580 00:29:05,690 --> 00:29:10,190 581 00:29:10,190 --> 00:29:15,410 >> Deci, aici, avem un exemplu de multiple în cazul în declarații, precum și 582 00:29:15,410 --> 00:29:20,020 Funcționalitatea nu este același ca și cum aș fi spus doar dacă 583 00:29:20,020 --> 00:29:23,120 altfel, în cazul în care altfel, în cazul în care altcineva. 584 00:29:23,120 --> 00:29:26,970 Hai să ne gândim ce s-ar imprima dacă am introduce numărul 95 585 00:29:26,970 --> 00:29:27,715 în acest program. 586 00:29:27,715 --> 00:29:29,764 >> Audiența: [inaudibil] 587 00:29:29,764 --> 00:29:31,102 >> LAUREN CARVALHO: Și atunci? 588 00:29:31,102 --> 00:29:32,340 >> Audiența: [inaudibil] 589 00:29:32,340 --> 00:29:33,680 >> LAUREN CARVALHO: Da. 590 00:29:33,680 --> 00:29:37,430 Deci, în acest caz, aceste condiții sunt nu exclud reciproc unul de altul. 591 00:29:37,430 --> 00:29:41,040 Și pentru că nu e nimic de oprire această condiție de la evaluarea acestui 592 00:29:41,040 --> 00:29:44,730 o are deja, sunt doar Totul se va imprima. 593 00:29:44,730 --> 00:29:46,222 Deci, cum aș putea rezolva această problemă? 594 00:29:46,222 --> 00:29:47,608 >> Audiența: altceva ar fi dacă? 595 00:29:47,608 --> 00:29:48,910 >> LAUREN CARVALHO: Puteți folosi altceva FI. 596 00:29:48,910 --> 00:29:50,590 Aș putea schimba ordinea dintre acestea, nu? 597 00:29:50,590 --> 00:29:53,800 Dacă am făcut asta în primul rând? 598 00:29:53,800 --> 00:29:55,120 Ei bine, de fapt, nu. 599 00:29:55,120 --> 00:29:57,100 Asta nu ar funcționa pentru 95. 600 00:29:57,100 --> 00:29:58,490 >> LUCAS FREITAS: Nu, doar altceva FI. 601 00:29:58,490 --> 00:30:01,720 >> LAUREN CARVALHO: altcineva FI s-ar fi stabilit acest lucru. 602 00:30:01,720 --> 00:30:07,050 Asta clarifica confuzia între FI și altcineva ar fi dacă? 603 00:30:07,050 --> 00:30:11,480 >> Audiența: Am vrut doar să vă întreb, în ​​cazul în care ați folosit altfel dacă, s-ar opri? 604 00:30:11,480 --> 00:30:11,840 >> LAUREN CARVALHO: Corect. 605 00:30:11,840 --> 00:30:13,330 Deci, doar prima unul. 606 00:30:13,330 --> 00:30:16,535 Dacă am introdus numărul 95, numai acest s-ar fi imprimat, și niciodată nu 607 00:30:16,535 --> 00:30:17,934 ar fi progresat la altceva. 608 00:30:17,934 --> 00:30:22,570 >> LUCAS FREITAS: doar un fel de a gândi ca în cazul în care se întâmplă acest lucru, face acest lucru. 609 00:30:22,570 --> 00:30:26,990 Altceva este ca și cum, dacă nu, de verificare pentru aceasta, și apoi face asta. 610 00:30:26,990 --> 00:30:28,690 Astfel ca toate acestea sunt reciproc exclusive. 611 00:30:28,690 --> 00:30:30,270 Nu se poate obține în două față de cele. 612 00:30:30,270 --> 00:30:32,800 613 00:30:32,800 --> 00:30:37,630 >> Audiența: Poti folosi o logică Și pentru această situație? 614 00:30:37,630 --> 00:30:39,370 >> LAUREN CARVALHO: Da. 615 00:30:39,370 --> 00:30:41,400 Acesta este un alt mod pe care am putea au fixat această problemă. 616 00:30:41,400 --> 00:30:43,470 Ne-ar putea fi definit variază, corect? 617 00:30:43,470 --> 00:30:49,410 Așa că am fi putut spune dacă n este mai mare mare de 90 și mai puțin de - 618 00:30:49,410 --> 00:30:52,135 ei bine, cred că acest lucru nu are într-adevăr conteaza, dar aici, am fi putut spune dacă 619 00:30:52,135 --> 00:30:53,960 n este mai mare de 80 și mai puțin de 90. 620 00:30:53,960 --> 00:30:55,570 Mai mare de 70, mai mic de 80. 621 00:30:55,570 --> 00:30:59,077 Care ar fi lucrat, de asemenea. 622 00:30:59,077 --> 00:30:59,891 >> [Râsete] 623 00:30:59,891 --> 00:31:00,980 >> LUCAS FREITAS: E speriată. 624 00:31:00,980 --> 00:31:02,070 >> LAUREN CARVALHO: Nu-ti fie frica. 625 00:31:02,070 --> 00:31:04,570 >> LUCAS FREITAS: Nu este că va fi greșit. 626 00:31:04,570 --> 00:31:08,630 Este doar că e inutil verbose. 627 00:31:08,630 --> 00:31:13,480 Ca și în informatică, unul ar trebui să să fie cât mai simplu posibil, atâta timp cât 628 00:31:13,480 --> 00:31:14,730 aveți funcționalitatea. 629 00:31:14,730 --> 00:31:16,725 630 00:31:16,725 --> 00:31:17,835 Vrei bomboane? 631 00:31:17,835 --> 00:31:19,084 >> Audiența: Nu am nevoie de ea. 632 00:31:19,084 --> 00:31:20,340 >> LAUREN CARVALHO: sperii toată lumea, Lucas. 633 00:31:20,340 --> 00:31:21,590 >> LUCAS FREITAS: Îmi pare rău. 634 00:31:21,590 --> 00:31:24,650 635 00:31:24,650 --> 00:31:29,510 >> LAUREN CARVALHO: David, de asemenea, menționat acestea comuta declarație în clasă. 636 00:31:29,510 --> 00:31:33,180 Practic ceea ce se întâmplă este comutatorul Declarația are o variabilă. 637 00:31:33,180 --> 00:31:35,760 În acest caz, vom lua un întreg. 638 00:31:35,760 --> 00:31:39,220 >> În cazul în care întreg este de 1, vom imprima, "Ai ales o mică 639 00:31:39,220 --> 00:31:42,000 număr. "În cazul în care întreg este de 1," Tu ales un număr mediu. "În cazul în care 640 00:31:42,000 --> 00:31:45,730 întreg este de 3, "Ai ales o mare număr. "Și am avut, de asemenea, un caz implicit 641 00:31:45,730 --> 00:31:50,020 aici, dar nu e arată up, care este prea rău. 642 00:31:50,020 --> 00:31:53,120 643 00:31:53,120 --> 00:31:55,360 >> Practic, aceasta este doar o altă sintaxă. 644 00:31:55,360 --> 00:31:58,640 Am putea fi pus în aplicare acest exact același lucru cu dacă și altceva în cazul în care 645 00:31:58,640 --> 00:31:59,390 declarații. 646 00:31:59,390 --> 00:32:05,530 Dar atunci când există o mulțime de diferite condiții și o mulțime de diferite 647 00:32:05,530 --> 00:32:10,350 variații pe ceea ce vrei sa faci pentru fiecare intrare, aceasta este o opțiune. 648 00:32:10,350 --> 00:32:13,262 Deci e doar o sintaxă bine de știut. 649 00:32:13,262 --> 00:32:15,099 Da? 650 00:32:15,099 --> 00:32:21,380 >> Audiența: De ce este acolo nu o bară oblică inversă n în prima? 651 00:32:21,380 --> 00:32:23,340 >> LAUREN CARVALHO: Pentru acolo? 652 00:32:23,340 --> 00:32:27,600 Nu e nici un backslash n sus acolo deoarece getint - 653 00:32:27,600 --> 00:32:30,140 dacă încercați acest lucru, va vă dau această solicitare. 654 00:32:30,140 --> 00:32:32,290 Dă-mi un număr întreg între 1 și 3. 655 00:32:32,290 --> 00:32:35,550 Și dacă am pus reacție N, ar fi mă ducă la următoarea linie, dar eu doar 656 00:32:35,550 --> 00:32:38,690 a vrut ca ei să tastați întreg imediat după colon. 657 00:32:38,690 --> 00:32:40,120 Ai fi putut pune în reacție n. 658 00:32:40,120 --> 00:32:42,374 Nu e mare lucru. 659 00:32:42,374 --> 00:32:43,288 Da? 660 00:32:43,288 --> 00:32:50,525 >> Audiența: Pentru acest cod, este aceasta cazul în care una, este că, deoarece 661 00:32:50,525 --> 00:32:51,760 este primul caz? 662 00:32:51,760 --> 00:32:52,260 Pentru că - 663 00:32:52,260 --> 00:32:53,400 >> LAUREN CARVALHO: Nu, nu, nu. 664 00:32:53,400 --> 00:32:56,480 Deci, acest lucru este da-mi un întreg între 1 și 3. 665 00:32:56,480 --> 00:32:59,070 În cazul în care n este 1, pot imprima aceasta. 666 00:32:59,070 --> 00:33:02,740 Dacă aș fi cerut scrisori, am putea avea a spus să-mi dai o scrisoare între A 667 00:33:02,740 --> 00:33:04,935 și C. Apoi, acest lucru ar fi cazul A. 668 00:33:04,935 --> 00:33:05,910 >> Audiența: [inaudibil]. 669 00:33:05,910 --> 00:33:08,090 Cazul ar fi doar [inaudibil] 670 00:33:08,090 --> 00:33:11,260 >> LAUREN CARVALHO: Da, corect. 671 00:33:11,260 --> 00:33:11,550 Da? 672 00:33:11,550 --> 00:33:14,861 >> Audiența: Ce se întâmplă dacă ai vrut să aibă mai mult de o expresie relațională? 673 00:33:14,861 --> 00:33:17,645 Deci, în loc de a spune n este egal cu 1, [inaudibil] 674 00:33:17,645 --> 00:33:21,050 n este mai mare de 1 în primul caz? 675 00:33:21,050 --> 00:33:26,630 >> LAUREN CARVALHO: De fapt, dacă nu-mi place definească unele dintre aceste cazuri, acest lucru ar 676 00:33:26,630 --> 00:33:28,500 se duce în jos. 677 00:33:28,500 --> 00:33:30,680 Deci, de fapt, poate că acest lucru nu este ceea ce ceri. 678 00:33:30,680 --> 00:33:36,240 >> LUCAS FREITAS: Cred că întreabă dacă cazul a fost n mai mare decât 0, caz 679 00:33:36,240 --> 00:33:37,150 mai mic de 0. 680 00:33:37,150 --> 00:33:39,210 >> LAUREN CARVALHO: Poate comutatorul afirmație nu este adevărat ceea ce vrei 681 00:33:39,210 --> 00:33:39,880 de a utiliza în acest caz. 682 00:33:39,880 --> 00:33:42,420 >> LUCAS FREITAS: Declarația comutator este doar pentru valoare, astfel încât sunteți de verificare a 683 00:33:42,420 --> 00:33:45,370 valoarea este ca acest lucru sau că. 684 00:33:45,370 --> 00:33:47,025 Deci, nu poți de fapt pune condiții. 685 00:33:47,025 --> 00:33:50,988 686 00:33:50,988 --> 00:33:55,920 >> Audiența: Ce se întâmplă dacă persoana Tipuri de cu [inaudibil]? 687 00:33:55,920 --> 00:33:58,240 >> LAUREN CARVALHO: Asta ar fi fost cazul meu implicit, care, din păcate, 688 00:33:58,240 --> 00:33:58,910 nu se poate vedea. 689 00:33:58,910 --> 00:34:02,240 >> LUCAS FREITAS: [inaudibil] a le vedea. 690 00:34:02,240 --> 00:34:03,690 >> LAUREN CARVALHO: De fapt, Știi ce? 691 00:34:03,690 --> 00:34:07,795 Hai să mergem pentru a studia 50, și voi doar zoom pe lamele pe studiu 692 00:34:07,795 --> 00:34:10,610 50, deoarece aceasta este doar enervant. 693 00:34:10,610 --> 00:34:14,938 Deci, lasă-mă să merg de fapt în stare. 694 00:34:14,938 --> 00:34:17,860 Acest lucru este doar de gând să să ia un pic de timp. 695 00:34:17,860 --> 00:34:26,940 696 00:34:26,940 --> 00:34:27,840 >> Bine. 697 00:34:27,840 --> 00:34:29,590 Deci, îmi pare rău. 698 00:34:29,590 --> 00:34:33,625 Cel puțin acum vom putea vedea tot fără să-l taie. 699 00:34:33,625 --> 00:34:36,230 700 00:34:36,230 --> 00:34:36,969 Bine. 701 00:34:36,969 --> 00:34:43,800 >> Deci, dacă au pus într-o 10, ne-ar implicit aici la cazul meu implicit, și eu 702 00:34:43,800 --> 00:34:46,510 ar imprima doar invalid pentru că am le-a cerut pentru a introduce un număr întreg 703 00:34:46,510 --> 00:34:49,460 între 1 și 3. 704 00:34:49,460 --> 00:34:50,650 Orice alte întrebări? 705 00:34:50,650 --> 00:34:51,081 Da? 706 00:34:51,081 --> 00:34:57,590 >> Audiența: Să presupunem că pentru un caz, de la caz trei, spune că a vrut să fie tot 707 00:34:57,590 --> 00:35:00,950 același lucru, așa că ai ales un număr care nu este un număr mediu. 708 00:35:00,950 --> 00:35:03,840 În acest caz, ar fi redundant? 709 00:35:03,840 --> 00:35:08,371 Ai schimba doar textul în ambele de ei, sau ar exista unele 710 00:35:08,371 --> 00:35:08,617 redundanță? 711 00:35:08,617 --> 00:35:11,920 Există vreo modalitate de a combina [Inaudibil]? 712 00:35:11,920 --> 00:35:15,810 >> LAUREN CARVALHO: există modalități de a combina-le, dar eu cred că se poate 713 00:35:15,810 --> 00:35:18,730 combina numai cele adiacente. 714 00:35:18,730 --> 00:35:22,250 Deci, dacă nu am defini nimic pentru cazul în care două, acest lucru ar 715 00:35:22,250 --> 00:35:24,130 se aplică în ambele cazuri. 716 00:35:24,130 --> 00:35:28,110 Oh, dacă nu am pus nimic de caz unul, acest lucru s-ar aplica atât 717 00:35:28,110 --> 00:35:30,620 cazul în care una sau două. 718 00:35:30,620 --> 00:35:33,616 În cazul în care are sens. 719 00:35:33,616 --> 00:35:35,872 >> Audiența: Poți să repeți asta? 720 00:35:35,872 --> 00:35:36,670 >> LUCAS FREITAS: OK. 721 00:35:36,670 --> 00:35:39,950 Dacă ați făcut, practic, cum ar fi, ai același lucru, dar nu pui 722 00:35:39,950 --> 00:35:46,820 ceva aici, ai fi, fie pentru caz unul sau doi caz, face acest lucru. 723 00:35:46,820 --> 00:35:47,930 Corect? 724 00:35:47,930 --> 00:35:54,010 Și această pauză înseamnă că, dacă aveți în acest caz, tocmai pleca. 725 00:35:54,010 --> 00:35:55,030 Deci, asta e ceea ce înseamnă frâna. 726 00:35:55,030 --> 00:35:59,755 Deci, dacă am făcut asta, te uiti, e caz, și v-ar face doar asta. 727 00:35:59,755 --> 00:36:02,110 Dacă ar fi fost cazul de doi, ar fi, de asemenea, doar vin aici și de a face asta. 728 00:36:02,110 --> 00:36:03,544 >> Audiența: Dar ce poate face? 729 00:36:03,544 --> 00:36:05,140 Dacă există ceva pentru caz două [inaudibil] 730 00:36:05,140 --> 00:36:07,095 >> LAUREN CARVALHO: Nu cred poți face asta. 731 00:36:07,095 --> 00:36:09,380 Nu cred că puteți sări în jurul. 732 00:36:09,380 --> 00:36:11,070 Poți să faci asta, Rob? 733 00:36:11,070 --> 00:36:13,300 Nu sunt de părere. 734 00:36:13,300 --> 00:36:16,548 >> Audiența: Deci, doar un număr poate merge după un caz, corect? 735 00:36:16,548 --> 00:36:21,410 Nu poate fi un caz, virgulă, două? 736 00:36:21,410 --> 00:36:21,970 >> LUCAS FREITAS: Nu, nu poți. 737 00:36:21,970 --> 00:36:25,085 Tu sigur nu se poate. 738 00:36:25,085 --> 00:36:28,770 >> LAUREN CARVALHO: Adică, punctul este aceasta este o opțiune, iar acest lucru nu s-ar putea 739 00:36:28,770 --> 00:36:31,940 potrivi cazul dumneavoastră de utilizare, astfel încât atunci ar folosi dacă condițiile. 740 00:36:31,940 --> 00:36:33,906 >> Audiența: Deci, de ce ai face asta? 741 00:36:33,906 --> 00:36:34,314 Comutatorul? 742 00:36:34,314 --> 00:36:38,540 >> LAUREN CARVALHO: Mi-ar folosi acest dacă ați definit foarte - 743 00:36:38,540 --> 00:36:39,730 de fapt, Lucas, este blochezi. 744 00:36:39,730 --> 00:36:40,982 >> LUCAS FREITAS: Oh, îmi pare rău. 745 00:36:40,982 --> 00:36:44,200 >> LAUREN CARVALHO: Dacă aveți foarte comportamente definite pe care le doriți pentru 746 00:36:44,200 --> 00:36:48,105 fiecare intrare, aceasta ar putea fi o puțin mai concisă decât scriind 747 00:36:48,105 --> 00:36:49,530 o declarație, dacă pentru fiecare dintre ele. 748 00:36:49,530 --> 00:36:51,210 >> Audiența: Ce înseamnă pauză înseamnă din nou? 749 00:36:51,210 --> 00:36:53,180 >> LAUREN CARVALHO: pauza inseamna opri. 750 00:36:53,180 --> 00:36:56,860 Amintiți-vă, dacă nu am avea această pauză aici, ne-ar fi tocmai căzut jos 751 00:36:56,860 --> 00:36:58,110 în cazul următor. 752 00:36:58,110 --> 00:37:00,820 >> LUCAS FREITAS: Break înseamnă pentru a obține din declarația de switch. 753 00:37:00,820 --> 00:37:03,400 Pentru că dacă e 1, vreau pentru a imprima acest lucru și se lasă. 754 00:37:03,400 --> 00:37:04,640 Nu vreau să verificați nimic altceva. 755 00:37:04,640 --> 00:37:05,790 >> Audiența: Tu nu vrei pentru a imprima orice altceva. 756 00:37:05,790 --> 00:37:06,730 >> LUCAS FREITAS: Da. 757 00:37:06,730 --> 00:37:08,260 Pentru că e exclud reciproc. 758 00:37:08,260 --> 00:37:11,378 >> Audiența: Si face acest lucru continua doar următorul caz dacă primul caz 759 00:37:11,378 --> 00:37:11,850 nu este adevărat? 760 00:37:11,850 --> 00:37:14,120 Sau nu-l testeze toate cazurile în același timp? 761 00:37:14,120 --> 00:37:16,300 >> LUCAS FREITAS: Nu, verificări secvențial. 762 00:37:16,300 --> 00:37:18,070 Secvențial, da. 763 00:37:18,070 --> 00:37:21,840 Încă o întrebare, apoi ne-am luat la deplasa pe astfel încât să putem acoperi totul. 764 00:37:21,840 --> 00:37:22,300 Da? 765 00:37:22,300 --> 00:37:25,280 >> Audiența: Deci, pentru cazul, ar putea avea făcut ceva în afară de doar unul? 766 00:37:25,280 --> 00:37:27,680 Ați putea da un interval? 767 00:37:27,680 --> 00:37:28,580 >> LUCAS FREITAS: Nu. 768 00:37:28,580 --> 00:37:29,900 >> LAUREN CARVALHO: Nu cred vă pot da un interval. 769 00:37:29,900 --> 00:37:31,430 >> LUCAS FREITAS: Nu poti tine nu se poate da un interval. 770 00:37:31,430 --> 00:37:33,190 >> Audiența: Cazul este specific [Neauzit]. 771 00:37:33,190 --> 00:37:34,840 >> LUCAS FREITAS: Comutator este un fel de valori. 772 00:37:34,840 --> 00:37:38,400 Ai face lucruri diferite, în funcție pe o valoare, o valoare specifică. 773 00:37:38,400 --> 00:37:41,050 Nu poti sa faci gama, nu se poate face nimic altceva. 774 00:37:41,050 --> 00:37:43,055 Este doar un alt instrument pentru a vedea. 775 00:37:43,055 --> 00:37:46,570 >> LAUREN CARVALHO: Majoritatea oamenilor nu folosesc comuta declarații foarte mult în CS50, 776 00:37:46,570 --> 00:37:48,760 dar e acolo. 777 00:37:48,760 --> 00:37:49,920 >> Bine. 778 00:37:49,920 --> 00:37:53,870 Deci, următorul lucru pe care vom vorbi despre este operatorul ternar. 779 00:37:53,870 --> 00:37:56,650 Acesta este doar un alt tip de de condiționată. 780 00:37:56,650 --> 00:38:01,460 Practic ceea ce se întâmplă aici este că sunt cere pentru un număr întreg, iar în cazul în care n este 781 00:38:01,460 --> 00:38:05,550 mai mare de 100, am de gând să imprima "De mare." Dacă nu este, am de gând să 782 00:38:05,550 --> 00:38:07,010 imprima "mic." 783 00:38:07,010 --> 00:38:11,230 >> Deci, ceea ce face este condiția este chiar aici, în paranteze, și tu 784 00:38:11,230 --> 00:38:13,550 poate un fel de a gândi problema ca eu cer dacă 785 00:38:13,550 --> 00:38:15,030 acest lucru este adevărat sau nu. 786 00:38:15,030 --> 00:38:18,485 Dacă e adevărat, am de gând să fac asta în primul rând lucru, iar dacă nu e adevărat, eu sunt 787 00:38:18,485 --> 00:38:20,020 de gând să facă acest al doilea lucru. 788 00:38:20,020 --> 00:38:23,520 789 00:38:23,520 --> 00:38:27,960 >> Orice întrebări cu privire la Operatorul ternar? 790 00:38:27,960 --> 00:38:30,880 >> LUCAS FREITAS: Vreau doar nota de la David este că ori de câte ori aveți o 791 00:38:30,880 --> 00:38:33,346 condiție - 792 00:38:33,346 --> 00:38:35,690 >> LAUREN CARVALHO: Cred că David uitam prin live stream. 793 00:38:35,690 --> 00:38:37,210 >> LUCAS FREITAS: El face flux de viață chiar acum. 794 00:38:37,210 --> 00:38:41,730 Deci, ori de câte ori aveți o afecțiune, esti ar trebui să pună acolade, 795 00:38:41,730 --> 00:38:45,320 la fel ca și cum am avea într-un comutator Declarația aici. 796 00:38:45,320 --> 00:38:46,750 Avem acolade aici. 797 00:38:46,750 --> 00:38:49,560 Pentru orice condiții, esti ar trebui să pună, de asemenea, că. 798 00:38:49,560 --> 00:38:50,820 >> LAUREN CARVALHO: Veți vedea acest lucru în ghidul de stil. 799 00:38:50,820 --> 00:38:52,900 Nu avem, de fapt, Ghid de stil chiar acum. 800 00:38:52,900 --> 00:38:53,930 Cred că David încă de lucru. 801 00:38:53,930 --> 00:38:55,100 >> LUCAS FREITAS: El a spus că este doar de lucru acum. 802 00:38:55,100 --> 00:38:56,120 >> LAUREN CARVALHO: Oh, e de lucru acum? 803 00:38:56,120 --> 00:38:57,520 OK. 804 00:38:57,520 --> 00:39:02,060 Deci, se pare că în acest an în stilul ghid, chiar dacă aveți doar o linie, 805 00:39:02,060 --> 00:39:06,040 le-ați luat pentru a pune pe cei acolade inch 806 00:39:06,040 --> 00:39:09,480 Nu aveți nevoie neapărat să pentru funcționalitate a programului. 807 00:39:09,480 --> 00:39:12,210 Și poate că ar trebui să luăm o pauză după condițiile și merge direct 808 00:39:12,210 --> 00:39:14,620 la ghidul de stil pentru a șterge unele dintre aceste lucruri? 809 00:39:14,620 --> 00:39:15,010 >> LUCAS FREITAS: Da. 810 00:39:15,010 --> 00:39:15,775 Aveți o întrebare? 811 00:39:15,775 --> 00:39:17,580 >> Audiența: Nu, voi aștepta doar până la ghidul de stil. 812 00:39:17,580 --> 00:39:19,578 >> Audiența: Poți să te întorci pentru operatorul ternar? 813 00:39:19,578 --> 00:39:23,360 >> LAUREN CARVALHO: ternare, da. 814 00:39:23,360 --> 00:39:29,010 >> LUCAS FREITAS: operatorul ternar este în esență o declarație dacă altcineva, dar 815 00:39:29,010 --> 00:39:33,590 în loc de a trebui să aibă cele două linii de a verifica dacă o și apoi 816 00:39:33,590 --> 00:39:36,600 altceva, aveți doar o linie. 817 00:39:36,600 --> 00:39:40,930 Deci, practic, dacă eu vreau să dau un șir o valoare de mică sau mare, și eu 818 00:39:40,930 --> 00:39:46,270 vrei sa faci o mare dacă n este mai mare decât 100 sau redus în cazul în care este mai puțin, ceea ce pot face 819 00:39:46,270 --> 00:39:47,730 este acest [inaudibil] 820 00:39:47,730 --> 00:39:53,060 șirul va fi, și apoi am cere programul este n mai mare de 100? 821 00:39:53,060 --> 00:39:55,750 >> Deci, de aceea am această expresie în paranteze și apoi 822 00:39:55,750 --> 00:39:56,580 semnul de întrebare. 823 00:39:56,580 --> 00:39:59,110 Eu cer este mai mare de 100? 824 00:39:59,110 --> 00:40:02,310 În cazul în care este, o să fie mare. 825 00:40:02,310 --> 00:40:03,850 Dacă nu e, o să fie scăzut. 826 00:40:03,850 --> 00:40:07,310 >> Deci, practic ceea ce credeți că este să vă întreb o întrebare, așa că ai pus în paranteze 827 00:40:07,310 --> 00:40:08,620 condiție. 828 00:40:08,620 --> 00:40:11,160 Atunci ai pus semnul de întrebare pentru ca esti o ceri. 829 00:40:11,160 --> 00:40:15,240 Și dacă acest lucru este adevărat, aceasta va fi în prima valoare [neauzit] aici. 830 00:40:15,240 --> 00:40:18,176 Dacă nu este, am de gând să pun valoare care este după colon. 831 00:40:18,176 --> 00:40:21,580 Are sens? 832 00:40:21,580 --> 00:40:24,730 >> Este, de asemenea, ceva care este ca un instrument în C, dar nu trebuie să 833 00:40:24,730 --> 00:40:25,700 l folosească în mod special. 834 00:40:25,700 --> 00:40:29,890 Dar oamenii CS place, de obicei, că pentru că doar salvează linii. 835 00:40:29,890 --> 00:40:31,050 >> LAUREN CARVALHO: Este foarte elegant. 836 00:40:31,050 --> 00:40:32,951 Acesta are o foarte mult în doar o declarație. 837 00:40:32,951 --> 00:40:36,077 >> Audiența: Deci, semnul procent este doar indiferent de rezultatele pe 838 00:40:36,077 --> 00:40:36,799 linia anterioară? 839 00:40:36,799 --> 00:40:38,260 >> LAUREN CARVALHO: Oh, îmi pare rău. 840 00:40:38,260 --> 00:40:42,670 Acest semn procent este de fapt un substituent pentru aceasta s. 841 00:40:42,670 --> 00:40:46,160 Într-o declarație printf, le-ați luat acest șir de aici, care este ceea ce se întâmplă la 842 00:40:46,160 --> 00:40:48,440 imprima, dar nu poti doar pune acest e acolo. 843 00:40:48,440 --> 00:40:50,290 În caz contrar, s-ar imprima de s literalmente. 844 00:40:50,290 --> 00:40:54,070 Așa că am pus o suta aici pentru a menține acest loc a avut loc pentru orice 845 00:40:54,070 --> 00:40:57,590 vine după virgulă. 846 00:40:57,590 --> 00:40:59,470 >> Deci, pentru un șir, ai la sută s. 847 00:40:59,470 --> 00:41:00,950 Pentru un întreg, i la sută. 848 00:41:00,950 --> 00:41:03,330 Pentru un flotor, procent f. 849 00:41:03,330 --> 00:41:06,960 Veți vedea pe cei ca noi vezi mai multe exemple. 850 00:41:06,960 --> 00:41:09,230 Dar poate ar trebui să vorbim despre Ghid de stil pentru o vreme, acum 851 00:41:09,230 --> 00:41:10,480 că este sus. 852 00:41:10,480 --> 00:41:21,040 853 00:41:21,040 --> 00:41:24,010 >> LUCAS FREITAS: Dacă te duci la cs50.net/style, vei vedea 854 00:41:24,010 --> 00:41:25,760 Ghidul de stil. 855 00:41:25,760 --> 00:41:32,420 Pentru seturi de probleme, scorul pentru set problemă este compus din domeniul de aplicare, 856 00:41:32,420 --> 00:41:35,510 care, practic, înseamnă că dacă ai făcut toate părțile probleme stabilite sau dacă 857 00:41:35,510 --> 00:41:37,170 încercat ceva. 858 00:41:37,170 --> 00:41:41,120 Al doilea lucru este corectitudine, care mijloace este programul tau face ceea ce 859 00:41:41,120 --> 00:41:44,520 trebuia să faci, sau nu-l au bug-uri, sau nu-l face ceea ce 860 00:41:44,520 --> 00:41:45,620 ar trebui sa fac. 861 00:41:45,620 --> 00:41:51,420 >> Al treilea lucru este de design, ceea ce înseamnă te punerea în aplicare a acestei bine, sau sunt 862 00:41:51,420 --> 00:41:54,520 utilizați declarații inutile? 863 00:41:54,520 --> 00:41:59,400 Deci, de exemplu, dacă doriți să se repete un număr de 10 de ori, sunt scrii o 864 00:41:59,400 --> 00:42:03,040 pentru buclă sau sunt pur și simplu faci 10 ori aceeași declarație, doar face 865 00:42:03,040 --> 00:42:04,060 copy si paste. 866 00:42:04,060 --> 00:42:05,760 Astfel de design este pentru asta. 867 00:42:05,760 --> 00:42:07,420 >> Și, în sfârșit, ai stil. 868 00:42:07,420 --> 00:42:12,000 Stil este la fel ca judecarea în cazul în care codul arata 869 00:42:12,000 --> 00:42:14,050 lizibil și fel de frumos. 870 00:42:14,050 --> 00:42:16,520 Aceasta înseamnă pur și simplu, practic, este codul poate fi citit? 871 00:42:16,520 --> 00:42:20,560 Ar fi cineva care a fost în căutarea sunt codul să fie capabil să înțeleagă ceea ce 872 00:42:20,560 --> 00:42:21,250 se face? 873 00:42:21,250 --> 00:42:25,360 Are comentarii și altele? 874 00:42:25,360 --> 00:42:30,430 >> Hai sa vorbim despre stilul pe care ce ar trebui să utilizați. 875 00:42:30,430 --> 00:42:32,200 Primul lucru este de comentarii. 876 00:42:32,200 --> 00:42:35,280 Comentariile sunt foarte importante pentru dvs. Cod pentru că, uneori, ce faci 877 00:42:35,280 --> 00:42:38,750 program, și știți exact ce pe care doriți să faceți acest lucru doar începe 878 00:42:38,750 --> 00:42:43,120 codificare, doar introduceți o grămadă de C. Dar, dacă cineva este în căutarea sunt esti 879 00:42:43,120 --> 00:42:47,500 cod, ei nu vor să fie în măsură să înțelege pentru că ei nu știu 880 00:42:47,500 --> 00:42:51,420 lucrurile care sunt in capul tau, cum ar fi pesudocode, asa ca poate ei vor 881 00:42:51,420 --> 00:42:53,970 au un timp de greu de înțeles ceea ce codul este de a face. 882 00:42:53,970 --> 00:42:57,900 >> Deci, comentariile sunt foarte utile pentru a explica pentru cineva care se uită la 883 00:42:57,900 --> 00:43:00,880 codul ce face, și de fapt, chiar și pentru tine, 884 00:43:00,880 --> 00:43:01,880 acestea sunt foarte utile. 885 00:43:01,880 --> 00:43:05,740 Ca te duci la Psets mai greu și greu, ai de gând pentru a vedea că acest cod se 886 00:43:05,740 --> 00:43:10,590 mai lungi, și apoi comentarii sunt într-adevăr de important, astfel încât să ne amintim ceea ce fiecare 887 00:43:10,590 --> 00:43:13,320 parte a programului dumneavoastră nu. 888 00:43:13,320 --> 00:43:16,920 >> Pentru a pune un comentariu, puteți face doar o slash slash și apoi scrie un comentariu. 889 00:43:16,920 --> 00:43:21,250 Și întreaga linie este parte dintr-un comentariu, și tot ce scrie în jos, 890 00:43:21,250 --> 00:43:24,550 aceasta nu va fi folosit pentru codul dumneavoastră. 891 00:43:24,550 --> 00:43:27,993 Este practic ca compilatorul este de gând să ignore acest lucru. 892 00:43:27,993 --> 00:43:29,290 Asta face sens? 893 00:43:29,290 --> 00:43:31,710 >> Audiența: Ce faci din nou pentru a scrie un comentariu? 894 00:43:31,710 --> 00:43:33,260 >> LUCAS FREITAS: Acest? 895 00:43:33,260 --> 00:43:36,020 Slash slash? 896 00:43:36,020 --> 00:43:39,810 Ori de câte ori tastați slash slash, indiferent de este în care linia nu se întâmplă 897 00:43:39,810 --> 00:43:42,260 să fie considerate ca fiind C. Da? 898 00:43:42,260 --> 00:43:45,910 >> Audiența: Deci, după comentariul, te Trebuie doar să introduceți și să înceapă o nouă linie? 899 00:43:45,910 --> 00:43:47,120 >> LUCAS FREITAS: Da, exact. 900 00:43:47,120 --> 00:43:50,010 >> LAUREN CARVALHO: slash slash este pentru comentarii singură linie. 901 00:43:50,010 --> 00:43:52,910 >> LUCAS FREITAS: De exemplu, aici avem - 902 00:43:52,910 --> 00:43:54,160 permiteți-mi mări - 903 00:43:54,160 --> 00:43:56,530 904 00:43:56,530 --> 00:44:01,180 de exemplu, aici am declara un float, dar poate că dacă ai pus doar acest 905 00:44:01,180 --> 00:44:04,980 în codul dvs., ca nu ai nici o idee ceea ce este de a face acest lucru, cum ar fi de fapt 906 00:44:04,980 --> 00:44:06,950 cineva care se uită la acest cod va fi, cum ar fi, ceea ce 907 00:44:06,950 --> 00:44:09,190 naiba se întâmplă? 908 00:44:09,190 --> 00:44:12,890 >> Dacă puneți un comentariu spunând "converti Fahrenheit la Celsius, ea face mult 909 00:44:12,890 --> 00:44:13,450 mai mult sens. 910 00:44:13,450 --> 00:44:15,480 Tu ești, cum ar fi, bine, ești a face o conversie. 911 00:44:15,480 --> 00:44:16,730 Asta face sens? 912 00:44:16,730 --> 00:44:19,860 913 00:44:19,860 --> 00:44:24,960 Deci, este doar ceva care îi ajută pe oameni gata codul dvs. și, de asemenea, face 914 00:44:24,960 --> 00:44:28,290 vei fi capabil de a organiza codul de mai bine. 915 00:44:28,290 --> 00:44:33,080 >> Al doilea lucru este că puteți face comentariile multi-line, astfel încât au o 916 00:44:33,080 --> 00:44:34,850 comment pentru o grămadă de linii. 917 00:44:34,850 --> 00:44:38,880 În loc de a pune slash slash, comentariile prima linie, slash slash, 918 00:44:38,880 --> 00:44:43,590 a doua linie, și așa mai departe, tu poate folosi stele slash. 919 00:44:43,590 --> 00:44:46,330 Modul în care o faci este că pentru prima linie de comentariu, esti 920 00:44:46,330 --> 00:44:49,650 de gând să faci o stea stea slash, astfel la fel ca asta. 921 00:44:49,650 --> 00:44:56,900 La fel ca aici avem de la începutul un program, pune, de obicei, cine te 922 00:44:56,900 --> 00:44:59,530 sunt, ceea ce face acest program, și chestii de genul asta. 923 00:44:59,530 --> 00:45:01,900 E ca un fel de antet pentru program. 924 00:45:01,900 --> 00:45:04,540 >> Din nou, nu este ceva care o compilator este de gând să-i pese, dar 925 00:45:04,540 --> 00:45:07,570 este important pentru dumneavoastră să știți ce acest Programul face sau pentru alte persoane 926 00:45:07,570 --> 00:45:09,960 să știe ce program este de a face. 927 00:45:09,960 --> 00:45:17,480 Astfel încât să se reducă stele stele, și apoi ultima linie ai de gând să faci stele 928 00:45:17,480 --> 00:45:22,250 slash a putea închide acest comentariu. 929 00:45:22,250 --> 00:45:26,140 Deci, practic pentru toate celelalte linii, puteți scrie pur și simplu orice, iar acest lucru 930 00:45:26,140 --> 00:45:27,390 este tot va fi ignorat. 931 00:45:27,390 --> 00:45:32,920 932 00:45:32,920 --> 00:45:37,780 >> Și, de asemenea, la fel ca stil, veți vedea că fiecare dintre liniile are o stea, și toate 933 00:45:37,780 --> 00:45:39,380 stelele sunt aliniate. 934 00:45:39,380 --> 00:45:41,605 Acestea sunt lucruri importante, astfel care codul arata destul de. 935 00:45:41,605 --> 00:45:42,855 Sună bine? 936 00:45:42,855 --> 00:45:45,320 937 00:45:45,320 --> 00:45:47,290 >> Acum, condiții. 938 00:45:47,290 --> 00:45:52,240 Ceea ce David spunea că ar trebui să ne de fapt, pune în acele diapozitive, este că 939 00:45:52,240 --> 00:45:55,810 atunci când aveți nici un fel de declarații în cazul în care sau orice fel de condiții, 940 00:45:55,810 --> 00:46:00,700 ar trebui să utilizați acolade pentru a arăta că acest lucru este ceea ce se va întâmpla 941 00:46:00,700 --> 00:46:02,730 atunci când au conditie. 942 00:46:02,730 --> 00:46:07,560 Punct de vedere tehnic, atunci când aveți o condiție și apoi următoarea linie este doar unul 943 00:46:07,560 --> 00:46:12,110 linie, nu ai punct de vedere tehnic pentru a pune în acolade. 944 00:46:12,110 --> 00:46:16,930 >> Practic compilatorul ar înțelege oricum ca implicit. 945 00:46:16,930 --> 00:46:21,100 Dar pentru CS50, vă rog să pună acolade doar pentru ca dvs. 946 00:46:21,100 --> 00:46:24,560 Codul este mai organizat și mai ușor de citit. 947 00:46:24,560 --> 00:46:28,200 Pentru că cod devine mai mult dacă nu au acolade și astfel. 948 00:46:28,200 --> 00:46:29,150 Acesta devine foarte murdar. 949 00:46:29,150 --> 00:46:31,410 >> LAUREN CARVALHO: Acest lucru este exact ceea ce David tocmai a subliniat 950 00:46:31,410 --> 00:46:33,000 în diapozitive mele anterioare. 951 00:46:33,000 --> 00:46:36,690 Este cu siguranta funcționează fără cret bretele, dar din motive stilistice 952 00:46:36,690 --> 00:46:38,840 vom solicita ca vă puneți cele inch 953 00:46:38,840 --> 00:46:42,400 >> Iar atunci când începe să ruleze style50, care este un fel de verificare a 50 de 954 00:46:42,400 --> 00:46:44,860 stil, se va reaminti să faceți acest lucru. 955 00:46:44,860 --> 00:46:49,710 >> LUCAS FREITAS: Și un alt lucru este amintiți-vă pentru a pune acolade de-a lungul 956 00:46:49,710 --> 00:46:50,610 în fiecare linie. 957 00:46:50,610 --> 00:46:52,490 Deci ce faci, de exemplu, l's. 958 00:46:52,490 --> 00:46:56,910 Du-te la linia următoare, deschideți cret bretele, atunci te duci la linia următoare. 959 00:46:56,910 --> 00:46:59,560 Indentare, care este de patru spații. 960 00:46:59,560 --> 00:47:03,570 Apoi se scrie orice, apoi un alt linie, și închideți acoladă. 961 00:47:03,570 --> 00:47:06,870 Astfel încât să fie sigur că atât cele ondulat bretele sunt în linii diferite. 962 00:47:06,870 --> 00:47:11,548 >> Audiența: Deci, în cazul în care acest cod a avut ca 10 în altă FI, aceasta ar trebui să 963 00:47:11,548 --> 00:47:13,040 fi de 10 de seturi de paranteze? 964 00:47:13,040 --> 00:47:14,610 >> LUCAS FREITAS: Da, pentru fiecare dintre ele. 965 00:47:14,610 --> 00:47:14,930 Da. 966 00:47:14,930 --> 00:47:17,980 Deci, dacă, în cazul în care altcineva, și așa mai departe. 967 00:47:17,980 --> 00:47:21,990 >> Audiența: Poți să nu apăsați Tab pentru a indenta? 968 00:47:21,990 --> 00:47:25,350 >> LUCAS FREITAS: Vă cerem baieti de a utiliza patru spații. 969 00:47:25,350 --> 00:47:30,060 Unele editoare de text tab traduce ca patru spații automat. 970 00:47:30,060 --> 00:47:34,850 gedit nu, deci va trebui să face spațiu spațiu spațiu spațiu. 971 00:47:34,850 --> 00:47:37,920 Acest lucru este, de asemenea, ceva care unele programatori face doar tab-uri, unele 972 00:47:37,920 --> 00:47:40,560 programatori face doar patru locuri, și alte persoane fac chiar 973 00:47:40,560 --> 00:47:41,900 două sau trei spații. 974 00:47:41,900 --> 00:47:44,040 Doar că aici vom cere voi de a face patru spații. 975 00:47:44,040 --> 00:47:47,556 >> Audiența: Nu există aproape sigur Trebuie să fie o cale de gedit a 976 00:47:47,556 --> 00:47:48,645 în mod automat [neauzit]. 977 00:47:48,645 --> 00:47:50,480 Ca nu [inaudibil] face asta. 978 00:47:50,480 --> 00:47:51,150 >> LUCAS FREITAS: Da. 979 00:47:51,150 --> 00:47:53,165 Cred că pot merge la Settings. 980 00:47:53,165 --> 00:47:55,270 >> Audiența: Se face deja toate astea. 981 00:47:55,270 --> 00:47:56,410 >> LUCAS FREITAS: Este deja nu? 982 00:47:56,410 --> 00:47:56,890 OK. 983 00:47:56,890 --> 00:48:00,854 Deci, doar asigurați-vă că au patru spații. 984 00:48:00,854 --> 00:48:05,880 >> Audiența: Nu trebuie sa punem cret paranteze in pentru bucle, precum și? 985 00:48:05,880 --> 00:48:07,470 >> LUCAS FREITAS: Da. 986 00:48:07,470 --> 00:48:11,610 >> LAUREN CARVALHO: Ori de câte ori dvs. încapsulare un bloc de cod, doar 987 00:48:11,610 --> 00:48:13,570 vă rugăm să folosiți acolade. 988 00:48:13,570 --> 00:48:18,040 Și înainte de a vă cred că suntem doar fiind sticklers despre acest lucru pentru nici un bine 989 00:48:18,040 --> 00:48:23,450 motiv, în cazul în care voi merg pe pentru a obține stagii de tehnologie de la companii mari, 990 00:48:23,450 --> 00:48:26,020 ei vă va oferi un ghid de stil, și ei vă va spune acest lucru este ceea ce dvs. 991 00:48:26,020 --> 00:48:27,220 codul trebuie sa arate ca. 992 00:48:27,220 --> 00:48:31,120 Și chiar dacă ai învățat să cod ca acest lucru, poate că în stagiu de dvs. 993 00:48:31,120 --> 00:48:32,680 veți avea de a face ceva complet diferit. 994 00:48:32,680 --> 00:48:35,115 Ei se așteaptă să se conformeze la stilul lor. 995 00:48:35,115 --> 00:48:39,800 >> LUCAS FREITAS: Și încă un lucru este că nu observați cum am ca x, 996 00:48:39,800 --> 00:48:42,290 spațiu, mai puțin, spațiu, 0? 997 00:48:42,290 --> 00:48:44,640 Ori de câte ori aveți un operator - 998 00:48:44,640 --> 00:48:50,490 ea poate fi ca, plus, minus, ori, mai puțin, mai mare, indiferent de operatorul - 999 00:48:50,490 --> 00:48:57,560 trebuie să puneți un spațiu pe stânga și dreptul de operator. 1000 00:48:57,560 --> 00:49:00,570 >> LAUREN CARVALHO: Acestea sunt numite operanzi binare. 1001 00:49:00,570 --> 00:49:03,720 Doar asigurați-vă că întotdeauna spațiu din operanzi de binare. 1002 00:49:03,720 --> 00:49:05,465 >> LUCAS FREITAS: Acest lucru este nu un operand binar. 1003 00:49:05,465 --> 00:49:07,010 >> LAUREN CARVALHO: Aceasta este deoarece este nevoie de doi. 1004 00:49:07,010 --> 00:49:08,260 >> LUCAS FREITAS: Oh, da. 1005 00:49:08,260 --> 00:49:13,340 1006 00:49:13,340 --> 00:49:14,590 >> OK, switch-uri. 1007 00:49:14,590 --> 00:49:18,180 1008 00:49:18,180 --> 00:49:23,390 În primul rând, trebuie să vedem că la fel ca într-o declarație, dacă sau altceva, aveți 1009 00:49:23,390 --> 00:49:28,280 pentru a pune în acoladă pe o linie proprie și în conformitate cu bretele buclat aici. 1010 00:49:28,280 --> 00:49:32,240 Observați că există un singur spațiu după comutator, la fel ca în cazul în care și altceva 1011 00:49:32,240 --> 00:49:35,360 am avut un singur spațiu între că și parantezele. 1012 00:49:35,360 --> 00:49:36,610 Deci, va trebui să pui. 1013 00:49:36,610 --> 00:49:40,380 1014 00:49:40,380 --> 00:49:48,270 >> Și nu există nici un spațiu imediat după fiecare din paranteze sau înainte de sfârșitul 1015 00:49:48,270 --> 00:49:49,080 din paranteze. 1016 00:49:49,080 --> 00:49:52,612 Deci, vezi că totul împreună, și, de asemenea, ca aici. 1017 00:49:52,612 --> 00:49:53,940 >> Da? 1018 00:49:53,940 --> 00:49:58,040 >> LAUREN CARVALHO: Cred că avem nevoie pentru a merge mai departe. 1019 00:49:58,040 --> 00:50:02,340 >> LUCAS FREITAS: Deci, aceasta este parte a Ghid de stil pe care le au pentru CS50. 1020 00:50:02,340 --> 00:50:06,520 Asigurați-vă că pentru a merge la cs50.net/style și să ia o privire la acest lucru. 1021 00:50:06,520 --> 00:50:09,250 Acestea sunt toate foarte importante pentru scorul de stil. 1022 00:50:09,250 --> 00:50:12,740 1023 00:50:12,740 --> 00:50:15,670 >> Lasă-mă să mă întorc la declarația. 1024 00:50:15,670 --> 00:50:17,070 >> LAUREN CARVALHO: mi-ar mai degrabă folosesc doar style50. 1025 00:50:17,070 --> 00:50:18,920 Mergem să meargă direct la bucle. 1026 00:50:18,920 --> 00:50:27,580 1027 00:50:27,580 --> 00:50:28,300 Bine. 1028 00:50:28,300 --> 00:50:33,720 >> Deci, haideți să ne întoarcem la conținutul, acum că am trecut peste ghidul de stil. 1029 00:50:33,720 --> 00:50:37,220 Loops, le-ai văzut în Scratch, și vom vorbi despre ele în 1030 00:50:37,220 --> 00:50:39,210 C. 1031 00:50:39,210 --> 00:50:44,400 >> Într-o buclă, există trei porții la 1032 00:50:44,400 --> 00:50:45,440 declarație de acest lucru pentru bucla. 1033 00:50:45,440 --> 00:50:49,040 Ai de inițializare în pe care ați stabilit variabilele. 1034 00:50:49,040 --> 00:50:52,160 Ai starea dumneavoastră, care sunt verificare pentru a vedea dacă ceva este 1035 00:50:52,160 --> 00:50:54,670 adevărat sau fals și dacă buclă ar trebui să continue. 1036 00:50:54,670 --> 00:50:59,390 Și ai actualizarea, care este actualizarea variabilele. 1037 00:50:59,390 --> 00:51:05,310 >> Să aruncăm o privire rapidă la unele Cod C de acest lucru pentru buclă în acțiune. 1038 00:51:05,310 --> 00:51:08,860 Ce se întâmplă este aici, în inițializare, suntem stabilirea i la 0. 1039 00:51:08,860 --> 00:51:11,820 În starea suntem de verificare dacă i este mai mic de 10. 1040 00:51:11,820 --> 00:51:14,982 Și în actualizarea suntem incrementarea i. 1041 00:51:14,982 --> 00:51:20,490 Deci, ceea ce va rezulta din acest lucru pentru bucla? 1042 00:51:20,490 --> 00:51:24,344 >> LUCAS FREITAS: De fapt, în primul rând, nu voi ști ce i + + este? 1043 00:51:24,344 --> 00:51:25,850 >> Audiența: Creșterea de 1. 1044 00:51:25,850 --> 00:51:26,870 >> LUCAS FREITAS: a crescut cu 1, da. 1045 00:51:26,870 --> 00:51:30,020 Deci, acest lucru este același lucru ca și face i i plus 1 egal. 1046 00:51:30,020 --> 00:51:35,890 Și observați că nu avem un spațiu între i și + +. 1047 00:51:35,890 --> 00:51:37,600 >> Deci, nu voi ști ce va face? 1048 00:51:37,600 --> 00:51:39,060 Poate cineva să-mi spui? 1049 00:51:39,060 --> 00:51:41,463 Și poate lua niște bomboane din cauza asta? 1050 00:51:41,463 --> 00:51:42,912 >> Audiența: [inaudibil] 1051 00:51:42,912 --> 00:51:44,850 >> LUCAS FREITAS: OK. 1052 00:51:44,850 --> 00:51:45,400 [Inaudibil] 1053 00:51:45,400 --> 00:51:47,450 arata toată lumea mai târziu [neauzit]. 1054 00:51:47,450 --> 00:51:49,565 Da, o să arate "Acest este CS50 "de 10 ori. 1055 00:51:49,565 --> 00:51:52,150 >> LAUREN CARVALHO: Cred că a fost în titlul de diapozitiv. 1056 00:51:52,150 --> 00:51:53,830 >> LUCAS FREITAS: Oh, da. 1057 00:51:53,830 --> 00:51:54,670 >> [Râsete] 1058 00:51:54,670 --> 00:51:56,790 >> LUCAS FREITAS: Asta ajută. 1059 00:51:56,790 --> 00:51:58,370 >> LAUREN CARVALHO: Deci, cei sunt pentru bucle. 1060 00:51:58,370 --> 00:52:03,200 Vom vedea unele mai multe exemple de bucle pentru mai târziu. 1061 00:52:03,200 --> 00:52:06,510 Dar haideți să aruncăm de fapt, o privire la de-al doilea tip de buclă veți întâlni 1062 00:52:06,510 --> 00:52:08,920 în C, și se numește buclă în timp ce. 1063 00:52:08,920 --> 00:52:11,120 >> Într-o buclă în timp ce, ai tocmai am primit o condiție. 1064 00:52:11,120 --> 00:52:14,790 Condiția este verificată în început, iar în cazul în care această condiție 1065 00:52:14,790 --> 00:52:18,450 evaluează la adevărat, atunci codul în corpul blocului timp 1066 00:52:18,450 --> 00:52:20,380 va executa. 1067 00:52:20,380 --> 00:52:23,000 Și codul va continua să executa atât de mult ca 1068 00:52:23,000 --> 00:52:24,450 condiție rămâne adevărat. 1069 00:52:24,450 --> 00:52:28,350 1070 00:52:28,350 --> 00:52:33,320 >> Iată un exemplu de o buclă în timp ce în C. Vom stabili numărul de la 10 la 1071 00:52:33,320 --> 00:52:34,580 începe cu. 1072 00:52:34,580 --> 00:52:41,800 Atâta timp cât scorul este mai mare de 0, vom continua imprimarea aceasta 1073 00:52:41,800 --> 00:52:43,360 variabilă aici. 1074 00:52:43,360 --> 00:52:47,080 Vom decrementa numărul și apoi verificați din nou starea. 1075 00:52:47,080 --> 00:52:51,370 Imprimare, decrement, verificare condiția din nou. 1076 00:52:51,370 --> 00:52:54,530 >> Aici avem un exemplu care se referă la întrebarea dvs. mai devreme. 1077 00:52:54,530 --> 00:52:57,340 Am avut la sută s atunci când am fost imprimarea un șir, și acum că 1078 00:52:57,340 --> 00:53:03,420 suntem imprimarea un int, avem un la suta eu, ca substituent nostru în loc. 1079 00:53:03,420 --> 00:53:09,250 Literele trebuie să fie destul de intuitiv, e pentru șir, i pentru Int. 1080 00:53:09,250 --> 00:53:15,400 >> Deci, dacă acest cod execută, ar trebui conta în jos 10-0, imprimarea 1081 00:53:15,400 --> 00:53:15,925 fiecare întreg. 1082 00:53:15,925 --> 00:53:19,460 >> LUCAS FREITAS: Și vă puteți gândi la sută, se simte ca un martor 1083 00:53:19,460 --> 00:53:23,960 spațiu, și apoi tu pui aceasta variabilă aici, în acest spațiu gol. 1084 00:53:23,960 --> 00:53:27,640 Deci, de exemplu, aici, voi avea doar un gol, iar apoi eu pun 1085 00:53:27,640 --> 00:53:30,262 conta acolo, Valoarea de numărul. 1086 00:53:30,262 --> 00:53:32,710 Asta face sens? 1087 00:53:32,710 --> 00:53:35,860 >> Am putea să fac ca printf și apoi citează, conta? 1088 00:53:35,860 --> 00:53:36,840 Ar merge asta? 1089 00:53:36,840 --> 00:53:37,980 >> Audiența: Nu. 1090 00:53:37,980 --> 00:53:41,190 >> LUCAS FREITAS: Nu, pentru că va de fapt imprima cuvântul "count" 1091 00:53:41,190 --> 00:53:42,850 loc de a imprima valoarea. 1092 00:53:42,850 --> 00:53:46,080 Acesta este modul în care face imprima valorile spre variabila in loc de 1093 00:53:46,080 --> 00:53:47,670 doar numele variabilei. 1094 00:53:47,670 --> 00:53:48,530 Orice întrebări? 1095 00:53:48,530 --> 00:53:53,060 >> Audiența: De ce să utilizați pentru ca spre deosebire de vreme? 1096 00:53:53,060 --> 00:53:56,130 >> LAUREN CARVALHO: mi-ar folosi o pentru buclă dacă știu exact câți 1097 00:53:56,130 --> 00:53:59,520 iterații Vreau bucla mea pentru a rula. 1098 00:53:59,520 --> 00:54:02,810 În acest caz, nu contează pentru că, Vreau să spun, am fost doar încercarea de a 1099 00:54:02,810 --> 00:54:05,310 cred că de o foarte simplu exemplu pentru acest diapozitiv. 1100 00:54:05,310 --> 00:54:09,990 Dar să spunem că vrei ceva să continui în timp ce - 1101 00:54:09,990 --> 00:54:14,480 >> LUCAS FREITAS: De exemplu, esti cerând de intrare pana cand persoana 1102 00:54:14,480 --> 00:54:15,370 vă oferă intrare corect. 1103 00:54:15,370 --> 00:54:19,720 Deci, ca în timp ce de intrare nu este OK, tot întreabă de el. 1104 00:54:19,720 --> 00:54:22,920 Sau ca în timp ce sunteți părinții nu dau bani, tot întreabă de el. 1105 00:54:22,920 --> 00:54:23,430 >> [Râsete] 1106 00:54:23,430 --> 00:54:25,390 >> LAUREN CARVALHO: Tu nu știi cum de multe ori va trebui să-l facă. 1107 00:54:25,390 --> 00:54:27,292 >> LUCAS FREITAS: Pentru că nu știu cum de multe ori că este 1108 00:54:27,292 --> 00:54:28,010 O să continui. 1109 00:54:28,010 --> 00:54:30,397 >> LAUREN CARVALHO: Dar într-o buclă, trebuie să știți cum de multe ori. 1110 00:54:30,397 --> 00:54:33,640 1111 00:54:33,640 --> 00:54:33,860 Da? 1112 00:54:33,860 --> 00:54:38,520 >> Audiența: Doar pentru a clarifica, procentul spune că acest lucru este ceva pe cale de a 1113 00:54:38,520 --> 00:54:42,415 întâmpla, de i pentru întreg, și backslash N - 1114 00:54:42,415 --> 00:54:43,910 >> LAUREN Carvalho: Mijloace? 1115 00:54:43,910 --> 00:54:45,820 Cine știe ce înseamnă backslash n? 1116 00:54:45,820 --> 00:54:47,770 Linie nou, da. 1117 00:54:47,770 --> 00:54:48,130 Exact. 1118 00:54:48,130 --> 00:54:50,500 >> LUCAS FREITAS: Puteți să vă gândiți de n ca linie nouă. 1119 00:54:50,500 --> 00:54:52,258 >> LAUREN CARVALHO: Nice. 1120 00:54:52,258 --> 00:54:55,775 >> Audiența: Ce-i aia numărul liniuță liniuță [inaudibil]? 1121 00:54:55,775 --> 00:55:00,240 >> LUCAS FREITAS: Numar minus minus este același lucru ca și în plus, plus, dar 1122 00:55:00,240 --> 00:55:02,160 în loc să crească, este în scădere cu 1. 1123 00:55:02,160 --> 00:55:04,720 1124 00:55:04,720 --> 00:55:07,185 >> LAUREN CARVALHO: Orice mai mult în timp ce întrebări bucla? 1125 00:55:07,185 --> 00:55:09,460 Nu? 1126 00:55:09,460 --> 00:55:13,910 Oh, trebuia să au sărit ca. 1127 00:55:13,910 --> 00:55:14,950 >> Acesta este un do în timp ce buclă. 1128 00:55:14,950 --> 00:55:18,950 Foarte similar cu o buclă în timp ce excepția acest caz, vom verifica starea după 1129 00:55:18,950 --> 00:55:23,430 codul în corpul buclă execută o dată. 1130 00:55:23,430 --> 00:55:27,170 Așa că am executa codul în primul rând, indiferent de ce. 1131 00:55:27,170 --> 00:55:31,956 Apoi vom verifica starea, executa l din nou în cazul în care condiția este adevărată. 1132 00:55:31,956 --> 00:55:35,450 1133 00:55:35,450 --> 00:55:38,950 >> Veți găsi te folosind acest lucru atunci când ceri pentru introduse de utilizator. 1134 00:55:38,950 --> 00:55:42,080 Pentru ca esti mereu va trebui să întreb o dată, și apoi în funcție de ceea ce 1135 00:55:42,080 --> 00:55:46,570 datele introduse de utilizator este, va trebui să reprompt și întreb din nou și din nou, în cazul în care 1136 00:55:46,570 --> 00:55:50,670 de intrare nu a fost ceea ce așteptat să fie. 1137 00:55:50,670 --> 00:55:53,610 >> Audiența: Deci, e ca o formă pentru ca oamenii să completați. 1138 00:55:53,610 --> 00:55:56,010 >> LAUREN CARVALHO: Da, exact. 1139 00:55:56,010 --> 00:55:59,720 Veți găsi, cred că, în prima ta PSET, ai de gând să trebuie să 1140 00:55:59,720 --> 00:56:04,010 utilizeze o buclă face bine pentru a colecta intrare de la utilizator. 1141 00:56:04,010 --> 00:56:08,728 >> Audiența: În funcție de situație, bucle în timp ce vor avea tendința de a rula mai mult 1142 00:56:08,728 --> 00:56:12,805 de multe ori decât în ​​timp ce buclele, cum ar fi de către unul sau ceva? 1143 00:56:12,805 --> 00:56:14,080 >> LAUREN CARVALHO: Dacă e exact - 1144 00:56:14,080 --> 00:56:17,400 >> LUCAS FREITAS: Acestea ar trebui să ruleze mereu cantitatea exactă de ori pe care le 1145 00:56:17,400 --> 00:56:19,130 doriți să-l rulați. 1146 00:56:19,130 --> 00:56:23,860 Ca și cum vom folosi în timp ce facem pentru că suntem într-adevăr a vrut pentru a obține de intrare cel puțin o dată. 1147 00:56:23,860 --> 00:56:27,220 În bucle în timp ce, uneori, nu vrei să-l execute, la toate, dacă nu este 1148 00:56:27,220 --> 00:56:28,540 cazul a executa. 1149 00:56:28,540 --> 00:56:31,300 Deci, depinde de design. 1150 00:56:31,300 --> 00:56:35,900 Adică, puteți face, fie în timp ce utilizarea sau în timp ce, atâta timp cât codul are ca 1151 00:56:35,900 --> 00:56:36,905 ar trebui sa fac. 1152 00:56:36,905 --> 00:56:38,470 >> LAUREN CARVALHO: Dar eu fac cred că răspunsul la dvs. 1153 00:56:38,470 --> 00:56:40,540 întrebare este, probabil, da. 1154 00:56:40,540 --> 00:56:42,190 Să presupunem că starea a fost falsă. 1155 00:56:42,190 --> 00:56:45,498 Într-un caz, ar fi o dată, și un alt caz ar fi de zero ori. 1156 00:56:45,498 --> 00:56:47,370 Deci, da. 1157 00:56:47,370 --> 00:56:49,260 >> Alte întrebări? 1158 00:56:49,260 --> 00:56:50,320 Da? 1159 00:56:50,320 --> 00:56:56,443 >> Audiența: Poate condiția buclă să fie un pentru buclă în termenii unei alte variabile 1160 00:56:56,443 --> 00:56:57,385 decât [neauzit]. 1161 00:56:57,385 --> 00:57:01,700 >> LAUREN CARVALHO: Da, acesta poate fi orice. 1162 00:57:01,700 --> 00:57:06,420 Probabil pentru Psets început, tu nu va trebui sa se confrunte cu acest caz, dar 1163 00:57:06,420 --> 00:57:09,878 cu siguranta poate fi nimic. 1164 00:57:09,878 --> 00:57:12,680 >> LUCAS FREITAS: Cred că am terminat aici. 1165 00:57:12,680 --> 00:57:13,290 >> LAUREN CARVALHO: Suntem? 1166 00:57:13,290 --> 00:57:13,480 Nu? 1167 00:57:13,480 --> 00:57:13,870 >> LUCAS FREITAS: Loops? 1168 00:57:13,870 --> 00:57:14,600 Da. 1169 00:57:14,600 --> 00:57:16,280 >> LAUREN CARVALHO: Noi nu ar trebui să fie. 1170 00:57:16,280 --> 00:57:17,760 Oh, am terminat cu bucle. 1171 00:57:17,760 --> 00:57:19,250 OK. 1172 00:57:19,250 --> 00:57:23,180 >> De fapt, pentru că am vorbit atât de mult, să de fapt, toate navigare 1173 00:57:23,180 --> 00:57:28,950 pe de study.cs50.net/conditions. 1174 00:57:28,950 --> 00:57:34,460 Și ai de gând pentru a naviga în jos la problemele widget. 1175 00:57:34,460 --> 00:57:39,090 Ei bine, de fapt, în timp ce oamenii devin acest set up, studiul CS50 este 1176 00:57:39,090 --> 00:57:42,620 O să fie un instrument care TFS dvs. va folosi pentru a pregăti pentru secțiunile și că 1177 00:57:42,620 --> 00:57:45,230 voi puteți folosi dacă pierdeți secțiuni. 1178 00:57:45,230 --> 00:57:48,980 O să conțină o grămadă de diapozitive, câteva sfaturi și trucuri pentru fiecare 1179 00:57:48,980 --> 00:57:54,030 subiect, și unele probleme de practică cu soluții. 1180 00:57:54,030 --> 00:57:57,200 >> De ce nu toată lumea ia doar o privire la această problemă aici. 1181 00:57:57,200 --> 00:58:01,630 1182 00:58:01,630 --> 00:58:04,790 >> Îmi pare rău, ar fi trebuit sa reamintit oameni pentru a aduce laptop-uri de azi. 1183 00:58:04,790 --> 00:58:07,050 Dar dacă nu aveți un laptop, este OK. 1184 00:58:07,050 --> 00:58:10,140 Puteți nota pur și simplu acest lucru în jos pe o bucată de hârtie sau se uite peste 1185 00:58:10,140 --> 00:58:12,890 umărul vecinului. 1186 00:58:12,890 --> 00:58:16,380 >> Să încercăm și să scrie un program care solicită utilizatorului să ia o presupunere, 1187 00:58:16,380 --> 00:58:19,250 numărul mediu de copii per familie Unitate în Statele Unite. 1188 00:58:19,250 --> 00:58:22,265 Că numărul este de 2, prin modul în care, în timp ce se poate vedea din aceste exemple. 1189 00:58:22,265 --> 00:58:24,770 1190 00:58:24,770 --> 00:58:29,030 >> Vrem să imprime numărul mediu de copii per familie in SUA, apoi ne-am 1191 00:58:29,030 --> 00:58:31,080 Vreau să ce? 1192 00:58:31,080 --> 00:58:35,480 Vrem să colecteze de intrare de la utilizator. 1193 00:58:35,480 --> 00:58:41,290 Și apoi, în funcție de ceea ce utilizatorul a de intrare este, ai de gând să imprima 1194 00:58:41,290 --> 00:58:44,850 fie acest lucru este corect sau acest lucru este incorect. 1195 00:58:44,850 --> 00:58:48,040 >> Și primul lucru pe care veți vezi, dacă faceți clic pe săgeata mică la 1196 00:58:48,040 --> 00:58:52,190 partea de jos a problemei este un widget la fața locului să noteze ceva pseudocod. 1197 00:58:52,190 --> 00:58:53,340 Deci, nu sunteți încă programare. 1198 00:58:53,340 --> 00:58:56,740 Esti doar obtinerea dvs. ideile în ordine. 1199 00:58:56,740 --> 00:58:59,620 >> Nimeni nu vrea să ajute Lucas veni cu dreptul 1200 00:58:59,620 --> 00:59:01,270 pseudocod pentru această problemă? 1201 00:59:01,270 --> 00:59:04,900 >> LUCAS FREITAS: Care este primul lucru că ar trebui să facem, probabil, aici? 1202 00:59:04,900 --> 00:59:07,010 Ce crezi că voi? 1203 00:59:07,010 --> 00:59:08,260 >> Audiența: [inaudibil] 1204 00:59:08,260 --> 00:59:12,060 1205 00:59:12,060 --> 00:59:13,290 >> LUCAS FREITAS: Da, OK. 1206 00:59:13,290 --> 00:59:16,610 Deci, de imprimare. 1207 00:59:16,610 --> 00:59:19,480 Doar spun de imprimare acest mediu număr de oameni? 1208 00:59:19,480 --> 00:59:20,470 OK. 1209 00:59:20,470 --> 00:59:23,450 Imprimare întrebare, să spunem. 1210 00:59:23,450 --> 00:59:25,951 După ce am imprima această întrebare, ceea ce ar trebui să fac? 1211 00:59:25,951 --> 00:59:27,875 >> Audiența: Ia intrare. 1212 00:59:27,875 --> 00:59:30,690 >> LUCAS FREITAS: Ia intrare. 1213 00:59:30,690 --> 00:59:32,864 Altceva? 1214 00:59:32,864 --> 00:59:34,114 >> Audiența: Stare. 1215 00:59:34,114 --> 00:59:36,770 1216 00:59:36,770 --> 00:59:38,980 >> LUCAS FREITAS: Stare. 1217 00:59:38,980 --> 00:59:41,325 >> LAUREN CARVALHO: Ce este că condiție va fi? 1218 00:59:41,325 --> 00:59:43,550 >> Audiența: Numărul de [neauzit]. 1219 00:59:43,550 --> 00:59:44,440 >> LAUREN CARVALHO: Corect. 1220 00:59:44,440 --> 00:59:46,945 >> LUCAS FREITAS: Deci, ce am de gând pentru a verifica în stare? 1221 00:59:46,945 --> 00:59:48,750 >> Audiența: În cazul în care este egal cu 2. 1222 00:59:48,750 --> 00:59:50,640 >> LAUREN CARVALHO: În cazul în care este egal cu 2. 1223 00:59:50,640 --> 00:59:51,890 Exact. 1224 00:59:51,890 --> 00:59:58,340 1225 00:59:58,340 --> 01:00:00,140 >> LUCAS FREITAS: Este ceva altfel că ar trebui să fac? 1226 01:00:00,140 --> 01:00:01,390 >> Audiența: Count. 1227 01:00:01,390 --> 01:00:05,184 1228 01:00:05,184 --> 01:00:08,110 >> LUCAS FREITAS: Deci, dacă este egal cu 2, să zicem - 1229 01:00:08,110 --> 01:00:14,250 1230 01:00:14,250 --> 01:00:17,960 permiteți-mi să scrie doar în cazul în care de intrare este egal la 2, atunci ceea ce am de gând 1231 01:00:17,960 --> 01:00:23,665 sa faci este de imprimare corect. 1232 01:00:23,665 --> 01:00:26,230 1233 01:00:26,230 --> 01:00:31,826 Și apoi altceva, am de gând pentru a imprima incorect. 1234 01:00:31,826 --> 01:00:34,600 1235 01:00:34,600 --> 01:00:37,720 Altceva? 1236 01:00:37,720 --> 01:00:38,670 Nu? 1237 01:00:38,670 --> 01:00:40,500 >> LAUREN CARVALHO: Deci tu posibilitatea să faceți clic pe - 1238 01:00:40,500 --> 01:00:42,290 nu toată lumea are acest lucru în jos? 1239 01:00:42,290 --> 01:00:44,680 >> LUCAS FREITAS: Are sens? 1240 01:00:44,680 --> 01:00:46,226 Deci, acum, haideți să încercăm să cod acest lucru. 1241 01:00:46,226 --> 01:00:50,140 >> LAUREN CARVALHO: Dacă faceți clic pe putinul săgeată, se salvează de fapt dvs. 1242 01:00:50,140 --> 01:00:51,900 pseudocod, ceea ce este cu adevarat interesant. 1243 01:00:51,900 --> 01:00:56,480 Și tu poți face pe cei în comentarii dacă vrei doar pentru a vă reaminti de 1244 01:00:56,480 --> 01:00:57,075 ce să facă. 1245 01:00:57,075 --> 01:01:01,555 >> LUCAS FREITAS: Deci, de exemplu, în primul rând Am de gând să imprima întrebarea, așa 1246 01:01:01,555 --> 01:01:05,930 cum am de gând să fac asta, de fapt? 1247 01:01:05,930 --> 01:01:07,050 printf. 1248 01:01:07,050 --> 01:01:12,130 Deci printf, iar întrebarea este medie numărul de copii pe 1249 01:01:12,130 --> 01:01:14,110 familie în SUA. 1250 01:01:14,110 --> 01:01:19,070 1251 01:01:19,070 --> 01:01:21,790 >> Apoi am de gând pentru a obține intrare de la utilizator. 1252 01:01:21,790 --> 01:01:29,050 1253 01:01:29,050 --> 01:01:31,324 Deci, cum pot face asta? 1254 01:01:31,324 --> 01:01:32,200 >> Audiența: Get Int. 1255 01:01:32,200 --> 01:01:33,076 >> LAUREN CARVALHO: getint. 1256 01:01:33,076 --> 01:01:33,890 >> LUCAS FREITAS: OK. 1257 01:01:33,890 --> 01:01:35,220 Deci, în primul rând să declare, corect? 1258 01:01:35,220 --> 01:01:39,300 Int, să-i zicem n este egal cu getint. 1259 01:01:39,300 --> 01:01:42,610 1260 01:01:42,610 --> 01:01:44,670 >> Iar acum starea. 1261 01:01:44,670 --> 01:01:49,250 Deci, permiteți-mi să spun că am de gând pentru a verifica răspunsul aici. 1262 01:01:49,250 --> 01:01:57,290 Deci, mai întâi, în cazul de intrare, care este n, este egal a - cum am de gând să scrie asta? 1263 01:01:57,290 --> 01:01:58,480 >> Audiența: egal egal. 1264 01:01:58,480 --> 01:02:00,000 >> LUCAS FREITAS: Perfect. 1265 01:02:00,000 --> 01:02:00,670 Deci n. 1266 01:02:00,670 --> 01:02:04,600 Și observați că fac un spațiu, egal, egal, spațiu, adevărat. 1267 01:02:04,600 --> 01:02:06,930 Și acum ce ar trebui să fac? 1268 01:02:06,930 --> 01:02:08,820 Ceva foarte important pentru stil. 1269 01:02:08,820 --> 01:02:10,070 Acolade. 1270 01:02:10,070 --> 01:02:16,570 1271 01:02:16,570 --> 01:02:17,795 >> Și apoi am de gând să imprima. 1272 01:02:17,795 --> 01:02:19,790 Cum pot imprima? 1273 01:02:19,790 --> 01:02:22,500 printf. 1274 01:02:22,500 --> 01:02:24,568 >> Audiența: Ar putea fi valorificate? 1275 01:02:24,568 --> 01:02:27,166 1276 01:02:27,166 --> 01:02:28,380 >> LUCAS FREITAS: Nu. 1277 01:02:28,380 --> 01:02:31,000 Ar trebui să fie toate cu litere mici. 1278 01:02:31,000 --> 01:02:32,250 Astfel că este corect. 1279 01:02:32,250 --> 01:02:40,990 1280 01:02:40,990 --> 01:02:44,870 >> Ar fi suficientă pentru acest printf afirmație, sau sunt eu lipsesc ceva? 1281 01:02:44,870 --> 01:02:46,265 >> Audiența: Linie nouă. 1282 01:02:46,265 --> 01:02:50,220 >> LUCAS FREITAS: Linie nouă, da. 1283 01:02:50,220 --> 01:02:51,250 Și acum altceva. 1284 01:02:51,250 --> 01:02:57,290 >> Audiența: Există un spațiu după printf, sau nu? 1285 01:02:57,290 --> 01:03:00,820 >> LAUREN CARVALHO: Ar trebui verificați Ghidul de stil. 1286 01:03:00,820 --> 01:03:02,260 >> Audiența: Nu ar trebui să fie. 1287 01:03:02,260 --> 01:03:03,510 >> LUCAS FREITAS: nu ar trebui să fie, bine. 1288 01:03:03,510 --> 01:03:05,820 1289 01:03:05,820 --> 01:03:13,605 Deci altceva, printf, "Aceasta este incorect." 1290 01:03:13,605 --> 01:03:17,105 >> LAUREN CARVALHO: Oops, citate tale. 1291 01:03:17,105 --> 01:03:17,950 >> LUCAS FREITAS: OK. 1292 01:03:17,950 --> 01:03:18,600 Altceva? 1293 01:03:18,600 --> 01:03:20,770 Nu-l arate bine? 1294 01:03:20,770 --> 01:03:21,890 >> LAUREN CARVALHO: Să-l încercați? 1295 01:03:21,890 --> 01:03:23,190 >> LUCAS FREITAS: Da, hai să-l rulați. 1296 01:03:23,190 --> 01:03:25,880 1297 01:03:25,880 --> 01:03:29,070 Deci, este compilarea, și-l se pare că funcționează. 1298 01:03:29,070 --> 01:03:31,465 Să încercăm doi copii. 1299 01:03:31,465 --> 01:03:34,110 Că este corect. 1300 01:03:34,110 --> 01:03:37,300 Și acum să ruleze din nou, dar acum, în loc de a pune doi copii, să 1301 01:03:37,300 --> 01:03:40,990 spun că am de gând să pun ca cinci. 1302 01:03:40,990 --> 01:03:41,515 Că este incorectă. 1303 01:03:41,515 --> 01:03:42,670 Deci, se pare că funcționează. 1304 01:03:42,670 --> 01:03:44,160 >> LAUREN CARVALHO: De ce nu le arăta ce se întâmplă dacă ai pus ceva 1305 01:03:44,160 --> 01:03:45,055 ciudat, ca și unele litere. 1306 01:03:45,055 --> 01:03:45,790 >> LUCAS FREITAS: Oh, da. 1307 01:03:45,790 --> 01:03:47,430 Să verifica, de asemenea că. 1308 01:03:47,430 --> 01:03:51,170 Ce se întâmplă dacă utilizatorul încearcă să te pui cu programul dumneavoastră, și ei doar 1309 01:03:51,170 --> 01:03:57,430 scriu, nu știu două. 1310 01:03:57,430 --> 01:03:58,320 O să spun reîncerca. 1311 01:03:58,320 --> 01:04:00,780 >> LAUREN CARVALHO: Deci getint este cerându-le să încercați din nou. 1312 01:04:00,780 --> 01:04:02,115 Noi nu am avut de a avea grijă de care noi înșine. 1313 01:04:02,115 --> 01:04:02,750 >> LUCAS FREITAS: Da. 1314 01:04:02,750 --> 01:04:06,853 Deci, dacă am pus de fapt un număr, e continua să-mi ceri să încercați din nou. 1315 01:04:06,853 --> 01:04:08,330 >> Audiența: Cum l-ai fugit? 1316 01:04:08,330 --> 01:04:10,570 >> LUCAS FREITAS: doar să faceți clic acest buton stele. 1317 01:04:10,570 --> 01:04:11,940 >> LAUREN CARVALHO: Tu ar trebui să meargă în sus. 1318 01:04:11,940 --> 01:04:13,320 Acolo te duci. 1319 01:04:13,320 --> 01:04:15,550 >> LUCAS FREITAS: Steaua butonul din dreapta acolo. 1320 01:04:15,550 --> 01:04:16,040 Da? 1321 01:04:16,040 --> 01:04:19,960 >> Audiența: Are solicita [inaudibil] cu numere zecimale prea? 1322 01:04:19,960 --> 01:04:21,235 >> LAUREN CARVALHO: Eu cred că va fi. 1323 01:04:21,235 --> 01:04:22,660 >> LUCAS FREITAS: În cazul în care ce face? 1324 01:04:22,660 --> 01:04:24,990 >> LAUREN CARVALHO: În cazul în care tipul într-un număr zecimal, cred 1325 01:04:24,990 --> 01:04:25,880 se va solicita. 1326 01:04:25,880 --> 01:04:26,586 >> LUCAS FREITAS: Să vedem. 1327 01:04:26,586 --> 01:04:28,360 >> LAUREN CARVALHO: Deoarece nu este un int. 1328 01:04:28,360 --> 01:04:32,056 1329 01:04:32,056 --> 01:04:33,442 >> LUCAS FREITAS: Da. 1330 01:04:33,442 --> 01:04:37,370 >> LAUREN CARVALHO: Deci nu este un int, Ia Int vă va cere să încercați din nou. 1331 01:04:37,370 --> 01:04:40,795 >> Audiența: Deci, în cazul în care codul ar fi zecimală care solicita 1332 01:04:40,795 --> 01:04:46,005 utilizator care trebuie să intre un număr întreg specific? 1333 01:04:46,005 --> 01:04:48,480 >> LAUREN CARVALHO: getint este de fapt fac asta pentru noi. 1334 01:04:48,480 --> 01:04:50,600 >> Audiența: Nu, vreau să spun dacă ne-am dorit pentru a intra în [inaudibil] 1335 01:04:50,600 --> 01:04:55,070 >> LUCAS FREITAS: Se poate spune ca medie numărul de copii din SUA. 1336 01:04:55,070 --> 01:04:56,120 Nu știu. 1337 01:04:56,120 --> 01:05:01,761 Putem spune, de exemplu, "Vă rugăm să intrare un întreg. " 1338 01:05:01,761 --> 01:05:04,270 >> LAUREN CARVALHO: Un număr întreg egal la numărul mediu. 1339 01:05:04,270 --> 01:05:06,190 Adică, e doar modul în care îl cuvânt, corect? 1340 01:05:06,190 --> 01:05:06,520 >> LUCAS FREITAS: Da. 1341 01:05:06,520 --> 01:05:08,420 Acest lucru nu este de fapt o parte a codificare. 1342 01:05:08,420 --> 01:05:11,000 Este mai mult ca orice ai de gând să doriți să 1343 01:05:11,000 --> 01:05:13,987 scrie în programul dumneavoastră. 1344 01:05:13,987 --> 01:05:17,723 >> Audiența: Cum l-am rula în cazul în care a fost de fapt în gedit [neauzit]. 1345 01:05:17,723 --> 01:05:19,130 În loc de presare joc? 1346 01:05:19,130 --> 01:05:21,180 >> LUCAS FREITAS: Vom primul-l compilați. 1347 01:05:21,180 --> 01:05:25,080 Putem face acest lucru prin a face make și numele fișierului. 1348 01:05:25,080 --> 01:05:29,896 Și apoi să-l rulați, vom face dot slash și numele programului. 1349 01:05:29,896 --> 01:05:36,588 >> Audiența: Cred că ceea ce am vrut să spun a fost dacă am vrut programul pentru a răspunde la 1350 01:05:36,588 --> 01:05:42,010 intrarea lor incorectă, invalid, tu nu ar trebui să pună în - 1351 01:05:42,010 --> 01:05:45,710 >> LUCAS FREITAS: Noi nu vom fi în măsură să face acest lucru deoarece codul această spune 1352 01:05:45,710 --> 01:05:50,350 reîncerca vine de Ia Int care este o funcție care este deja pusă în aplicare 1353 01:05:50,350 --> 01:05:55,790 pentru noi, prin intermediul bibliotecii CS50, și din moment ce este deja pusă în aplicare acolo, ne-am 1354 01:05:55,790 --> 01:05:58,340 poate nu doar [neauzit]. 1355 01:05:58,340 --> 01:06:00,780 >> LAUREN CARVALHO: Dacă nu utilizați Getint, atunci poti sa faci asta. 1356 01:06:00,780 --> 01:06:01,490 >> LUCAS FREITAS: Da. 1357 01:06:01,490 --> 01:06:03,750 Dar dacă utilizați getint, nu poți. 1358 01:06:03,750 --> 01:06:05,427 Orice alte întrebări? 1359 01:06:05,427 --> 01:06:12,938 >> Audiența: Ai putea au plecat cu ca GetFloat și apoi să fie capabil de a pune 1360 01:06:12,938 --> 01:06:14,381 într-un zecimal? 1361 01:06:14,381 --> 01:06:15,343 >> LUCAS FREITAS: Da. 1362 01:06:15,343 --> 01:06:15,824 >> Audiența: OK. 1363 01:06:15,824 --> 01:06:19,210 Apoi, pe care tocmai ați putea de intrare float de la egal la egal - 1364 01:06:19,210 --> 01:06:19,950 >> LAUREN CARVALHO: Da. 1365 01:06:19,950 --> 01:06:22,740 Exact la fel, cu excepția unei plutească în loc de un int. 1366 01:06:22,740 --> 01:06:27,372 >> LUCAS FREITAS: Pune-l aici și apoi GetFloat acolo. 1367 01:06:27,372 --> 01:06:29,795 >> Audiența: Pe măsură ce va vedea sau au văzut - 1368 01:06:29,795 --> 01:06:31,327 >> LAUREN CARVALHO: avem nu a ajuns încă acolo. 1369 01:06:31,327 --> 01:06:36,490 >> Audiența: - a face cu inegalitatea flotoare nu [inaudibil] 1370 01:06:36,490 --> 01:06:40,290 >> Audiența: Ce vrei de punct și virgulă înseamnă? 1371 01:06:40,290 --> 01:06:43,220 >> LAUREN CARVALHO: punct și virgulă doar înseamnă că această declarație este completă, 1372 01:06:43,220 --> 01:06:45,030 și vom merge pe slide-ul urmator. 1373 01:06:45,030 --> 01:06:47,040 >> Audiența: Deci, este necesar de fiecare dată? 1374 01:06:47,040 --> 01:06:48,330 >> LAUREN CARVALHO: Da. 1375 01:06:48,330 --> 01:06:53,130 Ei bine, OK, deci nu pentru aceste condiții, deoarece acestea sunt 1376 01:06:53,130 --> 01:06:54,090 încapsulare ceva. 1377 01:06:54,090 --> 01:07:00,290 Deci, practic, dacă ceva este cauza te apoi pentru a crea o acoladă 1378 01:07:00,290 --> 01:07:03,000 bloc, nu se pune punct și virgulă la sfârșit. 1379 01:07:03,000 --> 01:07:04,200 >> LUCAS FREITAS: Dar totul altceva, da. 1380 01:07:04,200 --> 01:07:06,670 Când ați terminat-o declarație, a pus punct și virgulă. 1381 01:07:06,670 --> 01:07:10,380 Și dacă ați uitat punct și virgulă, compilator o să se înfurie pe tine, 1382 01:07:10,380 --> 01:07:12,640 și ai de gând să aibă pentru a încerca să-l repara. 1383 01:07:12,640 --> 01:07:16,520 >> LAUREN CARVALHO: Dacă am pus un punct și virgulă aici, care ar opri acest lucru, și eu 1384 01:07:16,520 --> 01:07:18,780 nu s-ar ajunge pentru a executa ceea ce este în interiorul, apropo. 1385 01:07:18,780 --> 01:07:21,113 Deci, este una dintre aceste bug-uri comune. 1386 01:07:21,113 --> 01:07:22,390 >> Audiența: Întotdeauna executare. 1387 01:07:22,390 --> 01:07:22,950 >> LAUREN CARVALHO: Da. 1388 01:07:22,950 --> 01:07:25,860 În acest caz, am fi mereu executa ceea ce este în interior. 1389 01:07:25,860 --> 01:07:29,050 >> Audiența: Stilul tau [inaudibil] atașați că pentru tine, gandit. 1390 01:07:29,050 --> 01:07:29,802 >> LAUREN CARVALHO: Oh, asta e adevărat. 1391 01:07:29,802 --> 01:07:34,298 >> Audiența: [inaudibil] singur linie de lucru [inaudibil] 1392 01:07:34,298 --> 01:07:35,286 >> Publicul: Da? 1393 01:07:35,286 --> 01:07:37,756 >> Audiența: Poți avea multiple intrări într-o linie? 1394 01:07:37,756 --> 01:07:41,214 Astfel ca poti cere utilizatorilor pentru a imprima două lucruri? 1395 01:07:41,214 --> 01:07:42,530 >> LAUREN CARVALHO: Nu este utilizat - 1396 01:07:42,530 --> 01:07:44,520 >> LUCAS FREITAS: Nu. 1397 01:07:44,520 --> 01:07:47,040 Să spunem că am dori, de asemenea pentru a obține acest întreg m. 1398 01:07:47,040 --> 01:07:49,558 Trebuie să o fac într-o linie diferită. 1399 01:07:49,558 --> 01:07:54,992 >> Audiența: Dacă ar fi să rulați care, cum [imperceptibil]? 1400 01:07:54,992 --> 01:07:59,438 S-ar imprima prompt acolo [inaudibil] 1401 01:07:59,438 --> 01:08:00,940 și apoi vei introduce unul și - 1402 01:08:00,940 --> 01:08:01,840 >> LAUREN CARVALHO: Ei bine, ea a alerga. 1403 01:08:01,840 --> 01:08:04,365 Adică, nu e ne oprește de la nimic doar de funcționare și de a vedea ce 1404 01:08:04,365 --> 01:08:06,610 s-ar întâmpla. 1405 01:08:06,610 --> 01:08:08,080 >> LUCAS FREITAS: Cred că e va plânge la noi 1406 01:08:08,080 --> 01:08:08,977 pentru că noi nu îl utilizați - 1407 01:08:08,977 --> 01:08:09,751 >> LAUREN CARVALHO: Oops. 1408 01:08:09,751 --> 01:08:12,580 >> LUCAS FREITAS: A plâns la noi chiar acum, pentru că noi nu utilizați acest 1409 01:08:12,580 --> 01:08:21,640 variabilă, dar dacă am făcut-o, de exemplu, n este egal cu egal cu, și m este egal 1410 01:08:21,640 --> 01:08:26,849 este egal cu a, atunci ce se va întâmpla în acest caz? 1411 01:08:26,849 --> 01:08:28,830 Ce s-ar face acest program? 1412 01:08:28,830 --> 01:08:30,330 >> Audiența: Mă întrebam cum ar fi - 1413 01:08:30,330 --> 01:08:31,550 >> LAUREN CARVALHO: Ea vrea doar să știe cum arată 1414 01:08:31,550 --> 01:08:34,189 cum ar fi, cred, corect? 1415 01:08:34,189 --> 01:08:36,819 Așa că a luat unul dintre ei, și apoi a luat al doilea. 1416 01:08:36,819 --> 01:08:41,279 1417 01:08:41,279 --> 01:08:43,069 >> Cred că ar trebui să treacă mai departe, pentru că avem o mai 1418 01:08:43,069 --> 01:08:44,689 slide show pentru a merge înainte - 1419 01:08:44,689 --> 01:08:46,269 vrei să trage de matematică? 1420 01:08:46,269 --> 01:08:47,558 >> LUCAS FREITAS: Da, matematica. 1421 01:08:47,558 --> 01:09:00,033 1422 01:09:00,033 --> 01:09:02,206 >> LAUREN CARVALHO: Da mi doar o secundă. 1423 01:09:02,206 --> 01:09:07,390 1424 01:09:07,390 --> 01:09:14,260 >> Există un alt numeric câteva variabile în datele numerice C. în C 1425 01:09:14,260 --> 01:09:18,130 pot fi clasificate în diferite tipuri, și acestea sunt cele Veți 1426 01:09:18,130 --> 01:09:19,570 a se vedea mai des. 1427 01:09:19,570 --> 01:09:20,910 >> Și int este un număr întreg. 1428 01:09:20,910 --> 01:09:23,189 Nu poți avea nici zecimale. 1429 01:09:23,189 --> 01:09:27,754 În aparat, este nevoie de 32 de biți pentru a stoca un int. 1430 01:09:27,754 --> 01:09:30,450 >> Un plutitor poate avea zecimale. 1431 01:09:30,450 --> 01:09:34,330 Este nevoie, de asemenea, 32 de biți pentru a stoca un flotor în aparat. 1432 01:09:34,330 --> 01:09:42,270 >> Un dublu este un număr cu o zecimală punct care are 64 de biți pentru a stoca, 1433 01:09:42,270 --> 01:09:44,470 ceea ce înseamnă că puteți avea doar o mai mare precizie, deoarece 1434 01:09:44,470 --> 01:09:46,426 puteți avea mai mult - 1435 01:09:46,426 --> 01:09:47,785 ce-ai spune? 1436 01:09:47,785 --> 01:09:48,640 >> LUCAS FREITAS: Da, asta-i mai mult. 1437 01:09:48,640 --> 01:09:52,140 >> LAUREN Carvalho: Mai multe locuri după virgulă. 1438 01:09:52,140 --> 01:09:57,140 Și un timp lung este un număr întreg care durează 64 de biți pentru a 1439 01:09:57,140 --> 01:09:58,395 inflamat-l în aparat. 1440 01:09:58,395 --> 01:10:00,278 >> LUCAS FREITAS: Deci, poate fi mai mare decât int poate fi. 1441 01:10:00,278 --> 01:10:03,320 1442 01:10:03,320 --> 01:10:08,380 >> LAUREN CARVALHO: lucru despre date tipuri în C este că ei vă spun ce 1443 01:10:08,380 --> 01:10:11,050 fel de date se pot stoca în variabila dumneavoastră. 1444 01:10:11,050 --> 01:10:15,860 Ei vă spun cum puteți folosi acest variabilă în programul dumneavoastră. 1445 01:10:15,860 --> 01:10:19,650 Este foarte important să păstrați doar urmări de ce tip de date pe care îl utilizați, și dacă 1446 01:10:19,650 --> 01:10:23,070 aveți nevoie pentru a arunca de la un tip de date la alta, asigurați-vă că știți 1447 01:10:23,070 --> 01:10:25,250 exact ceea ce se întâmplă în momentul în care turnare are loc. 1448 01:10:25,250 --> 01:10:28,520 Și veți vedea un exemplu mai târziu cu privire la aceste slide-uri de o 1449 01:10:28,520 --> 01:10:31,490 greșeală care poate avea loc. 1450 01:10:31,490 --> 01:10:35,300 >> Să aruncăm o privire la unele matematica în C și cred că într-adevăr cu atenție, cred, 1451 01:10:35,300 --> 01:10:38,470 despre ceea ce se întâmplă atunci când acest matematica are loc. 1452 01:10:38,470 --> 01:10:43,552 În prima linie, ceea ce este întâmplă atunci când declar x? 1453 01:10:43,552 --> 01:10:48,921 >> Audiența: Ești permite x pentru a fi ceva? 1454 01:10:48,921 --> 01:10:49,700 >> LAUREN CARVALHO: Da. 1455 01:10:49,700 --> 01:10:54,040 Ei bine, eu sunt într-adevăr cer de operare sistem de 32 de biți de memorie, nu? 1456 01:10:54,040 --> 01:10:57,890 În care pot stoca un int, și Am de gând să numim asta int x. 1457 01:10:57,890 --> 01:11:01,370 >> LUCAS FREITAS: Practic merge în memorie și de a găsi un loc care are 32 1458 01:11:01,370 --> 01:11:05,290 biți și spune, hei, vreau acest spațiu, și se va numi x. 1459 01:11:05,290 --> 01:11:08,590 Deci, tu ești doar destul de mult constatare o cutie în memorie pentru a 1460 01:11:08,590 --> 01:11:10,440 Valorile magazin de x. 1461 01:11:10,440 --> 01:11:13,980 >> LAUREN CARVALHO: Și apoi am inițializa x, ceea ce înseamnă că doar am stoca 1462 01:11:13,980 --> 01:11:20,270 valoare de 2 în acel loc, că bucată de memorie, pe care am cerut de operare 1463 01:11:20,270 --> 01:11:21,860 sistem de. 1464 01:11:21,860 --> 01:11:25,090 Și aici ceea ce facem este suntem de fapt declararea și 1465 01:11:25,090 --> 01:11:29,060 inițializarea y într-o singură linie în loc de în două linii, cum ar fi am făcut aici, 1466 01:11:29,060 --> 01:11:33,960 care este, de asemenea, o foarte bine, suntem adăugând 1 la x, si suntem stocarea că 1467 01:11:33,960 --> 01:11:34,950 valoare în y. 1468 01:11:34,950 --> 01:11:39,360 >> LUCAS FREITAS: Deci, practic ceea ce acest linie nu, se găsește acum o cutie pentru y, 1469 01:11:39,360 --> 01:11:41,990 și apoi valoarea sa, lucru care ai de gând să pună în interiorul casetei, este 1470 01:11:41,990 --> 01:11:43,800 va fi valoarea lui x plus unu. 1471 01:11:43,800 --> 01:11:45,850 Așa că are această casetă pentru y. 1472 01:11:45,850 --> 01:11:49,980 Ea devine valoarea lui x, arată aici, și vezi că este 2. 1473 01:11:49,980 --> 01:11:53,035 Pune-l acolo, plus 1, astfel se pune un 3 acolo. 1474 01:11:53,035 --> 01:11:54,290 Asta face sens? 1475 01:11:54,290 --> 01:11:55,780 Deci, y ar fi 2 în acest caz. 1476 01:11:55,780 --> 01:11:58,993 1477 01:11:58,993 --> 01:12:00,770 >> LAUREN CARVALHO: Bine, bine. 1478 01:12:00,770 --> 01:12:06,010 Am văzut unele plus, asa ca hai sa cred că acum despre divizare în C. Aici am 1479 01:12:06,010 --> 01:12:11,490 declararea si initializarea un flotor numit răspuns și împărțirea 1 de 10, 1480 01:12:11,490 --> 01:12:14,860 și apoi am imprimarea răspunsul cu două zecimale. 1481 01:12:14,860 --> 01:12:18,800 Și nota aici, în declarația mea printf, atunci când doriți să imprimați ceva la două 1482 01:12:18,800 --> 01:12:25,600 zecimale,% .2 f este ceea ce vreau sa folosesc. 1483 01:12:25,600 --> 01:12:28,880 1484 01:12:28,880 --> 01:12:31,760 Deci, punctul 2 este doar spun Am nevoie de două locuri după 1485 01:12:31,760 --> 01:12:34,980 zecimal imprimate. 1486 01:12:34,980 --> 01:12:38,740 >> Acum, ce se va întâmpla dacă am rula acest cod? 1487 01:12:38,740 --> 01:12:40,500 Are cineva o idee? 1488 01:12:40,500 --> 01:12:42,721 Ce s-ar imprima? 1489 01:12:42,721 --> 01:12:45,010 >> LUCAS FREITAS: Care sunt ne asteptam pentru a obține. 1490 01:12:45,010 --> 01:12:46,810 >> LAUREN CARVALHO: Ce face ne-o dorim, în primul rând? 1491 01:12:46,810 --> 01:12:48,871 >> LUCAS FREITAS: [inaudibil] 1492 01:12:48,871 --> 01:12:51,120 >> LAUREN CARVALHO: 0.1, da. 1493 01:12:51,120 --> 01:12:52,325 Dar ce se va imprima? 1494 01:12:52,325 --> 01:12:53,275 >> Audiența: [inaudibil] 1495 01:12:53,275 --> 01:12:56,760 >> LAUREN CARVALHO: Ei bine, nu, de fapt. 1496 01:12:56,760 --> 01:13:01,400 Aceasta este ceea ce eu vorbeam despre ce nevoie pentru a urmări foarte atent de 1497 01:13:01,400 --> 01:13:02,550 tipuri de date. 1498 01:13:02,550 --> 01:13:05,000 Deci, ce tip de date este aceasta? 1499 01:13:05,000 --> 01:13:06,250 Este un întreg, nu? 1500 01:13:06,250 --> 01:13:07,600 Nu e nici o zecimală. 1501 01:13:07,600 --> 01:13:08,770 10 este, de asemenea, un int. 1502 01:13:08,770 --> 01:13:09,930 Nu e nici o zecimală. 1503 01:13:09,930 --> 01:13:15,770 >> Dacă aș împărți o int de un int, primesc o int care nu este de 0,1, deoarece int 1504 01:13:15,770 --> 01:13:18,630 nu poate avea zecimale, ci doar 0. 1505 01:13:18,630 --> 01:13:21,005 Pentru ca un int doar trunchiază de pe zecimale. 1506 01:13:21,005 --> 01:13:24,280 >> LUCAS FREITAS: Deci, ori de câte ori faci operațiuni cu int, ai de gând să 1507 01:13:24,280 --> 01:13:25,990 obține un int ca raspunsul. 1508 01:13:25,990 --> 01:13:28,930 Deci, practic, ceea ce computerul este de a face, e divide 1 de 1509 01:13:28,930 --> 01:13:31,520 10, și devine 0,1. 1510 01:13:31,520 --> 01:13:34,870 Dar apoi e ca, așteptați, aceasta este ar trebui să fie un număr întreg, așa că doar 1511 01:13:34,870 --> 01:13:37,045 ignora 0.1, deci acum este doar 0. 1512 01:13:37,045 --> 01:13:41,782 >> LAUREN CARVALHO: Deci, când am imprima aceasta afară, am 0.00, mai degrabă decât 0.10. 1513 01:13:41,782 --> 01:13:44,075 >> LUCAS FREITAS: Asta face sens? 1514 01:13:44,075 --> 01:13:45,530 >> LAUREN CARVALHO: Asta e un fel de nefericit, nu? 1515 01:13:45,530 --> 01:13:47,290 >> LUCAS FREITAS: Deci, cum putem rezolva această problemă? 1516 01:13:47,290 --> 01:13:48,620 >> LAUREN Carvalho: Să încerca și să stabilească faptul că. 1517 01:13:48,620 --> 01:13:51,570 1518 01:13:51,570 --> 01:13:54,810 Iată un exemplu de unde am de fapt, turnare 1 1519 01:13:54,810 --> 01:13:56,650 și 10 la pluteste. 1520 01:13:56,650 --> 01:13:58,800 Deci, acum, 1 nu mai este un int. 1521 01:13:58,800 --> 01:14:00,020 1 este un float. 1522 01:14:00,020 --> 01:14:02,590 Apropo, aceasta este doar sintaxa pentru atunci când doriți să arunce de la unul 1523 01:14:02,590 --> 01:14:03,410 tip de date la altul. 1524 01:14:03,410 --> 01:14:07,140 Puteți pune doar tipul de date în paranteze și au că doar preced 1525 01:14:07,140 --> 01:14:10,860 valoarea pe care o turnare. 1526 01:14:10,860 --> 01:14:15,800 >> Deci, aici, eu sunt împărțirea un flotor de un float pentru a obține un răspuns float. 1527 01:14:15,800 --> 01:14:19,535 Și da, aceasta ar fi, în fapt imprima 0.10. 1528 01:14:19,535 --> 01:14:20,470 Asta face sens? 1529 01:14:20,470 --> 01:14:24,110 >> LUCAS FREITAS: Deci tip de turnare este doar conversia de la un tip la altul. 1530 01:14:24,110 --> 01:14:29,460 Deci, float 1 este de fapt de 1.000. 1531 01:14:29,460 --> 01:14:33,400 Nu este exact acest lucru, dar e ceva cu zecimale 1532 01:14:33,400 --> 01:14:34,715 care este de fapt 1. 1533 01:14:34,715 --> 01:14:35,960 Asta face sens? 1534 01:14:35,960 --> 01:14:36,260 Da? 1535 01:14:36,260 --> 01:14:40,990 >> Audiența: Ce se întâmplă dacă ai făcut răspuns float este egal cu 1,0 împărțit la 10? 1536 01:14:40,990 --> 01:14:43,940 >> LAUREN CARVALHO: Tu esti de fapt merge pentru a vedea că în slide-ul urmator. 1537 01:14:43,940 --> 01:14:47,150 Asta este de fapt foarte de lângă tobogan nostru. 1538 01:14:47,150 --> 01:14:50,740 Aceasta este de fapt un mai frumos decât tip de turnare, cred. 1539 01:14:50,740 --> 01:14:53,470 Deci, aceste două sunt pluteste doar de natura de faptul că acestea 1540 01:14:53,470 --> 01:14:54,926 au zecimale. 1541 01:14:54,926 --> 01:14:55,300 Da? 1542 01:14:55,300 --> 01:14:57,670 >> Audiența: Ce se întâmplă dacă ai făcut [inaudibil] 1543 01:14:57,670 --> 01:14:59,480 împărțit la 10? 1544 01:14:59,480 --> 01:15:02,270 >> LAUREN CARVALHO: De fapt, un flotor împărțit la o int de fapt, vă oferă o 1545 01:15:02,270 --> 01:15:03,670 float, astfel că ar funcționa bine. 1546 01:15:03,670 --> 01:15:08,070 1547 01:15:08,070 --> 01:15:09,120 >> Așteaptă, nu toată lumea înțelege acest lucru? 1548 01:15:09,120 --> 01:15:12,720 Deoarece acest lucru va fi un adevărat mare în Pset1, de fapt. 1549 01:15:12,720 --> 01:15:13,130 Da? 1550 01:15:13,130 --> 01:15:14,762 >> Audiența: Poți să rapid du-te peste partea de roșu? 1551 01:15:14,762 --> 01:15:16,380 >> LAUREN CARVALHO: Partea roșu, da. 1552 01:15:16,380 --> 01:15:17,250 Lucas, vrei sa? 1553 01:15:17,250 --> 01:15:18,020 >> LUCAS FREITAS: OK. 1554 01:15:18,020 --> 01:15:20,570 Deci, amintiți-vă că procentul este un substituent. 1555 01:15:20,570 --> 01:15:22,150 E ca un spațiu gol. 1556 01:15:22,150 --> 01:15:26,240 Deci, haideți să încercăm să înțelegem totul ce se intampla aici. 1557 01:15:26,240 --> 01:15:28,170 Procente înseamnă că este un substituent. 1558 01:15:28,170 --> 01:15:33,640 Apoi, aveți f, ceea ce înseamnă că acest substituent este pentru un float. 1559 01:15:33,640 --> 01:15:38,870 Ultimul lucru pe care o avem aici este o .2, Ceea ce înseamnă că vreau să am două 1560 01:15:38,870 --> 01:15:42,410 zecimale pentru float. 1561 01:15:42,410 --> 01:15:48,510 >> Dacă am avut% f, ei vor pune o grămadă de zecimale. 1562 01:15:48,510 --> 01:15:54,170 Deci, eu pot pune doar 0.2 sau 0.1 sau 0.5, sau orice, și-l va pune ca 1563 01:15:54,170 --> 01:15:55,950 număr de zecimale. 1564 01:15:55,950 --> 01:15:59,950 Singurul lucru este că, dacă ai pus ca 0.100 sau .1,000, nu este de fapt 1565 01:15:59,950 --> 01:16:04,200 de gând să pună toate aceste zecimale deoarece nu are suficientă memorie 1566 01:16:04,200 --> 01:16:06,432 a avea ca precizie. 1567 01:16:06,432 --> 01:16:07,955 >> Orice alte întrebări? 1568 01:16:07,955 --> 01:16:08,450 Da? 1569 01:16:08,450 --> 01:16:12,970 >> Audiența: Deci, float doar permite să te duci dincolo de numere întregi? 1570 01:16:12,970 --> 01:16:13,720 >> LUCAS FREITAS: Da. 1571 01:16:13,720 --> 01:16:17,345 >> LAUREN CARVALHO: Ei bine, un float doar vă permite să aibă zecimale. 1572 01:16:17,345 --> 01:16:20,460 >> LUCAS FREITAS: doar Aceasta înseamnă că acum pot avea numere zecimale. 1573 01:16:20,460 --> 01:16:25,728 >> Audiența: De ce ne-ar utiliza vreodată numere întregi? 1574 01:16:25,728 --> 01:16:27,870 >> LUCAS FREITAS: De ce ar fi utilizați numere întregi? 1575 01:16:27,870 --> 01:16:31,810 Poate că, dacă sunteți de numărare 0-10, doriți să utilizați de fapt un întreg. 1576 01:16:31,810 --> 01:16:33,370 Nu aveți nevoie pentru a utiliza un float. 1577 01:16:33,370 --> 01:16:35,430 În unele situații, tu nu faci Trebuie să de fapt - 1578 01:16:35,430 --> 01:16:37,040 >> LAUREN CARVALHO: Poate te Nu vreau zecimale. 1579 01:16:37,040 --> 01:16:38,600 >> LUCAS FREITAS: Poate că nu doriți să utilizați un float. 1580 01:16:38,600 --> 01:16:42,660 >> LAUREN CARVALHO: Un alt lucru este, amintiți-vă, atât pune un flotor și un int 1581 01:16:42,660 --> 01:16:46,170 ia 32 de biți pentru a le stoca, și poate nu doriți să pierdeți biți pe 1582 01:16:46,170 --> 01:16:48,062 zecimale. 1583 01:16:48,062 --> 01:16:49,750 >> LUCAS FREITAS: Da. 1584 01:16:49,750 --> 01:16:51,910 Așa cum ar fi, cred că doar despre asta. 1585 01:16:51,910 --> 01:16:55,200 Ai 32 de biți atât pentru un int și un float. 1586 01:16:55,200 --> 01:16:59,400 Pentru un int, toate cele 32 de biți du-te la partea întreagă. 1587 01:16:59,400 --> 01:17:03,460 Dacă utilizați un flotor cu 32 de biți, ce au o parte din această memorie utilizat 1588 01:17:03,460 --> 01:17:06,820 pentru numărul, de numărul întreg, iar cealaltă parte fiind utilizată pentru 1589 01:17:06,820 --> 01:17:08,300 zecimale. 1590 01:17:08,300 --> 01:17:12,370 Astfel că înseamnă că nu se poate ajunge la un număr foarte mare, cu flotoare, deoarece 1591 01:17:12,370 --> 01:17:16,020 float deja folosind o mulțime de memorie pentru zecimale. 1592 01:17:16,020 --> 01:17:17,014 Da? 1593 01:17:17,014 --> 01:17:21,487 >> Audienta: Asta în primul rând răspuns, exact ceea ce o face? 1594 01:17:21,487 --> 01:17:25,214 Este setarea valorii float egal pentru ca substituent pentru că puteți 1595 01:17:25,214 --> 01:17:26,954 rechema în linia următoare? 1596 01:17:26,954 --> 01:17:28,942 Se spune float răspuns. 1597 01:17:28,942 --> 01:17:29,770 >> LUCAS FREITAS: Da. 1598 01:17:29,770 --> 01:17:37,200 Deci, răspunsul float inseamna ca vei primi acum un pic găleată în memoria pe care 1599 01:17:37,200 --> 01:17:40,050 deține un float, și că va să fie numit răspuns. 1600 01:17:40,050 --> 01:17:42,040 Deci, asta e ceea ce face răspuns float. 1601 01:17:42,040 --> 01:17:44,720 >> Și apoi spui că în interiorul acest lucru, ai de gând să pună 1602 01:17:44,720 --> 01:17:46,470 Rezultatul acestei. 1603 01:17:46,470 --> 01:17:52,610 Deci, ai de gând să faci 1,0 împărțit de către 10,0, te 0,1, și apoi ai pus 1604 01:17:52,610 --> 01:17:53,490 că în interiorul de răspuns. 1605 01:17:53,490 --> 01:17:57,540 >> LAUREN CARVALHO: Deci, într-o singură linie, suntem declararea și inițializarea acest float 1606 01:17:57,540 --> 01:18:00,070 numit răspuns. 1607 01:18:00,070 --> 01:18:04,470 >> LUCAS FREITAS: Interesant, deși aceasta este doar o linie, se face 1608 01:18:04,470 --> 01:18:05,570 mai multe operațiuni. 1609 01:18:05,570 --> 01:18:08,800 Este doar o modalitate de C închiriere utilizați mai puțin cod. 1610 01:18:08,800 --> 01:18:12,310 Este același lucru ca și ternare operatorului, cum puteți face doar o 1611 01:18:12,310 --> 01:18:13,810 [Inaudibil] într-o singură linie. 1612 01:18:13,810 --> 01:18:18,860 Se face de fapt același lucru ca acest răspuns float, punct și virgulă, și 1613 01:18:18,860 --> 01:18:23,060 atunci răspunsul este egal cu aceasta, dar în loc de facandu-te sa faci două linii pentru că, 1614 01:18:23,060 --> 01:18:24,160 e ca o scurtătură. 1615 01:18:24,160 --> 01:18:24,520 Da? 1616 01:18:24,520 --> 01:18:27,929 >> Audiența: Deci, dacă ai fugit acest lucru, ar fi 0,10? 1617 01:18:27,929 --> 01:18:30,120 >> LUCAS FREITAS: Da. 1618 01:18:30,120 --> 01:18:30,530 Da? 1619 01:18:30,530 --> 01:18:34,540 >> Audiența: Este răspunde de fapt cod, sau este doar numele? 1620 01:18:34,540 --> 01:18:36,010 >> LAUREN CARVALHO: Acest este, de fapt cod. 1621 01:18:36,010 --> 01:18:37,750 Aceasta este ceea ce vom pentru a numi variabila nostru. 1622 01:18:37,750 --> 01:18:39,770 >> Audiența: Deci, e doar un nume [neauzit]. 1623 01:18:39,770 --> 01:18:40,270 >> LAUREN CARVALHO: Da. 1624 01:18:40,270 --> 01:18:44,670 Am fi putut spune float x este egal cu 1,0. 1625 01:18:44,670 --> 01:18:47,160 >> LUCAS FREITAS: Chestia e că numele variabilei este 1626 01:18:47,160 --> 01:18:48,400 ceva pe care le utilizați. 1627 01:18:48,400 --> 01:18:49,690 Este important pentru tine. 1628 01:18:49,690 --> 01:18:52,660 Pentru programul actual, singurul lucru ce contează este valoarea pe care 1629 01:18:52,660 --> 01:18:55,570 au în interiorul cupei. 1630 01:18:55,570 --> 01:18:59,270 Motivul pentru care au variabile și nume de variabile este, astfel încât să-ar ști 1631 01:18:59,270 --> 01:19:01,910 ceea ce ai de a face cu, cum ar fi ce fel de date sunt 1632 01:19:01,910 --> 01:19:03,040 accesarea la un moment dat. 1633 01:19:03,040 --> 01:19:07,580 Dar pentru codul de sine, dacă te sun răspunde sau întrebare sau ceva, 1634 01:19:07,580 --> 01:19:09,530 destul de mult, nu contează. 1635 01:19:09,530 --> 01:19:10,060 Nu contează. 1636 01:19:10,060 --> 01:19:12,910 Atâta timp cât ești consecvent în fiecare apariție ea și, astfel încât să-l numesc 1637 01:19:12,910 --> 01:19:13,620 altceva. 1638 01:19:13,620 --> 01:19:14,880 Da? 1639 01:19:14,880 --> 01:19:17,208 >> Audiența: Nu variabilele merge dincolo de funcția? 1640 01:19:17,208 --> 01:19:20,902 Cum ar fi dacă ați fost de a crea un suport [Inaudibil], ai putea pur și simplu 1641 01:19:20,902 --> 01:19:21,806 [Inaudibil] răspunde din nou? 1642 01:19:21,806 --> 01:19:22,550 >> LAUREN CARVALHO: Nu. 1643 01:19:22,550 --> 01:19:23,300 >> Audiența: [inaudibil] 1644 01:19:23,300 --> 01:19:24,200 >> LAUREN CARVALHO: Nu. 1645 01:19:24,200 --> 01:19:26,930 Care ar fi în afara domeniului de aplicare de această variabilă special. 1646 01:19:26,930 --> 01:19:29,940 Și, de fapt, asta e un fel de interesant, pentru că atunci când ne-am 1647 01:19:29,940 --> 01:19:33,010 lucruri cum ar fi bucle sau în cazul în care acestea condiții, dacă ai declara o variabilă 1648 01:19:33,010 --> 01:19:36,330 într-un alt set de acolade, ea există într-adevăr doar 1649 01:19:36,330 --> 01:19:39,800 în cadrul acestor acolade. 1650 01:19:39,800 --> 01:19:43,088 >> Audiența: O ultimă notă despre la [inaudibil] plutelor. 1651 01:19:43,088 --> 01:19:46,076 De ce ai vrea vreodată să utilizați int? 1652 01:19:46,076 --> 01:19:49,562 Acest lucru este mai mult de o notă separată decât nimic, dar computerul este 1653 01:19:49,562 --> 01:19:53,048 in mod semnificativ mai bine la manipularea int decât la flotoare manipulare. 1654 01:19:53,048 --> 01:19:55,040 E ca un ordin de magnitudine mai repede. 1655 01:19:55,040 --> 01:20:00,360 Deci, dacă ne-am manipulat pluteste doar, lucrurile ar fi mult mai lent. 1656 01:20:00,360 --> 01:20:03,080 >> LAUREN CARVALHO: De fapt, se pare că există să fie o problemă cu flotoare. 1657 01:20:03,080 --> 01:20:06,400 >> LUCAS FREITAS: Un fel de motiv pentru că, vă puteți gândi, este modul în care în binar 1658 01:20:06,400 --> 01:20:08,480 puteți reprezenta numere întregi prin punerea 0 și 1 a lui. 1659 01:20:08,480 --> 01:20:09,980 >> LAUREN CARVALHO: Asta-i urmatorul lucru. 1660 01:20:09,980 --> 01:20:10,480 >> LUCAS FREITAS: OK. 1661 01:20:10,480 --> 01:20:10,740 Minunat. 1662 01:20:10,740 --> 01:20:11,480 >> LAUREN CARVALHO: Just dețin acel gând. 1663 01:20:11,480 --> 01:20:13,800 >> LUCAS FREITAS: OK, eu voi să vă spun mai târziu. 1664 01:20:13,800 --> 01:20:16,920 >> LAUREN CARVALHO: Înainte de a ajunge la ceea ce Lucas a fost să spun, operatorul 1665 01:20:16,920 --> 01:20:17,420 prioritate. 1666 01:20:17,420 --> 01:20:18,220 Acest lucru este de bun simț. 1667 01:20:18,220 --> 01:20:20,830 Voi ați făcut acest lucru suficient. 1668 01:20:20,830 --> 01:20:24,705 Deci, chiar dacă ceva e în paranteze, se va întâmpla mai întâi. 1669 01:20:24,705 --> 01:20:27,970 Este multiplicare are prioritate peste plus, 1670 01:20:27,970 --> 01:20:30,330 scădere, lucruri de genul asta. 1671 01:20:30,330 --> 01:20:34,700 Deci, de fapt, doar nimeni nu vrea să spune-mi ce numărul unu de fapt, 1672 01:20:34,700 --> 01:20:36,674 evaluează la? 1673 01:20:36,674 --> 01:20:37,638 >> Audiența: 27. 1674 01:20:37,638 --> 01:20:39,090 >> LAUREN CARVALHO: 27? 1675 01:20:39,090 --> 01:20:39,550 Da. 1676 01:20:39,550 --> 01:20:41,975 >> LUCAS FREITAS: Permiteți-mi să dau bomboane de persoane. 1677 01:20:41,975 --> 01:20:42,850 >> LAUREN CARVALHO: În regulă. 1678 01:20:42,850 --> 01:20:44,100 Ce despre numărul doi? 1679 01:20:44,100 --> 01:20:46,880 1680 01:20:46,880 --> 01:20:48,340 Ce despre numărul doi? 1681 01:20:48,340 --> 01:20:49,280 >> Audiența: 22. 1682 01:20:49,280 --> 01:20:50,680 >> LAUREN CARVALHO: 22, da. 1683 01:20:50,680 --> 01:20:51,570 Nu știu care a ajuns asta. 1684 01:20:51,570 --> 01:20:52,694 Numărul trei? 1685 01:20:52,694 --> 01:20:54,050 >> Audiența: 10. 1686 01:20:54,050 --> 01:20:55,300 >> LAUREN CARVALHO: 10, da. 1687 01:20:55,300 --> 01:20:58,150 1688 01:20:58,150 --> 01:20:58,490 Rece. 1689 01:20:58,490 --> 01:21:01,280 Așa modulo. 1690 01:21:01,280 --> 01:21:03,700 Lucas, vrei să explici modulo? 1691 01:21:03,700 --> 01:21:07,150 >> LUCAS FREITAS: Modulo este acest operator care este de fapt foarte util pentru o 1692 01:21:07,150 --> 01:21:09,470 grămadă de probleme. 1693 01:21:09,470 --> 01:21:15,270 Dacă fac 55 modulo 10, ceea ce face aceasta să spunem că vreau să 1694 01:21:15,270 --> 01:21:16,970 împărți 55 de 10. 1695 01:21:16,970 --> 01:21:18,240 Ce primesc? 1696 01:21:18,240 --> 01:21:21,380 Se simte la fel ca în cazul în care eu sunt de fapt doar face divizia, ceea ce este 1697 01:21:21,380 --> 01:21:22,450 prima dată că am primit întreg? 1698 01:21:22,450 --> 01:21:23,190 >> Audiența: 5. 1699 01:21:23,190 --> 01:21:24,080 >> LUCAS FREITAS: 5. 1700 01:21:24,080 --> 01:21:26,230 Și apoi restul este de 5, corect? 1701 01:21:26,230 --> 01:21:29,250 Deci, e ca si cum de 5 ori 10, plus 5. 1702 01:21:29,250 --> 01:21:35,570 Practic, ceea ce modulo nu, încearcă să împărți acest număr de acesta, și 1703 01:21:35,570 --> 01:21:37,440 se vede ceea ce este restul al diviziei. 1704 01:21:37,440 --> 01:21:40,080 >> LAUREN CARVALHO: Deci, doar returnează restul. 1705 01:21:40,080 --> 01:21:41,920 Astfel numarul unu este ceea ce? 1706 01:21:41,920 --> 01:21:42,560 5. 1707 01:21:42,560 --> 01:21:43,336 Numărul doi? 1708 01:21:43,336 --> 01:21:44,150 >> Audiența: 3. 1709 01:21:44,150 --> 01:21:44,934 >> LAUREN CARVALHO: 3. 1710 01:21:44,934 --> 01:21:46,240 Numărul trei? 1711 01:21:46,240 --> 01:21:47,190 0. 1712 01:21:47,190 --> 01:21:48,410 Și patru este 1. 1713 01:21:48,410 --> 01:21:48,665 Exact. 1714 01:21:48,665 --> 01:21:49,915 >> LUCAS FREITAS: Simplu, nu? 1715 01:21:49,915 --> 01:21:54,270 1716 01:21:54,270 --> 01:21:56,560 >> LAUREN CARVALHO: De ce nu săriți peste acest pur și simplu pentru că nu avem cu adevărat 1717 01:21:56,560 --> 01:21:59,780 timp, și oamenii par să înțeleagă. 1718 01:21:59,780 --> 01:22:03,330 Deci, aici e ceea ce a fost Lucas doar vorbind despre. 1719 01:22:03,330 --> 01:22:08,030 >> LUCAS FREITAS: Un alt motiv pentru care am ar folosi int loc de flotoare este 1720 01:22:08,030 --> 01:22:10,840 că flotoare sunt foarte imprecise. 1721 01:22:10,840 --> 01:22:12,720 Și de ce sunt ele imprecisă? 1722 01:22:12,720 --> 01:22:17,140 David a spus că pentru a reprezenta un număr întreg, de exemplu, vom folosi 0 și 1723 01:22:17,140 --> 01:22:17,810 1, nu? 1724 01:22:17,810 --> 01:22:22,370 Și apoi face practic multiplicare, nu toți cei 1725 01:22:22,370 --> 01:22:30,000 operațiuni să știu ce număr zecimal aveți loc de binar. 1726 01:22:30,000 --> 01:22:33,040 >> Ce se întâmplă acum dacă am încerca pentru a pune puncte zecimale? 1727 01:22:33,040 --> 01:22:37,680 De fapt, de exemplu, dacă am numărul ca 3.33333? 1728 01:22:37,680 --> 01:22:40,250 Se simte ca peste 10 3. 1729 01:22:40,250 --> 01:22:44,950 Cum am de gând pentru a stoca toate 3 e că am după aceea? 1730 01:22:44,950 --> 01:22:47,120 E foarte greu, nu? 1731 01:22:47,120 --> 01:22:49,580 Nu pot să vă spun doar calculatorul, hei, am un 3, și 1732 01:22:49,580 --> 01:22:50,520 atunci faci asta pentru totdeauna. 1733 01:22:50,520 --> 01:22:52,810 De fapt, computerul nu este destul de inteligent pentru asta. 1734 01:22:52,810 --> 01:22:58,300 >> Deci, practic toate computerul nu este care încearcă să pună cât mai multe cifre ca 1735 01:22:58,300 --> 01:23:00,950 se poate până în memoria pe care le au. 1736 01:23:00,950 --> 01:23:05,890 Deci, haideți să spunem că o să spune 3.3333, și asta e tot. 1737 01:23:05,890 --> 01:23:10,690 Deci, nu este în măsură să-și exprime de fapt, exact ceea ce este că float. 1738 01:23:10,690 --> 01:23:13,240 >> LAUREN CARVALHO: Avem un număr finit de biți, ceea ce înseamnă că nu 1739 01:23:13,240 --> 01:23:17,910 fiecare număr zecimal va fi capabil să fie reprezentat cu precizie. 1740 01:23:17,910 --> 01:23:24,910 Și astfel, în acest exemplu, dacă suntem imprimarea 0,1, suntem acum de imprimare 1741 01:23:24,910 --> 01:23:26,475 din 20 de locuri. 1742 01:23:26,475 --> 01:23:30,250 >> LUCAS FREITAS: Așa cum am spus voi, ai putea pune orice număr. 1743 01:23:30,250 --> 01:23:36,520 Dar dacă ai făcut cele două locuri, vei primi 0.10, dar dacă ai pus 20 1744 01:23:36,520 --> 01:23:43,630 locuri, o să-ți arăt un buchet 's, deoarece aceasta este ceea ce se poate pune 1745 01:23:43,630 --> 01:23:45,720 în memorie, nu? 1746 01:23:45,720 --> 01:23:48,800 >> Dar chiar aici, până la 0, și apoi este doar o pune 1747 01:23:48,800 --> 01:23:50,030 grămadă de numere aleatoare. 1748 01:23:50,030 --> 01:23:52,590 Aceasta este un fel de ceva - 1749 01:23:52,590 --> 01:23:56,190 >> LAUREN CARVALHO: Acest lucru se datorează faptului că noi suntem nu pot să reprezinte acest zecimal 1750 01:23:56,190 --> 01:23:58,320 exact cu numărul de biți avem. 1751 01:23:58,320 --> 01:23:59,730 >> LUCAS FREITAS: Și apoi calculator este de fapt 1752 01:23:59,730 --> 01:24:01,470 oferindu-vă un număr de gunoi. 1753 01:24:01,470 --> 01:24:04,530 Acest lucru nu este de fapt valoarea numărului. 1754 01:24:04,530 --> 01:24:08,242 >> Audiența: Este la fel de aproape ca se poate obține [inaudibil] 1755 01:24:08,242 --> 01:24:09,613 folosind [neauzit]. 1756 01:24:09,613 --> 01:24:12,685 1757 01:24:12,685 --> 01:24:18,830 >> LAUREN CARVALHO: Deci, implicarea aceasta este ca să spunem că, în loc de 1758 01:24:18,830 --> 01:24:27,680 fiind 0.100014, orice, ceea ce în cazul în care a fost 0.0999 - 1759 01:24:27,680 --> 01:24:30,470 bine, OK. 1760 01:24:30,470 --> 01:24:38,280 Să presupunem că răspunsul real pentru acest lucru a fost 0.9999999. 1761 01:24:38,280 --> 01:24:40,740 Care este foarte aproape de 1, dar nu este chiar 1. 1762 01:24:40,740 --> 01:24:42,840 E 0.99999. 1763 01:24:42,840 --> 01:24:48,140 >> Asta înseamnă că, dacă eu iau asta 0,999, și l-am aruncat la un int, mă 0. 1764 01:24:48,140 --> 01:24:49,460 Eu nu primesc 1. 1765 01:24:49,460 --> 01:24:53,050 >> LUCAS FREITAS: Pentru că amintiți-vă, turnare de la float la int, tu doar 1766 01:24:53,050 --> 01:24:54,880 ignora toate zecimale. 1767 01:24:54,880 --> 01:24:56,400 Trebuie doar să le ignore. 1768 01:24:56,400 --> 01:25:00,170 Nu există nici un astfel de lucru ca rotunjirea sau care rulează în jos atunci când typecast. 1769 01:25:00,170 --> 01:25:03,310 De fapt, nu există această funcție ca face rotunjire, care este foarte 1770 01:25:03,310 --> 01:25:08,840 importante, dar tu chiar crezi că, atunci când faci typecasting, e doar 1771 01:25:08,840 --> 01:25:09,720 va șterge totul. 1772 01:25:09,720 --> 01:25:13,970 Deci, chiar dacă aveți 0.99999, va pentru a da doar 0, dacă typecast 1773 01:25:13,970 --> 01:25:14,800 [Inaudibil] un întreg. 1774 01:25:14,800 --> 01:25:17,480 >> LAUREN CARVALHO: Deci, doar să fie foarte conștienți punct de plutind în precizie, 1775 01:25:17,480 --> 01:25:20,410 mai ales atunci când veți începe pentru a utiliza flotoare in Pset1. 1776 01:25:20,410 --> 01:25:22,790 Dar de mers pe jos prin intermediul ar trebui să te avertizez de la fel de bine. 1777 01:25:22,790 --> 01:25:26,100 >> LUCAS FREITAS: Și de fapt, este într-adevăr greu, de exemplu, dacă am făcut 1778 01:25:26,100 --> 01:25:31,570 răspuns float 1 este egal cu 1.0 pe 10, și apoi pluti răspuns 2 1779 01:25:31,570 --> 01:25:35,540 este egal cu 10,0 peste 100,0. 1780 01:25:35,540 --> 01:25:36,890 Ei sunt același număr, corect? 1781 01:25:36,890 --> 01:25:38,540 0.1, corect? 1782 01:25:38,540 --> 01:25:41,700 1 peste 10 sau 10 de peste 100. 1783 01:25:41,700 --> 01:25:46,360 Dar acum, dacă am încerca să vedem egalitatea, cum ar fi în cazul în care răspunsul 1 este egal pentru a răspunde 2, 1784 01:25:46,360 --> 01:25:49,300 poate nu e de fapt va pentru a fi același lucru. 1785 01:25:49,300 --> 01:25:50,720 Deci, flotoare sunt un fel de genul asta. 1786 01:25:50,720 --> 01:25:51,970 Sunt ca fac egalitate. 1787 01:25:51,970 --> 01:25:55,136