Rumah Kewangan Peribadi Cara Membuat Kod di Ruby untuk Draw Rectangle - dummies

Cara Membuat Kod di Ruby untuk Draw Rectangle - dummies

Video: The Power of the Docs | Intro to JS: Drawing & Animation | Computer programming | Khan Academy 2025

Video: The Power of the Docs | Intro to JS: Drawing & Animation | Computer programming | Khan Academy 2025
Anonim

Dalam Ruby, anda boleh membuat segi empat tepat pada skrin menggunakan seni ASCII. Sekiranya anda akan melukis segi empat tepat pada kertas yang dipenuhi dengan corak, apakah yang perlu anda lakukan? Pertama, anda boleh menggambar garis segi empat tepat, dan kemudian anda mungkin berwarna di bahagian dalam.

Tetapi untuk program anda dalam Ruby, anda akan mahu menggambar bentuk dari bahagian atas ke bawah, satu baris pada satu masa. Bagaimana anda menerangkan bagaimana untuk melakukannya? Seperti ini:

  1. Lukiskan bahagian atas segi empat dengan menggunakan corak luar (atau tepi) untuk baris pertama.

  2. Untuk setiap baris yang membentuk sisi dan dalam segi empat tepat, lukiskan tepi kiri, semua tengah, dan kemudian tepi kanan.

    Ulangi langkah ini sehingga anda perlu menarik bahagian bawah persegi panjang.

  3. Lukiskan bahagian bawah segiempat tepat sama seperti anda menarik pinggir atas.

Ini adalah algoritma untuk melukis garis segi empat tepat mengikut baris dari atas ke bawah.

Satu algoritma hanyalah urutan langkah yang anda ikuti untuk mencapai beberapa tugas atau pengiraan. Dalam kes ini, anda telah menulis urutan untuk menarik segi empat tepat dengan mengimbas merentasi dari atas ke bawah, garis demi baris.

