1 00:00:00,000 --> 00:00:13,010 2 00:00:13,010 --> 00:00:18,290 >> ROB Bowden: Bok, ja sam Rob, i neka je skočiti u hakerskom izdanju Mario. 3 00:00:18,290 --> 00:00:21,760 Dakle, prva stvar koju trebate učiniti je dobiti visinu od korisnika. 4 00:00:21,760 --> 00:00:26,290 Ovdje smo ih tražili ne-negativni cijeli broj manji od 24 i 5 00:00:26,290 --> 00:00:31,710 mi koristimo funkciju CS50 GetInt zgrabiti taj broj od strane korisnika. 6 00:00:31,710 --> 00:00:35,260 Vidimo da smo unutar jednog do-while petlje da će se nastaviti sve dok petlje 7 00:00:35,260 --> 00:00:38,400 visina je veća od 23 ili manje od 0. 8 00:00:38,400 --> 00:00:42,850 I tako ćemo nastaviti do korisnika zapravo nam daje ono što želimo. 9 00:00:42,850 --> 00:00:46,960 >> Nakon što smo tu visinu, možemo doći do Glavni for petlje našeg programa. 10 00:00:46,960 --> 00:00:49,510 Tako ćemo prvi pogled na primjer iz pset spec.. 11 00:00:49,510 --> 00:00:52,270 12 00:00:52,270 --> 00:00:56,940 Vidimo se u ovom primjeru da kad smo unesite visinu od 4, donji red 13 00:00:56,940 --> 00:01:01,520 Prvi ispisuje četiri hashes, dva razmaka, i još četiri Skosan. 14 00:01:01,520 --> 00:01:06,280 >> Onda jedan red iznad toga ispisuje jedan Prostor tri Skosan, dva mjesta na 15 00:01:06,280 --> 00:01:09,690 odvojiti piramide, a a zatim još tri Skosan. 16 00:01:09,690 --> 00:01:13,460 A iznad toga, dva razmaka, dvije Skosan, Dva mjesta, dva presjeke. 17 00:01:13,460 --> 00:01:18,090 I na kraju, tri mjesta jedan mljeveno meso, dva razmaka jedan hash. 18 00:01:18,090 --> 00:01:20,980 Dakle, trebali biste početi primjećivati obrazac ovdje. 19 00:01:20,980 --> 00:01:22,545 >> Pogledajmo koda za koliko ćemo to učiniti. 20 00:01:22,545 --> 00:01:25,290 21 00:01:25,290 --> 00:01:28,840 Ovdje vidimo da smo iterating preko svih redova piramide. 22 00:01:28,840 --> 00:01:31,720 Prvo želimo izračunati broj mjesta. 23 00:01:31,720 --> 00:01:34,690 I zapamtite da moramo početi na vrh piramide i rade naše 24 00:01:34,690 --> 00:01:37,790 putu prema dolje, jer ne možemo ispisati Dno onda jedan red i 25 00:01:37,790 --> 00:01:39,140 zatim jedan redak gore. 26 00:01:39,140 --> 00:01:44,030 Tako je na vrhu piramide, najave da je broj mjesta jednak 27 00:01:44,030 --> 00:01:45,720 visina minus 1. 28 00:01:45,720 --> 00:01:50,120 Mi ćemo ispisati tri mjesta onda jedan mljeveno meso i onda dva mjesta na 29 00:01:50,120 --> 00:01:53,350 zasebna i drugi hash. 30 00:01:53,350 --> 00:01:57,320 >> Dakle prostori jednaka visina minus red. 31 00:01:57,320 --> 00:02:03,180 Ako red je 1, a naša visina je 4, koji će nam dati 3 prostore, kao što smo željeli. 32 00:02:03,180 --> 00:02:06,900 Onda je ovo za petlje samo ispise da je broj mjesta. 33 00:02:06,900 --> 00:02:12,630 Ako mjesta je tri, onda ćemo stvoriti jedan prostor tri puta. 34 00:02:12,630 --> 00:02:18,750 >> Nastavljajući, sada želimo ispisati Skosan u lijevoj piramide, koja je 35 00:02:18,750 --> 00:02:20,630 samo jednak broju reda. 36 00:02:20,630 --> 00:02:23,250 Osvrnuvši se ovdje, u redu jedan, mi ispisati jednu mljeveno meso. 37 00:02:23,250 --> 00:02:25,960 U redu dva smo ispisali dva, u red tri smo ispisali tri. 38 00:02:25,960 --> 00:02:30,440 Dakle, mi jednostavno loop puta red tisak hash simbol. 39 00:02:30,440 --> 00:02:34,830 Tada za sve redove piramide, mi ispisati točno dva prostora za odvajanje 40 00:02:34,830 --> 00:02:36,360 te piramide. 41 00:02:36,360 --> 00:02:39,590 >> I na kraju, želimo ispisati pravo strane piramide, koji se 42 00:02:39,590 --> 00:02:42,160 opet isti broj hashes kao i na lijevoj strani. 43 00:02:42,160 --> 00:02:45,680 I tako to je isto točno za petlje kao što je prije ovdje. 44 00:02:45,680 --> 00:02:49,445 Na kraju, moramo stvoriti novi redak u kako bi se premjestiti na sljedeći red 45 00:02:49,445 --> 00:02:51,690 piramide i nastaviti ispisivati. 46 00:02:51,690 --> 00:02:53,010 I to je to. 47 00:02:53,010 --> 00:02:54,860 Moje ime je Rob, a to je Mario. 48 00:02:54,860 --> 00:03:01,718