>> ROB BOWDEN: Здравейте, аз съм Роб, и нека да скочи в хакерската издание на Mario.
Така че първото нещо, което трябва да направите, е да получите височината от потребителя.
Тук сме с молба за неотрицателно цяло число, по-малко от 24 и
ние използваме функцията CS50 GetInt да вземете че число от потребителя.
Ние виждаме, че сме вътре на направи линия, докато че ще изпълнява командите докато
височина е по-голяма от 23 или по-малко от 0.
И така ще продължава, докато използващите всъщност ни дава това, което искаме.
>> След като имаме такава височина, можем да стигнем до основните за линия на нашата програма.
Така че нека първо разгледаме един пример от PSET спекулация.
Ние виждаме в този пример, че когато ние въведете височина от 4, най-долния ред
първо отпечатва четири хешове, две пространства, и още четири хешове.
>> Тогава един ред по-горе, който отпечатва едно космически три хешове, две помещения за
разделяне на пирамидите, и след това още три хешове.
И най-вече, че две помещения, две хешове, две помещения, две хешове.
И накрая, три места един хашиш, две пространства един хеш.
Така че вие ​​трябва да започнете да забележите модела тук.
>> Нека да разгледаме кода за това как ние ще направим това.
Виждаме тук, че ние сме итерации през всички редове на пирамидата.
Първо искаме да се изчисли броя на местата.
И не забравяйте, че трябва да започне в на върха на пирамидата и работата ни
път надолу, тъй като не можем да отпечатате дъно след това един ред нагоре и
след това един ред нагоре.
Така на върха на пирамидата, известието че броят на местата е равна
височина минус 1.
Отиваме, за да отпечатате три места след един хашиш и след две пространства за
отделно и друга хеш.
>> Така пространства, се равнява на височина минус ред.
Ако ред е 1 и нашия височина е 4, че ще ни даде три пространства, както ние искаме.
След това в продължение на контур само разпечатки че редица пространства.
Ако пространства е три, а след това ние ще създаде едно пространство три пъти.
>> Продължавайки, сега искаме да отпечатате хешове на лявата пирамидата, който е
просто равно на номера на реда.
Поглеждайки назад тук, в ред едно, отпечатваме един хашиш.
В ред два отпечатваме две, в Поредни три отпечатваме три.
Така че ние просто контур пъти ред печат символ хашиш.
Тогава за всички редове на пирамидата, ние отпечатате точно две места, за да отделяте
тези пирамиди.
>> И накрая, ние искаме да отпечатате правото страна на пирамидата, който е
отново същия брой хешове като лявата страна.
И така, това е абсолютно същата за линия както по-горе тук.
И накрая, ние трябва да създадем нов ред в За да се премине към следващия ред на
пирамидата и продължи да печата.
И това е всичко.
Моето име е Роб и това е Марио.