ZAMYLA CHAN: Mari kita melompat ke Mario. Mario adalah satu program di mana kami akan membuat kita sendiri, walaupun primitif, versi klasik Super Mario Brothers latar belakang permainan. Untuk set masalah ini, kita akan untuk mencipta setengah piramid untuk Mario untuk melompat ke atas. Program kami akan interaktif, jadi ia akan meminta pengguna untuk input tertentu tinggi untuk piramid. Dan program ini akan mencetak setengah piramid ketinggian yang, di mana bawah hash kiri menjajarkan dengan bahagian bawah sudut kiri terminal tetingkap output. Mari kita memecahkan masalah ini kepada dua bahagian, satu, mendapatkan input pengguna, dan dua, mencetak piramid. Ingatlah bahawa walaupun fungsi yang GetInt akan mendapatkan integer, anda perlu memastikan bahawa input ini menjadikan rasa untuk program anda, jadi dalam Mario, ia tidak akan melakukan hanya produk untuk integer. Anda perlu memastikan bahawa pengguna input integer itu dalam batas yang lebih rendah dan atas yang piramid yang anda boleh mencetak. Per spec ini, ini adalah 0 dan 23 inklusif. Jika input pengguna integer luar batas diterima kita, maka kita mahu untuk meminta mereka lagi dan lagi sehingga mereka memberi kita integer yang sah. Salah satu cara untuk memastikan input pengguna yang betul ialah dengan menggunakan Do-Walaupun gelung, yang merupakan hampir sama dengan gelung Walaupun. Do-Walaupun gelung melaksanakan kod di dalam badan sekali, dan kemudian memeriksa sama ada keadaan itu dipenuhi atau tidak. Ini amat berguna untuk mendapatkan input pengguna kerana anda tahu bahawa anda perlu untuk meminta mereka sekurang-kurangnya sekali. Jika keadaan ini tidak dipenuhi, program akan melaksanakan baris selepas Do-Walaupun gelung anda. Jika keadaan itu dipenuhi, walaupun, gelung akan mengulangi. A Do-Walaupun gelung untuk mengesahkan pengguna input akan melihat sesuatu seperti ini. Saya mengisytiharkan n ubah, GetInt, dan ulangi sehingga n adalah sah. Ingatlah bahawa apabila anda mengisytiharkan anda berubah-ubah, ia perlu yang sesuai skop, seperti di calar. Jika saya mengaku n dalam Do-Walaupun gelung saya, sepanjang program ini tidak akan dapat mengaksesnya. Ia terhad kepada batasan daripada pendakap kerinting. Baiklah, jadi sekarang kita telah disahkan input pengguna, kita sebenarnya perlu menarik ini setengah piramid. Ia terdiri daripada watak-watak yang dicetak, jadi mari kita membuat setengah piramid yang mudah editor teks. Jika kita ingin membuat gaya piramid Mario ketinggian tiga itu sejajar di sebelah kiri tetingkap kita, maka kita akan menaip dua Hash, klik Enter, kemudian taip tiga Hash, klik Memasuki, dan kemudian taip empat. Tetapi dalam set masalah ini, kami setengah piramid perlu betul sejajar. Menggunakan papan kekunci standard, bagaimana mungkin anda mengubah suai fail ini untuk bergerak Hash ke sebelah kanan? Saya mungkin gunakan untuk menekankan, dua di baris atas dan satu di kedua. Yang tidak kelihatan sebagai baik, walaupun, jadi mari kita menggantikan dengan menekankan ruang, dan kita ada setengah piramid ketinggian tiga. Cuba dan ingat editor teks ini Contohnya seperti anda mula berfikir kembali ke C. Mari kita cuba memahami beberapa jenis corak yang kita boleh dimasukkan ke dalam membina gelung. Ambil ketinggian contoh, katakan lapan, dan lihat jika anda boleh mula tampil dengan corak. Baris pertama akan mempunyai tujuh ruang diikuti oleh dua Hash. Barisan kedua akan mempunyai enam ruang dan tiga Hash, dan sebagainya sehingga berturut-turut kelapan. Tetapi bagaimana anda akan mewakili barisan n? Ingatlah bahawa konvensyen pengaturcaraan adalah sifar diindeks. Ini bermakna bahawa anda mula mengira pada sifar, jadi barisan pertama adalah secara teknikal bilangan baris sifar dengan dua hac, berturut-turut nombor satu mempunyai tiga Hash, baris nombor dua mempunyai empat Hash, jadi berikutan corak ini untuk mana-mana baris bilangan n, terdapat n campur 2 Hash. Saya akan serahkan kepada anda, walaupun, untuk mencari keluar corak ruang. Ingatlah bahawa corak anda akan sedikit berbeza jika anda memilih untuk mula mengira anda dari satu dan tidak sifar. Sekarang, anda mempunyai corak untuk mana-mana n baris abstrak. Anda tahu berapa banyak ruang untuk mencetak dan berapa banyak Hash, jadi untuk setiap baris, bahawa nombor akan berubah. Tetapi proses yang sama mencetak huruf tunggal, sama ada ruang atau hash, diulangi. Jadi apa yang anda perlu lakukan adalah berkali-kali mencetak watak itu untuk seberapa banyak kali sebagai corak anda menentukan. Jadi bagaimana kita mengulangi proses? Dalam Awal, kami menggunakan blok berulang. Dalam C, kami akan menggunakan Bagi gelung. Mari kita lihat pada sintaks untuk Untuk gelung. Untuk setiap gelung terdiri daripada tiga bahagian, pengawalan an, keadaan, dan kemas kini. Gelung Untuk anda akan memulakan berubah-ubah apabila ia mula-mula Untuk memasuki gelung. Jika keadaan itu dipenuhi, badan gelung akan melaksanakan. Selepas itu, kemas kini akan melaksanakan. Jika keadaan ini masih dipenuhi, gelung akan melaksanakan dan mengemaskini dan mengulangi selagi keadaan anda menilai kepada Benar. Anda keadaan akhirnya mesti valuate kepada palsu, walaupun, kerana tidak seperti Awal, kita tidak mempunyai apa-apa gelung Selamanya. Program anda mesti berakhir akhirnya. Berikut adalah satu contoh Untuk gelung yang anda mungkin mahu digunakan untuk Mario. Pengawalan mengisytiharkan i integer dengan nilai 0. Selagi i adalah kurang daripada ketinggian, badan gelung akan melaksanakan dan meningkatkan i oleh salah dan mengulangi sehingga i adalah lebih besar atau sama dengan ketinggian. Sekarang, Untuk gelung saya adalah indeks sifar. The Int i bermula pada sifar, bukan satu. Jika saya memilih satu, maka keadaan saya akan juga perlu berbeza untuk gelung untuk melaksanakan Bilangan yang sama kali. Ingat ini dengan berhati-hati apabila anda memilih pengawalan dan anda anda syarat, dan berunding ini carta untuk menggandakan cek. Salah satu perkara yang menarik mengenai komputer sains ialah bahawa terdapat hanya begitu banyak cara-cara untuk melaksanakan sesuatu. Anda boleh memilih sama ada anda bermula pada sifar atau satu. Jika anda tidak mahu menggunakan Untuk gelung, anda juga boleh menggunakan gelung Walaupun ke mengulangi kenyataan selagi anda menjaga intipati Untuk gelung, pengawalan, keadaan, dan kemas kini. Apabila kita memikirkan gelung Untuk itu kita paling selesa dengan, maka kita boleh melengkapkan Mario. Kita mula-mula diperiksa untuk input pengguna dan kemudian mengenal pasti corak untuk mana-mana n baris. Jadi untuk setiap baris dari sifar hingga n tolak 1 akan mencetak bilangan yang sesuai ruang, maka bilangan yang sesuai Hash mengikut corak kita, dan maka garis baru. Dengan itu, anda mempunyai piramid anda. Nama saya Zamyla, dan ini adalah Mario.