Listing
Logika
Pada program ini
pertama-tama kita deklarasikan variabel nilai sebagai variabel inputan untuk
menentukan besarnya rumah yang akan dibuat. Variabel nilai memiliki perintah
inputan bertipe data integer (gets.to_i). Lalu variabel nilai2 memiliki nilai
yang sama dengan variabel nilai.
Untuk perulangan
yang di atas ini berfungsi untuk membentuk atap rumah yang akan dibuat. Untuk {for
a in 1..nilai} ini berfungsi sebagai patokan perulangan yang akan mengulang
dari 1 sampai dengan nilai yang di variabel nilai, hasilnya akan membuat
perulangan yang di bawahnya menjadi tercetak secara ke bawah {puts}. Untuk {
for b in 1..nilai2 } ini berfungsi sebagai pencetak “ “ yang mengulang dari 1
sampai dengan nilai di variabel nilai2, hasilnya akan berbentuk segitiga
siku-siku terbalik. Untuk { for c in
1..a } ini berfungsi sebagai pencetak "^ " yang mengulang dari 1
sampai dengan nilai di a, hasilnya akan berbentuk segitiga sama sisi. Untuk { for
d in 1..nilai } ini berfungsi sebagai pencetak "\\_\\" yang akan
mengulang dari 1 sampai dengan nilai yang di variabel nilai.
Pada listing di
atas variabel nilai3 memiliki nilai dari nilai variabel nilai dikurangi 2.
Untuk { for d in 1..nilai3 } ini berpengaruh terhadap kodingan yang
selanjutnya, for d ini akan mengulang dari 1 sampai dengan nilai yang ada pada
nilai3, lalu for d ini akan mencetak “ “. Di if d == 1 ini memiliki kondisi yang
berpatokan dari for d, jika for d bernilai 1 maka terjadi perulangan for a yang
akan mencetak “* “ sebanyak dai 1 sampai dengan nilai yang di variabel nilai.
Pada elsifnya berkondisikan for d = nilai variabel nilai3, lalu terjadi
perulangan for b yang akan mencetak “m “ sebanyak dai 1 sampai dengan nilai
yang di variabel nilai. Pada else-nya berisikan for e yang mengulang dari 1
sampai dengan nilai di variabel nilai. Di dalam for e ini akan menjalankan if
yang berkondisi jika for e ini bernilai 1 atau bernilai pada variabel nilai
maka akan mencetak “* “, selain dari nilai 1 atau nilai di variabel nilai maka
program akan mencetak “ “. Lalu for a
akan mengulang 1 sampai nilai dan akan mencetak "|#{a}|".
Output
Tidak ada komentar:
Posting Komentar