>> ROB Bowden: Hi, saya Rob, dan mari kita melompat ke dalam edisi penggodam Mario.
Perkara itu kita perlu lakukan ialah mendapatkan ketinggian dari pengguna.
Di sini kita meminta mereka untuk integer bukan negatif kurang daripada 24 dan
kita menggunakan fungsi CS50 GetInt merebut integer yang daripada pengguna.
Kita melihat kami dalam gelung do-manakala yang akan terus menggelung selagi
ketinggian adalah lebih besar daripada 23 atau kurang daripada 0.
Dan dengan itu kita akan terus sehingga pengguna sebenarnya memberikan kita apa yang kita mahu.
>> Apabila kita mempunyai ketinggian itu, kita dapat utama untuk gelung program kami.
Jadi mari kita melihat pertama di contoh dari spec Serangga ini.
Kita lihat dalam contoh ini bahawa apabila kita memasukkan ketinggian 4, baris bawah
pertama mencetak empat Hash, dua ruang, dan empat lagi Hash.
>> Kemudian satu baris di atas yang mencetak satu ruang tiga Hash, dua ruang untuk
memisahkan piramid, dan maka tiga lagi Hash.
Dan di atas itu, dua ruang, dua Hash, dua ruang, dua Hash.
Dan akhirnya, tiga ruang satu hash, dua ruang satu hash.
Jadi, anda perlu mula notis corak di sini.
>> Mari kita lihat kod untuk bagaimana kita akan berbuat demikian.
Kita lihat di sini bahawa kita iterating ke atas semua baris piramid.
Mula-mula kita mahu untuk mengira bilangan tempat.
Dan ingat bahawa kita perlu bermula bahagian atas piramid dan bekerja kami
ke bawah kerana kita tidak boleh mencetak bawah kemudian satu baris ke atas dan
maka satu baris ke atas.
Jadi di bahagian atas piramid, notis bahawa bilangan tempat adalah sama dengan
ketinggian tolak 1.
Kami akan mencetak tiga ruang maka satu hash dan kemudian dua ruang untuk
berasingan dan hash lain.
>> Jadi ruang adalah sama dengan ketinggian tolak berturut-turut.
Jika baris itu adalah 1 dan ketinggian kita adalah 4, yang akan memberikan kita 3 ruang, seperti yang kita mahu.
Maka ini untuk gelung hanya cetakan bahawa bilangan ruang.
Jika ruang adalah tiga, maka kita akan mewujudkan ruang tunggal tiga kali.
>> Berterusan, sekarang kita mahu untuk mencetak Hash piramid kiri, yang merupakan
hanya sama dengan bilangan baris.
Mengimbas kembali di sini, berturut-turut satu, kita mencetak satu hash.
Berturut-turut dua kita cetak dua, dalam berturut-turut tiga kita cetak tiga.
Kali berturut-turut itu, kita hanya gelung percetakan simbol hash.
Kemudian untuk semua baris piramid, kita mencetak tepat dua ruang untuk memisahkan
mereka piramid.
>> Dan akhirnya, kita ingin mencetak kanan sisi piramid, yang merupakan
lagi jumlah yang sama Hash sebagai sebelah kiri.
Dan jadi ia sama yang tepat untuk gelung seperti di atas di sini.
Akhir sekali, kita perlu mewujudkan satu barisan baru dalam untuk bergerak ke baris seterusnya
piramid dan terus percetakan.
Dan itu sahaja.
Nama saya Rob dan ini adalah Mario.