Versi Ruby algoritma anda banyak berbunyi seperti versi bahasa Inggeris:

  1. Sediakan dua pembolehubah yang memudahkan untuk melihat apa yang sedang berlaku. Anda akan menggunakan pilihan pengguna untuk saiz bentuk sebagai kedua-dua ketinggian dan lebar angka yang akan anda lukis:

    height = shape_size width = shape_size
    
  2. Anda akan melukis garis segi empat tepat demi baris, jadi sediakan satu gelung yang akan mengulangi kod anda untuk setiap baris (jadi, ini bermakna anda memerlukan kod lukisan anda untuk menjalankan ketinggian kali):

    1. upto (height) lakukan | row | # Kod lukisan pergi ke sini akhir
    

    Gelung adalah cara yang ampuh untuk mengulangi kod beberapa kali (atau bahkan bilangan tak terhingga)! Ruby mempunyai beberapa cara untuk memprogram gelung. Kaedah upto adalah cara mudah untuk mengira dari nombor permulaan kepada nombor akhir. Untuk segi empat tepat, anda mahu mengira bermula pada 1 untuk baris pertama dan penghitungan penamat apabila anda mencapai nombor yang diwakili oleh ketinggian.

  3. Sekarang, untuk algoritma untuk berfungsi, anda perlu menyemak untuk melihat baris apa yang anda mahu program dicetak. Anda mempunyai tiga kes: baris pertama, baris tengah, dan barisan terakhir. Tambah dalam kes untuk baris pertama di tengah-tengah gelung anda:

    jika baris == 1 meletakkan luar_letter * akhir lebar
    

    Jika pemboleh ubah baris adalah sama dengan satu, program itu akan menggunakan meletakkan untuk mencetak pilihan anda untuk the out_letter beberapa kali sama dengan lebar.

    Anda gunakan jika pernyataan apabila anda ingin melihat apakah ada keadaan yang benar atau palsu.Simbol == di Ruby bertanya soalan: "Adakah benda di sebelah kiri sama dengan benda di sebelah kanan simbol ==? "Jika demikian, maka Ruby akan menjalankan baris kode hingga keadaan lain atau kata kunci akhir.

  4. Seterusnya, tambah semak untuk melihat apakah ini adalah baris terakhir. Kata kunci elsif bermula ujian keadaan lain, dan anda meletakkannya tepat sebelum kata kunci akhir sebelumnya. Itu bukan kesilapan ejaan, dengan cara ini. Ruby hanya mempunyai cara yang lucu untuk mengatakan "lain jika"! Seluruh perkara akan kelihatan seperti ini:

    jika baris == 1 meletakkan outer_letter * width elsif row == ketinggian meletakkan outer_letter * lebar akhir
    
  5. Akhirnya, anda perlu mengendalikan tampilan semua baris di tengah, jadi tambah satu keadaan terakhir menggunakan kata kunci lain Ruby. Kod ini berlaku sebelum kata kunci akhir. Di sini adalah seluruh blok Ruby:

    jika baris == 1 meletakkan outer_letter * lebar elsif baris == ketinggian meletakkan outer_letter * lebar lain tengah = inside_letter * (lebar - 2) meletakkan "# {outside_letter} # {middle} # { out_letter} "akhir
    

    Kes pertengahan kelihatan rumit. Apa yang dilakukannya? Nah, mengikut algoritma anda, ia perlu menarik tepi kiri dan kanan dan semua di tengah.

    Pembolehubah tengah mengira rentetan yang mewakili tengah segiempat tepat. Jika anda mengambil satu untuk aksara kelebihan kiri dan satu untuk aksara kelebihan sebelah kanan, lebar akhir pertengahan ialah lebar penuh tolak dua huruf.

    Pernyataan terakhir meletakkan menggunakan pemprosesan rentetan untuk membuat baris gabungan.

  6. Jalankan program anda dan lihat jika anda mempunyai sebarang kesilapan. Adakah anda mendapat sesuatu seperti apa yang ditunjukkan di sini? Jika anda melihat ralat yang mengatakan sesuatu seperti perbandingan Fixnum dengan String gagal, ini bermakna Ruby mempunyai masa yang sukar menggunakan nilai di dalam shape_size sebagai nombor.

    Ruby tidak pasti bagaimana menggunakan rentetan untuk nombor.

    Kenapa masalah itu jika anda menaip nombor? Nah, mendapat bacaan dalam input anda, tetapi ia membaca semua aksara yang anda taip sebagai rentetan. Anda perlu membantu Ruby menukarkan rentetan kepada nombor.

  7. Tukar dua baris di mana anda menetapkan pembolehubah ketinggian dan lebar untuk menggunakan kaedah to_i, yang bermaksud menukar isi kandungan ini menjadi integer (nombor):

    height = shape_size. to_i width = shape_size. to_i
    

    Jalankan kod anda sekali lagi. Kejayaan!

    Adakah ini segi empat tepat yang paling menarik di dunia?
Cara Membuat Kod di Ruby untuk Draw Rectangle - dummies

Pilihan Editor

Bagaimana untuk memperbaiki pencahayaan dengan bayang-bayang dan sorotan di Photoshop CS6 - dummies

Bagaimana untuk memperbaiki pencahayaan dengan bayang-bayang dan sorotan di Photoshop CS6 - dummies

Bayang-bayang / sorotan pelarasan adalah ciri yang hebat Dalam Adobe Photoshop CS6 yang menawarkan kaedah yang cepat dan mudah untuk membetulkan pencahayaan. Perintah ini berfungsi dengan baik pada subjek yang difoto dengan sumber cahaya yang berasal dari belakang, memberikan subjek yang latar depan gelap. Pelarasan ini juga boleh membawa terperinci di kawasan bayangan kasar. Untuk ...

Bagaimana Membekukan dan Kawasan Imej Thaw di Photoshop CS6 - dummies

Bagaimana Membekukan dan Kawasan Imej Thaw di Photoshop CS6 - dummies

Cecair dalam Photoshop CS6 ke melindungi kawasan dengan beku, dan kawasan yang tidak dilindungi oleh pencairan, patut dilihat lebih dekat. Pertimbangkan pembekuan yang bersamaan dengan pelekat. Berikut adalah ringkasan perkara-perkara yang perlu anda ketahui: Cara paling mudah untuk membekukan / melepaskan adalah dengan menggunakan alat Freeze Mask dan Thaw Mask untuk melukis kawasan anda ...

Bagaimana Mendapatkan Sebaliknya Lebih Baik di Photoshop CS6 Arahan - dummies

