>> ZAMYLA CHAN: Poďme skok do Mario.
Mario je program, kde budeme robiť naše vlastné, hoci primitívne verzie
klasické Super Mario Brothers Hra pozadia.
Pre tento problém súboru, budeme obnoviť polovice pyramída pre
Mario skočiť na.
Náš program bude interaktívne, takže je vyzve užívateľa na zadanie určitej
výška pre pyramídy.
A program bude tlačiť pol pyramída tejto výške, kde sa
vľavo dole hash zarovnaný s dolnou v ľavom hornom rohu terminálu
Výstupné okno.
>> Poďme prelomiť tento problém do dvoch častí, jeden, získať vstup od užívateľa, a dva,
vytlačiť pyramídu.
Pamätajte si, že keď GetInt funkcie bude načítať celé číslo, môžete
sa uistiť, že tento vstup je Zmysel pre váš program, takže
Mario, nebude to robiť len Produkt na celé číslo.
Budete potrebovať, aby sa ubezpečil, že užívateľ vstupy celé číslo, ktoré je v rámci
dolnej a hornej hranice pyramídy, ktoré si môžete vytlačiť.
Na tomto spec, je to 0 a 23 vrátane.
Ak používateľ zadá celočíselnú mimo z našich uznávaných hraníc, potom chceme
výzvu znova a znova, až kým Dávajú nám platné číslo.
>> Jeden spôsob, ako zabezpečiť správne užívateľské vstup je pomocou do-while slučky, ktorá je
veľmi podobný cyklu while.
Do-while slučky spustí kód vnútri tela raz, a potom skontroluje
či je podmienka splnená alebo nie.
To je užitočné pre získanie vstupu používateľa pretože viete, že budete potrebovať
vyzvať aspoň raz.
Ak podmienka nie je splnená, program spustí linku po
vaše do-while slučky.
Ak je podmienka splnená, aj keď, sa opakovala.
>> Do-while slučky pre overovanie užívateľa Vstup bude vyzerať nejako takto.
Prehlasujem, premenné n, GetInt, a postup opakujte, kým n je platný.
Pamätajte si, že keď deklarujete svoj variabilné, je potrebné vhodným
rozsah, rovnako ako v Scratch.
Ak Prehlasujem n vnútri môjho do-while slučky, Zvyšok programu nebude
k nemu mať prístup.
Je obmedzený na hranice zo zložených zátvoriek.
>> Dobre, takže teraz, keď sme overená užívateľského vstupu, sme skutočne potrebujú, aby
čerpať túto polovice pyramída.
Je vyrobené z paličkovým písmom, takže poďme sa polovica pyramída v jednoduchej
textový editor.
Ak chceme, aby bol štýl Mario pyramídu výšky troch, ktorý je zarovnaný
na ľavej strane nášho okna, potom by sme zadajte dva hashe, kliknite na tlačidlo Enter,
zadajte tri hashe, kliknite na tlačidlo Enter a zadajte štyri.
>> Ale v tejto problémovej sady, naše pol pyramída musia byť zarovnané vpravo.
Používanie štandardnej klávesnice, možno ako upraviť tento súbor presunúť hashe
na na pravej strane?
Mohol by som použiť na podčiarknutia, dva na Horný riadok a jeden na druhom.
To nevyzerá tak pekne, aj keď, tak poďme nahradí podčiarknutia
priestory, a tam máme pol pyramídu výšky troch.
>> Pokúste sa zapamätať tento textový editor Príklad, ako začnete premýšľať späť do
C. Skúsme zistiť niektoré druh vzoru, ktorý môžeme
dať do slučky konštruktu.
Vezmite si príklad výšku, povedzme osem, a uvidíme, či môžete začať
prísť sa vzorom.
Prvý riadok bude mať sedem miest nasledujú dve hash.
Druhá rada bude mať šesť miest a tri hodnoty hash, a tak ďalej, až kým
Ôsmy riadok.
>> Ale ako by predstavovalo n-tý riadok?
Nezabudnite, že programovací konvencie je nula indexované.
To znamená, že začnete počítať od nula, takže prvý riadok je technicky
číslo riadku nula dva poklopy, radové číslo jedna má tri krížiky riadok
číslo dva má štyri hashe, takže po Tento vzor pre každý riadok
číslo n existuje n a 2 hashe.
Nechám to na vás, aj keď, nájsť sa vzorom pre priestory.
Pamätajte, že váš model bude mierne odlišná, ak sa rozhodnete
začnite počítať od jeden a nie je nula.
>> Teraz máte vzor pre každý riadok abstraktné n
Viete, koľko miesta chcete vytlačiť, a koľko hash, takže pre každý riadok, ktorý
Číslo sa zmení.
Ale rovnaký proces tlače znak, buď medzera alebo
hash, sa opakuje.
Takže všetko, čo musíte urobiť, je opakovane vytlačiť túto postavu toľkokrát, koľkokrát
ako váš vzor stanovuje.
>> Tak ako sme sa opakovať procesy?
V Scratch, sme použili opakovanie bloku.
V jazyku C, budeme používať pre sláčiky.
Poďme sa pozrieť na syntax pre cykly for.
>> Každý pre vedenie sa skladá z troch diely, inicializácia, podmienka,
a aktualizácie.
Pre Váš slučka inicializovať premenná, keď sa prvýkrát
vstúpi na slučke.
Ak je podmienka splnená, telo zo slučky budú vykonané.
Potom bude aktualizácia vykonávať.
>> Ak je podmienka splnená ešte, slučka bude vykonávať a aktualizovať a
opakovať tak dlho, ako Váš zdravotný stav vyhodnotí ako True.
Ste podmienka musí nakoniec zhodnotiť FALSE, hoci, pretože
Na rozdiel od nuly, my nie nejaké Forever slučky.
Váš program musí skončiť nakoniec.
>> Tu je príklad slučky for, ktorá budete chcieť použiť pre Mario.
Inicializácia prehlasuje, číslo aj s hodnotou 0.
Tak dlho, ako je aj menšia, ako je výška, telo slučky bude vykonávať a
zvýšiť aj jeden a opakovať až i je väčšia ako, alebo
rovná výške.
>> Teraz, môj for je nulový index.
Int i začína na nule, nie jeden.
Ak som si vybral jeden, potom sa môj stav by mal tiež musí byť odlišné pre
slučky vykonať rovnaký počet opakovaní.
Nezabudnite pozorne, keď ste výberom inicializáciu a vaše
stav a poraďte sa to graf prekontrolovať.
>> Jedna z veľkých vecí, o počítači veda je, že tam je tak veľa
spôsoby execute veci.
Môžete si vybrať, či si začať od nuly, alebo jedna.
Ak nechcete použiť pre sláčiky, môžete tiež použiť cyklus while sa
opakovať príkazy tak dlho, kým vás zachovať podstatu Pre slučky,
inicializácia, podmienka, a aktualizácie.
Akonáhle zistíme, že pre sláčiky sme najviac vyhovuje, potom
môžete dokončiť Mario.
>> Najprv kontroluje vstup užívateľa a potom identifikované
vzor pre každý riadok n
Takže pre každý riadok od nuly do N mínus 1 vytlačí príslušný počet
priestory, potom sa zodpovedajúci počet hashe podľa nášho vzoru, a
potom nový riadok.
S tým máte pyramídu.
Volám sa Zamyla, a to bol Mario.