ZAMYLA CHAN: To je-me, Zamyla.
Danes bomo izvajati Mario, kjer črpamo Mario
Pred vami je piramida za njega, da skok čez.
Oglejmo razčleniti sub-naloge za to težavo.
>> Najprej želimo poziv uporabniku višina piramide.
In potem smo se želeli prepričati da je to vhod veljaven.
In potem bomo želijo pripraviti piramide.
>> Torej, kaj je govoril o česar in potrjevanje uporabnik vložek.
To je videti takole to do-, medtem ko zanko, ki
pozove uporabnika, dokumentacija cela, nato pa le ponavlja
če je to število je neveljavna.
Torej, kaj naj bi ta pogoj?
>> Za to, vrnimo specifikacije.
No, spec nam pove, da je vsaka veljavna višina se bo med 0 in 23,
inclusive.
Torej to pomeni, da je vsaka neveljavna višina se bo manj kot 0
ali več kot 23.
>> Torej sedaj, da imamo te podatke, pa oblikujejo naše stanje.
Vendar moramo biti previdni, ker zdaj imamo
dve logične vrednosti, ki jih želimo oceniti.
>> Tu sem te, če z resnico mizo.
To nam omogoča, da dva Logične vrednosti, logični ena in dva.
In lahko ocenimo bodisi bool1 in bool2 ali bool1 ali bool2.
>> Torej, kaj je razlika med in in ali?
No, bool1 in bool2 bo oceni, da velja samo v primeru,
če sta oba logične vrednosti true, ker je ali delovanje
bo držalo, če je eden od so logične vrednosti ali oba sta res.
Torej s tem v mislih, videli, če lahko ugotovimo,
kaj je primerna pogoj svoj do-while zanko za neveljavno n
se bo.
>> S tem smo pozvani in potrjeni Uporabnik za višino piramide
da hočejo.
Zdaj, to je odvisno od nas pripraviti piramide.
Polno piramida to Problem bo videti malo
kot je ta, kjer imamo levo piramido, nekaj vrzeli in nato desno piramide.
Torej, kaj je razdeliti malo.
>> Če grem na moj urejevalnik besedila, tukaj nimam pripravi nam-levo poravnani piramido.
Ampak, da ne bo naredil.
Kaj želimo narediti je, da smo želeli ustvariti desno poravnanega piramido prvi.
Torej za to, da samo potiskanje moje hashes vzdolž ob strani,
Jaz sem le, da bo dal nekaj znakov med, samo teh pik.
Potem bom dal dva na Naslednja vrstica, in eno po tej progi.
In tako da tukaj imam desno poravnano piramido.
>> Po tem, bom segajo v zgornji vrstici
in dal v vrzeli, ki je, na spec, dva prostora.
Potem bom izpolniti v drugi strani piramide.
Bom šel v drugi vrsti, pisanje dva prostora za reže in nato dve
hashes.
Nazaj na tretji vrsti, dva presledka za razlike in tri haše.
In na koncu, dve prostori za režo in štiri haše.
Torej, to je tisto, kar v celoti piramida bo izgledal.
>> Seveda si ne želimo Te pike na poti.
Torej bomo namesto njih pike, ki jih dajanje nekaj prostorov v.
Ena, dva, tri na prvi liniji.
Ena, dva na sekundo.
In ena v tretji vrstici.
Torej, to je, kaj bi naredili, če bi želel samo, da celotno piramido,
pravijo, v našem urejevalniku besedil.
>> Tako da je lahko to, razumevanje vzorcev,
in ga spremeniti čez neki psevdokoda.
Za vsako vrsto piramide, želimo natisniti levo piramido in nato
vrzel in nato desno piramide.
Za levo piramide, tiskamo predpisana količina prostorov,
sledijo haše.
Potem smo natisniti vrzel, ki je le dve prostori vsakič.
In v pravo piramido, tiskamo zahtevano število haše.
>> Za drugi vrsti smo izvedli enako natančen postopek.
Tiskamo prostore za levo piramida je potrebna količina
od haše, reže, dva prostora, in nato pa hash za desni piramide.
>> Oglejmo reševanje vzorec za levo piramide.
Če bi imel, za namene to primer višina
osem jih zaprošeni uporabnik, potem moja prva vrstica
bi imel eno hašiš in sedem mest.
Moj drugi vrsti bi morali zgoščeni vsebini, šest prostorov.
Tretji vrsti, tri hash, pet prostori.
Verjetno si lahko to storijo sami za višino osmih
in določi za vsako vrsto koliko hashes in koliko prostorov, kar potrebujete.
Toda tisto, kar smo želeli storiti, je želimo povzetek je.
Torej vas prosim za vsako n-vrstico, koliko hashes in koliko prostorov potrebujemo?
>> Zdaj, ko določi Vzorec za koliko haše
in koliko prostorov, kar potrebujete za koli n vrstica za določeno višino,
ne pozabite, da bodite previdni kako ste indeksira.
Kaj mislim s tem, da v vsakdanjem življenje je večina od nas začnemo z eno.
Zato bi v prvi vrstici je številka ena.
In druga vrsta bo vrstica številka dve, tako naprej in tako naprej.
>> Toda na področju računalništva in CS50, smo nič indeksirane.
Tako smo dejansko začeli štetje nič.
Torej bi prva vrstica biti vrstica številka nič.
In druga vrstica bi bila vrstica številka ena.
Torej, če bi imel višino osem za Moja piramida, nato zadnja vrednost n
bi dejansko sedem, in ne osem.
>> Zato bodite previdni glede tega.
In se zavedati, ko ste določanju svoj vzorec, ali je vaš nič indeksirane
ali en indeksirane
>> V REDU.
Torej sedaj, da imamo Vzorec za levo piramide
moramo določiti vzorec za reže.
Na srečo, to je enostavno.
To je samo vedno dva prostore.
>> Zdaj bomo nadaljevali na pravem vzorcu.
V prvi vrstici bo imela eno hašiš.
Druga vrsta, dva.
Tretji vrsti, tri.
Tako naprej in tako naprej.
Torej še enkrat, določi za katero koli povzetek n in vse višine koliko hashes
in koliko prostorov Vsaka vrstica mora imeti.
>> V REDU.
Tako smo vedeli, da se za vsako zapored morali opraviti nekaj procesa.
Kako to storimo?
No, bomo uporabili za zanke konstrukt, sestavljena iz za inicializacijo
pogoj, in posodobitev.
Za lahko uporabimo zanke ponoviti procesov.
>> Torej, da hočem, da pozdravi, svet 50-krat, nato pa moj zanko
bi izgledal nekako takole, če je Sem inicializacijo moje spremenljivke na nič.
Pogoj je, da je i manj kot 50.
In potem update je, da to korakih po eno vsakič.
Torej, kaj bi to storili, bi bilo, da tiskanje zdravo, svetovno 50-krat zapored.
>> Zdaj pa, da sem želel ponovitev nad višino piramide.
Nato namesto trdega kodiranja nekaj vrednosti v stanju,
Pravkar sem uporabiti spremenljivo višino.
Torej, kaj bo to storiti, je ponovitev čez višino vsake vrstice.
In ne morem narediti nekaj v notranjosti telesa te zanke.
>> Kaj želimo narediti notranjosti telesa zanke?
No, kot smo nakazali prej, želimo natisniti prostore in hash
za levi piramide in nato tiskanja dva presledka in nato natisnete hash.
Tako smo že pogruntal.
Torej lahko začnemo zapolniti V našem programu veliko več.
>> Tukaj imam zunanjo zanko, ki ponovi več kot vsako vrstico v piramidi.
In znotraj tega organa bom večkrat tiskanje prostore,
hashes večkrat, nato pa je razlika, in nato hashes za pravo piramide
in končno, nov linija za začetek naslednje vrstice.
>> S tem smo pozvani uporabnik za vnos.
Naredili smo prepričani, da je veljavna.
In potem smo narisali piramido.
Torej Mario lahko uspešno vzpon piramide.
>> Moje ime je Zamyla.
In to je CS50.