>> ROB BOWDEN: Hoi, ik ben Rob, en laten we springen in de hacker editie van Mario.
Dus eerste wat we moeten doen is krijgen de hoogte van de gebruiker.
Hier gaan we ze vragen om een niet-negatief geheel getal kleiner dan 24 en
we gebruiken de CS50 getInt functie dat integer grijpen van de gebruiker.
We we binnenin doe-while dat zal lus zolang
hoogte groter is dan 23 of kleiner dan 0.
En zo gaan we door tot de gebruiker eigenlijk geeft ons wat we willen.
>> Zodra we die hoogte, krijgen we te de belangrijkste voor de lus van ons programma.
Dus laten we eerst eens kijken naar een voorbeeld van de PSET spec.
We zien in dit voorbeeld dat als we voer een hoogte van 4, de onderste rij
Eerst drukt vier hashes, twee ruimtes, en vier meer hashes.
>> Toen, op een rij boven dat drukt een ruimte drie hashes, twee spaties om
scheiden de piramides, en toen drie meer hashes.
En boven dat, twee ruimtes, twee hashes, twee ruimten, twee hashes.
Tenslotte drie ruimten een hash, twee ruimten een hash.
Dus je moet beginnen te merken het patroon hier.
>> Laten we eens kijken naar de code voor de manier waarop gaan we dat doen.
We zien hier dat we itereren over alle rijen van de piramide.
Eerst willen we berekenen het aantal spaties.
En vergeet niet dat we moeten beginnen bij de top van de piramide en werken ons
weg naar beneden, omdat we niet kunnen afdrukken van de onderste dan een rij omhoog en
dan een rij omhoog.
Dus op de top van de piramide, bericht dat het aantal plaatsen is gelijk aan
hoogte minus 1.
We gaan drie ruimtes af te drukken dan een hash en vervolgens twee spaties om
afzonderlijke en andere hash.
>> Zo zijn gelijk aan hoogte minus rij.
Als de rij is 1 en onze hoogte is 4, dat zal ons 3 ruimtes, zoals wij willen.
Dan is dit voor loop gewoon prints dat aantal spaties.
Als ruimten is drie, dan gaan we maak een enkele spatie drie keer.
>> Verder te gaan, nu willen we afdrukken van de hashes van de linker piramide, die
gewoon gelijk aan het rijnummer.
Terugkijkend hier, in rij een afdruk van een hash.
In rij twee drukken we twee, in rij drie drie afdruk.
Dus we gewoon lus rij tijden afdrukken hekje.
Dan voor alle rijen van de piramide, we afdrukken precies twee ruimtes te scheiden
die piramides.
>> En tot slot willen we rechts af te drukken zijde van de piramide, die
weer hetzelfde aantal hashes als de linkerkant.
En dus is het exact dezelfde lus zoals hierboven hier.
Tot slot moeten we een nieuwe regel te maken in Om verder te gaan naar de volgende rij
de piramide en ga verder met afdrukken.
En dat is het.
Mijn naam is Rob en dit was Mario.