Bagaimana Mendapatkan Sebaliknya Lebih Baik di Photoshop CS6 Arahan - dummies

Jika anda ingin menyesuaikan nada nilai imej dalam Photoshop CS6 atau warna yang betul, arahan Level boleh memberi anda kontras yang lebih baik dan alat untuk anda. Ia menawarkan lebih banyak kawalan daripada arahan Auto Tone. Perintah Tahap juga merupakan alat yang lebih canggih daripada kawalan Kecerahan / Kontras kerana anda boleh ...

Pilihan Editor

Cara Menggunakan Swatches dalam Adobe InDesign CS6 Dokumen - dummies

Cara Menggunakan Swatches dalam Adobe InDesign CS6 Dokumen - dummies

Anda boleh membuat, memohon dan mengedit warna-warna dari panel Swatches dalam Adobe InDesign Creative Suite 6. Selain menggunakan panel ini untuk mencipta dan mengedit tints dan kecerunan dan kemudian menerapkannya pada objek pada halaman, anda juga boleh membuat dan menyimpan warna pepejal. Pilih Window → Warna → Swatch untuk membuka atau mengembangkan Swatches ...

Cara Menggunakan Grid dalam bingkai teks Adobe InDesign CS6 - dummies

Cara Menggunakan Grid dalam bingkai teks Adobe InDesign CS6 - dummies

Mengandungi apa-apa teks yang anda tambah pada penerbitan . Anda boleh membuat bingkai teks baru dalam pelbagai cara. Dalam Adobe InDesign CS6, anda boleh menambah teks kepada bentuk kreatif yang anda lukis, dengan itu mengubahnya menjadi bingkai teks. Membuat dan menggunakan bingkai teks dalam penerbitan adalah penting kerana anda biasanya menggunakan ...

Cara Menggunakan Alat Transformasi Percuma dalam InDesign CS6 Documents - dummies

Cara Menggunakan Alat Transformasi Percuma dalam InDesign CS6 Documents - dummies

Alat dalam Adobe InDesign membolehkan anda mengubah objek dengan cara yang berbeza. Menggunakan alat Transformasi Percuma, anda boleh memindahkan, memutar, ricih, mencerminkan, dan objek skala. Fungsi Alat Transformasi Percuma diwakili dalam InDesign oleh kursor yang berbeza. Untuk menggerakkan objek dengan menggunakan alat Transform Free, ikuti langkah berikut:

Pilihan Editor

Bagaimana untuk Memantau Media Sosial dengan Google Alerts - dummies

Bagaimana untuk Memantau Media Sosial dengan Google Alerts - dummies

Anda ingin mempunyai idea yang baik dari apa yang sedang dibincangkan di media sosial dalam bidang perniagaan anda, mengenai produk dan perkhidmatan anda, atau tentang persaingan anda. Anda boleh memantau ulasan media sosial dengan Google Alerts. Orang-orang jenis di Google mempunyai perkhidmatan yang memberitahu anda apabila Google mendapati hasil baru, halaman web, ...

Cara Menyediakan Homepage Netvibes untuk Pemasaran Dalam Talian - dummies

Cara Menyediakan Homepage Netvibes untuk Pemasaran Dalam Talian - dummies

Netvibes boleh alat yang berguna kepada pemasar web dan anda harus bermula dengan membuat laman utama. Jika anda suka antara muka yang sedikit lebih digilap, mahukan lebih banyak pilihan penyesuaian, atau tidak selesa menggunakan Google kerana kebimbangan privasi (sesetengah orang bukan sahaja), Netvibes adalah pilihan yang sangat baik. Menyediakan laman web Netvibes hanya mengambil ...

Cara Menetapkan Senarai Perniagaan di Laman Tinjauan - dummies

Cara Menetapkan Senarai Perniagaan di Laman Tinjauan - dummies

Merupakan langkah penting dalam membina perdagangan laman web media sosial adalah untuk mencari perniagaan anda di laman ulasan dan menuntut halaman anda! Yelp sepatutnya menjadi perhentian pertama anda. Dalam angka tersebut, disenaraikan di antara komen dan data mengenai perniagaan, anda boleh melihat jemputan terbuka untuk pemilik perniagaan untuk mendapatkan semula halaman tersebut. ...