1 00:00:00,000 --> 00:00:09,250 2 00:00:09,250 --> 00:00:11,070 >> ZAMYLA Chan: jump Le në Mario. 3 00:00:11,070 --> 00:00:14,850 Mario është një program ku ne do të bëjmë tonë vet, ndonëse primitive, versioni i 4 00:00:14,850 --> 00:00:17,760 një klasik Super Mario Brothers background lojë. 5 00:00:17,760 --> 00:00:21,100 Për këtë grup të problemit, ne jemi duke shkuar për të rikrijuar gjysmë-për piramidën 6 00:00:21,100 --> 00:00:23,000 Mario të hidhen në. 7 00:00:23,000 --> 00:00:27,330 Programi ynë do të jenë interaktive, kështu që do të kërkojë përdorues të input një farë 8 00:00:27,330 --> 00:00:28,660 lartësia për piramidën. 9 00:00:28,660 --> 00:00:32,920 Dhe program do të shtypura nga një gjysmë-piramida e kësaj lartësi, ku 10 00:00:32,920 --> 00:00:37,390 hash fund majtas aligns me pjesën e poshtme këndin e majtë të terminalit 11 00:00:37,390 --> 00:00:39,710 dritare output. 12 00:00:39,710 --> 00:00:44,870 >> Le të thyejnë këtë problem në dy pjesë, një, të marrë të dhëna përdoruesi, dhe dy, 13 00:00:44,870 --> 00:00:47,040 shtypura nga piramidën. 14 00:00:47,040 --> 00:00:51,150 Mos harroni se edhe pse funksioni GetInt do të rifitoj një numër të plotë, ju 15 00:00:51,150 --> 00:00:56,260 duhet të sigurohemi që ky input bën Ndjenja për programin tuaj, kështu që në 16 00:00:56,260 --> 00:00:59,690 Mario, ajo nuk do të bëjë vetëm një Produkti për një numër të plotë. 17 00:00:59,690 --> 00:01:03,440 Ju do të duhet të sigurohemi që përdoruesi inputet që është një numër i plotë brenda 18 00:01:03,440 --> 00:01:06,985 kufij më të ulët dhe e sipërme të Piramida që ju mund të shtypura. 19 00:01:06,985 --> 00:01:12,300 Per këtë spekulim, kjo është 0 dhe 23 përfshirëse. 20 00:01:12,300 --> 00:01:16,410 Nëse një përdorues inputet Integer jashtë caqeve të pranuara tona, atëherë ne duam 21 00:01:16,410 --> 00:01:20,840 për të nxitur ato përsëri dhe përsëri derisa ata na japin një numër i plotë vlefshme. 22 00:01:20,840 --> 00:01:25,990 >> Një mënyrë për të siguruar të dhëna përdoruesi është korrekt duke përdorur nje lak bëjmë-ndërkohë, i cili eshte 23 00:01:25,990 --> 00:01:28,100 shumë e ngjashme me një lak kohë. 24 00:01:28,100 --> 00:01:32,580 A-Ndërsa loop ekzekuton kodin brenda trupit një herë, dhe pastaj kontrollon 25 00:01:32,580 --> 00:01:35,270 nëse kushti është plotësuar apo jo. 26 00:01:35,270 --> 00:01:38,830 Kjo është e dobishme për marrjen e input përdorues sepse ju e dini që ju duhet 27 00:01:38,830 --> 00:01:41,805 për t'i nxitur ato të paktën një herë. 28 00:01:41,805 --> 00:01:45,940 Nëse kusht nuk është plotësuar, programi do të ekzekutojë vijën pas 29 00:01:45,940 --> 00:01:47,270 loop DO-Ndërsa tuaj. 30 00:01:47,270 --> 00:01:50,950 Nëse kushti është plotësuar, edhe pse, loop do të përsëriten. 31 00:01:50,950 --> 00:01:55,560 >> Një DO-Ndërsa loop për Vleresimin përdorues input do të duket diçka si kjo. 32 00:01:55,560 --> 00:02:02,920 Unë deklaroj një ndryshore n, GetInt, dhe të përsëritur deri n është i vlefshëm. 33 00:02:02,920 --> 00:02:06,270 Mos harroni se kur ju të deklarojë tuaj ndryshueshme, ajo ka nevojë të përshtatshme 34 00:02:06,270 --> 00:02:08,449 Shtrirja, ashtu si në Scratch. 35 00:02:08,449 --> 00:02:12,510 Nëse unë deklaroj n brenda DO-Ndërsa lak tim, Pjesa tjetër e programit nuk do të jetë 36 00:02:12,510 --> 00:02:13,750 në gjendje për të hyrë në të. 37 00:02:13,750 --> 00:02:16,100 Ajo kufizohet në kufij i braces kaçurrel. 38 00:02:16,100 --> 00:02:19,010 39 00:02:19,010 --> 00:02:23,090 >> Të gjithë të drejtë, kështu që tani që ne kemi vërtetuar input të përdoruesit, ne në të vërtetë nevojë për të 40 00:02:23,090 --> 00:02:25,020 tërheqë këtë gjysmë piramide. 41 00:02:25,020 --> 00:02:29,700 Ajo është e përbërë nga karaktere të shtypura, kështu që le të bëjmë një gjysmë-piramidë në një të thjeshtë 42 00:02:29,700 --> 00:02:31,480 editor teksti. 43 00:02:31,480 --> 00:02:35,920 Nëse ne duam të bëjmë një piramidë stil Mario e lartësisë që është rreshtuar tre 44 00:02:35,920 --> 00:02:41,370 në anën e majtë të dritares tonë, atëherë ne do të shkruani dy hashes, klikoni Enter, 45 00:02:41,370 --> 00:02:47,180 pastaj shtypni tre hashes, klikoni Enter, dhe pastaj shtypni katër. 46 00:02:47,180 --> 00:02:51,090 >> Por në këtë grup problemit, tona gjysëm-piramidë duhet të jetë një linjë të drejtë. 47 00:02:51,090 --> 00:02:55,550 Duke përdorur një tastierë standarde, si mund të ju modifikoj këtë skedë për të lëvizur hashes 48 00:02:55,550 --> 00:02:57,210 mbi në anën e djathtë? 49 00:02:57,210 --> 00:03:03,190 Unë mund të përdorin për nënvizon, dy në Reshti në krye dhe një në sekondë. 50 00:03:03,190 --> 00:03:07,690 Kjo nuk duket aq e bukur, edhe pse, kështu që le të zëvendësojë nënvizon me 51 00:03:07,690 --> 00:03:12,450 hapësira, dhe aty ne kemi një piramidë gjysmë- e lartësisë tre. 52 00:03:12,450 --> 00:03:16,330 >> Provo dhe të mbani mend këtë editor teksti shembull si ju filloni të menduarit prapa në 53 00:03:16,330 --> 00:03:20,100 C. Le të përpiqen dhe të kuptoj se disa lloj model që ne mund të 54 00:03:20,100 --> 00:03:22,750 vënë në një konstrukt loop. 55 00:03:22,750 --> 00:03:27,570 Merrni një lartësi shembull, thonë se tetë, dhe shihni nëse ju mund të filloni për të 56 00:03:27,570 --> 00:03:29,470 të dalë me një model. 57 00:03:29,470 --> 00:03:34,710 Rreshtin e parë do të ketë shtatë hapësira pasuar nga dy hashes. 58 00:03:34,710 --> 00:03:40,090 Radhën e dytë do të ketë gjashtë hapësira dhe tre hashes, dhe kështu me radhë deri 59 00:03:40,090 --> 00:03:41,440 teti rresht. 60 00:03:41,440 --> 00:03:45,210 >> Por si mendoni ju do të përfaqësojë rresht n? 61 00:03:45,210 --> 00:03:48,170 Mos harroni se konventë programimit është indeksuar zero. 62 00:03:48,170 --> 00:03:51,870 Kjo do të thotë që ju të filloni numërimit në zero, kështu radhën e parë është teknikisht 63 00:03:51,870 --> 00:03:57,110 Numri i rreshtit zero me dy çel, rreshti numër një ka tre hashes, rreshti 64 00:03:57,110 --> 00:04:01,860 numri dy ka katër hashes, kështu që pas ky model për çdo rresht 65 00:04:01,860 --> 00:04:05,800 Numri n, ka n plus 2 hashes. 66 00:04:05,800 --> 00:04:09,270 Unë do të lënë atë për ju, edhe pse, për të gjetur jashtë model për hapësira. 67 00:04:09,270 --> 00:04:12,240 Mos harroni se modeli juaj do të jetë paksa e ndryshme në qoftë se ju zgjidhni për të 68 00:04:12,240 --> 00:04:16,649 fillojnë numërimin tuaj nga një dhe jo zero. 69 00:04:16,649 --> 00:04:19,560 >> Tani, ju keni një model për çdo n abstrakte rresht. 70 00:04:19,560 --> 00:04:25,190 Ti e di se sa shumë hapësira për të shtypur dhe sa hashes, kështu që për çdo rresht, që 71 00:04:25,190 --> 00:04:26,270 Numri do të ndryshojë. 72 00:04:26,270 --> 00:04:30,700 Por i njëjti proces i shtypjes a karakter të vetëm, ose një hapësirë ​​ose një 73 00:04:30,700 --> 00:04:33,200 hash, është i përsëritur. 74 00:04:33,200 --> 00:04:37,470 Pra, të gjithë ju duhet të bëni është të përsëritur printoni atë për karakterin herë si shumë 75 00:04:37,470 --> 00:04:40,120 si model juaj përcakton. 76 00:04:40,120 --> 00:04:42,522 >> Deri sa nuk kemi përsëris procese? 77 00:04:42,522 --> 00:04:45,160 Në Scratch, kemi përdorur bllok përsëritur. 78 00:04:45,160 --> 00:04:48,580 Në C, ne do të përdorim një lak Për. 79 00:04:48,580 --> 00:04:51,290 Le të shikojmë në sintaksë Për për sythe. 80 00:04:51,290 --> 00:04:57,140 >> Çdo Për lak është i përbërë nga tre pjesë, një inicializimit, një kusht, 81 00:04:57,140 --> 00:04:58,592 dhe një update. 82 00:04:58,592 --> 00:05:01,550 Për loop juaj do nisja një ndryshore kur ajo të parë 83 00:05:01,550 --> 00:05:02,960 hyn Për lak. 84 00:05:02,960 --> 00:05:07,100 Nëse kushti është plotësuar, trupi e lak do të ekzekutojë. 85 00:05:07,100 --> 00:05:10,070 Më pas, përditësimi do të ekzekutojë. 86 00:05:10,070 --> 00:05:13,630 >> Nëse kushti është plotësuar ende, loop do të ekzekutojë dhe përditësimin dhe 87 00:05:13,630 --> 00:05:18,580 përsërisin aq kohë sa gjendjen tuaj evaluohet në true. 88 00:05:18,580 --> 00:05:21,450 Ju jeni kusht duhet përfundimisht valuate të rreme, edhe pse, sepse 89 00:05:21,450 --> 00:05:24,490 ndryshe nga zeroja, ne nuk bëjmë keni ndonjë sythe përgjithmonë. 90 00:05:24,490 --> 00:05:28,270 Programi juaj duhet të marrë fund përfundimisht. 91 00:05:28,270 --> 00:05:32,330 >> Ja një shembull i një lak Për atë ju mund të dëshironi të përdorni për Mario. 92 00:05:32,330 --> 00:05:36,790 Initialization deklaron Unë një numër të plotë me vlerë 0. 93 00:05:36,790 --> 00:05:40,750 Sa kohë që unë është më pak se lartësia, Trupi i lak dhe do të ekzekutojë 94 00:05:40,750 --> 00:05:44,980 nga një i rritur dhe të përsëritur derisa unë është më e madhe se, ose të 95 00:05:44,980 --> 00:05:47,220 barabartë me lartësinë. 96 00:05:47,220 --> 00:05:49,140 >> Tani, loop Sepse im është zero indeksi. 97 00:05:49,140 --> 00:05:52,270 Int Unë fillon në zero, as edhe një. 98 00:05:52,270 --> 00:05:55,320 Nëse unë zgjodha një, atëherë gjendja ime do gjithashtu duhet të jenë të ndryshme për 99 00:05:55,320 --> 00:05:58,740 lak për të ekzekutuar numër të njëjtë të kohës. 100 00:05:58,740 --> 00:06:03,490 Mos harroni këtë me kujdes kur ju jeni inicializimit zgjedhjen tuaj dhe tuaj 101 00:06:03,490 --> 00:06:08,660 kusht, dhe të konsultohet ky skicojë të kontrolloni të dyfishtë. 102 00:06:08,660 --> 00:06:13,430 >> Një nga gjërat e mëdha për kompjuter shkenca është se nuk është vetëm kaq shumë 103 00:06:13,430 --> 00:06:15,490 mënyra për të ekzekutuar gjëra. 104 00:06:15,490 --> 00:06:19,450 Ju mund të zgjidhni nëse ju të fillojë në zero ose një. 105 00:06:19,450 --> 00:06:22,380 Nëse ju nuk dëshironi të përdorni një lak Për, ju gjithashtu mund të përdorni një lak, ndërsa për 106 00:06:22,380 --> 00:06:26,530 përsëritur deklaratat për aq kohë sa ju mbani thelbin e një lak Për, 107 00:06:26,530 --> 00:06:31,430 , initialization kusht, dhe update. 108 00:06:31,430 --> 00:06:36,890 Pasi ne e gjej lak për atë ne jemi më të rehatshme me të, atëherë ne 109 00:06:36,890 --> 00:06:38,450 mund të përfundojë Mario. 110 00:06:38,450 --> 00:06:41,540 >> Ne së pari kontrollohet për user input identifikuar dhe pastaj një 111 00:06:41,540 --> 00:06:43,580 model për çdo n rresht. 112 00:06:43,580 --> 00:06:49,990 Kështu për secilin rresht nga zero deri n minus 1 do të shtypura numrin e duhur të 113 00:06:49,990 --> 00:06:55,340 hapësira, atëherë numri i duhur i hashes sipas modelit tonë, dhe 114 00:06:55,340 --> 00:06:57,180 pastaj një linjë e re. 115 00:06:57,180 --> 00:06:59,640 Me këtë, ju keni piramidën tuaj. 116 00:06:59,640 --> 00:07:02,630 Emri im është Zamyla, dhe kjo ishte Mario. 117 00:07:02,630 --> 00:07:11,765