Contoh soal membuat persegi angka dalam bahasa Pascal cukup sering ditemui. Latihan ini menguji pemahaman logika dasar serta konsep perulangan bersarang (nested loop).
Soal Persegi Angka
Buatlah kode program dalam bahasa Pascal untuk menampilkan gambar persegi dalam bentuk susunan angka. Agar lebih bervariasi, kita akan buat dalam 3 bentuk angka. Kode program butuh satu inputan yang dipakai untuk menentukan besar persegi.
Berikut variasi deret persegi angka pertama (soal 1):
## Program Pascal Persegi Angka ## ==================================== Input besar persegi: 8 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 6 6 6 6 6 6 6 6 7 7 7 7 7 7 7 7 8 8 8 8 8 8 8 8
Berikut variasi deret persegi angka kedua (soal 2):
## Program Pascal Persegi Angka ## ================================== Input besar persegi: 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5
Berikut variasi deret persegi angka ketiga (soal 3):
## Program Pascal Persegi Angka ## ================================== Input besar persegi: 7 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
Variasi angka di setiap bentuk persegi sebenarnya hanya perlu sedikit modifikasi. Ini sangat pas untuk menguji logika bagaimana cara menampilkan setiap angka.
Tips Membuat persegi Angka
Soal ini melatih pemahaman terkait perulangan bersarang (nested loop) serta logika dasar programming. Berikut tutorial pendahuluan yang bisa diikuti:
- Pengertian Variabel dalam Bahasa Pascal
- Pengertian Tipe Data Integer Bahasa Pascal
- Perulangan FOR DO Bahasa Pascal
- Latihan Kode Program Pascal: Segitiga Bintang
- Latihan Kode Program Pascal: Persegi Bintang
Kita perlu perulangan bersarang atau nested loop untuk memecahkan soal ini. Perulangan luar (outer loop) dipakai untuk menentukan tinggi persegi, serta perulangan dalam (inner loop) untuk membuat lebar persegi.
Jika anda sudah bisa memahami kode program pembuatan segitiga angka, tidak akan kesulitan dalam membuat deret persegi angka ini.
Kode Program Pascal Membuat Persegi Angka (1)
Pada soal pertama, deret angka dibuat bersambung pada setiap baris, akan tetapi di baris tersebut angka yang tampil tetap sama. Berikut salah satu solusi untuk membuatnya:
program persegi_angka; uses crt; var besar_persegi,i,j: integer; begin clrscr; writeln('## Program Pascal Persegi Angka ##'); writeln('===================================='); writeln; write('Input besar persegi: '); readln(besar_persegi); writeln; for i := 1 to besar_persegi do begin for j := 1 to besar_persegi do begin write(i,' '); end; writeln; end; readln; end.
Hasil kode program:
Kode program ini meminta satu inputan yang disimpan ke dalam variabel besar_persegi. Variabel inilah yang menjadi penentu kondisi akhir dari perulangan for.
Proses menampilkan deret angka dilakukan oleh perulangan for di baris 15 – 22. Perulangan luar dengan variabel counter i dipakai untuk membuat tinggi persegi. Ini dimulai dari i := 1
hingga besar_persegi
.
Jika pada saat proses input nilai besar_persegi
berisi angka 8, maka perulangan luar akan dijalankan sebanyak 8 kali.
Dalam setiap iterasi, jalankan perulangan dalam serta sebuah perintah writeln
di baris 21. Perintah ini dipakai untuk proses pindah baris.
Perulangan dalam dengan variabel counter j dipakai untuk membuat deret. Dalam setiap iterasi, jalankan perintah write(i,' ')
. Tanda spasi setelah variabel i dipakai agar angka tidak berdempet satu sama lain.
Kode Program Pascal Membuat Persegi Angka (2)
Pada soal kedua, deret angka akan berulang di setiap baris. Untuk membuatnya kita perlu memodifikasi sedikit angka yang ditampilkan:
program persegi_angka; uses crt; var besar_persegi,i,j: integer; begin clrscr; writeln('## Program Pascal Persegi Angka ##'); writeln('===================================='); writeln; write('Input besar persegi: '); readln(besar_persegi); writeln; for i := 1 to besar_persegi do begin for j := 1 to besar_persegi do begin write(j,' '); end; writeln; end; readln; end.
Hasil kode program:
Bisakah anda menebak letak perbedaan kode program ini dengan kode kita sebelumnya? Yup, hanya 1 karakter saja, yakni perintah write(j,' ')
di baris 19. Sebelumnya yang ditampilkan adalah variabel i, sekarang cukup diganti menjadi variabel j.
Kode Program Pascal Membuat Persegi Angka (3)
Untuk soal ketiga, deret angka bersambung dari angka pertama hingga angka terakhir. Berikut kode yang diperlukan:
program persegi_angka; uses crt; var besar_persegi,i,j,k: integer; begin clrscr; writeln('## Program Pascal Persegi Angka ##'); writeln('===================================='); writeln; write('Input besar persegi: '); readln(besar_persegi); writeln; for i := 1 to besar_persegi do begin for j := 1 to besar_persegi do begin k := k + 1; write(k,' '); end; writeln; end; readln; end.
Hasil kode program:
Modifikasi dari kode sebelumnya berupa penambahan satu variabel baru, yakni k.
Variabel k akan dinaikkan (di-increment) dalam inner loop dengan perintah k := k + 1
 di baris 19. Setelah itu tampilkan dengan perintah write(k,' ')
. Hasilnya, isi variabel k akan selalu bersambung dalam setiap iterasi.
Sebagai tambahan, bentuk persegi ini sedikit kurang rapi karena saat sampai ke angka yang terdiri dari 2 digit, besar persegi terdorong jauh ke kanan.
Agar tampilan persegi lebih rapi, kita bisa set padding karakter angka:
program persegi_angka; uses crt; var besar_persegi,i,j,k: integer; begin clrscr; writeln('## Program Pascal Persegi Angka ##'); writeln('===================================='); writeln; write('Input besar persegi: '); readln(besar_persegi); writeln; for i := 1 to besar_persegi do begin for j := 1 to besar_persegi do begin k := k + 1; write(k:2,' '); end; writeln; end; readln; end.
Perintah write(k:2,' ')
di baris 20 dipakai untuk men-set lebar setiap angka sebesar 2 karakter. Hasilnya, tampilan persegi tetap rapi dari angka 1 hingga 64.
Demikian contoh kode program membuat persegi angka dalam bahasa Pascal. Semoga bisa bermanfaat.