Latihan kode program C++ kali ini akan membahas soal untuk membuat persegi bintang. Materi ini melatih logika program, terutama pemahaman terkait konsep perulangan bersarang (nested loop).
Soal Membuat Persegi Bintang
Buatlah kode program C++ untuk menampilkan gambar persegi dalam bentuk kumpulan karakter bintang (karakter *
). Kode program butuh satu nilai input, yakni besar persegi yang diinginkan user.
Sebagai contoh, jika diinput angka 5, maka berikut tampilan hasil kode program:
Input besar persegi: 5 * * * * * * * * * * * * * * * * * * * * * * * * *
Atau jika diinput angka 7, maka tampilan akhirnya adalah:
Input besar persegi: 7 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Tips Membuat Kode Program Persegi Bintang
Soal ini melatih pemahaman terkait perulangan bersarang (nested loop). Berikut tutorial pendahuluan yang bisa diikuti:
Kita perlu membuat perulangan bersarang atau nested loop untuk memecahkan soal ini. Perulangan luar (outer loop) akan dipakai untuk membuat tinggi persegi, dan perulangan dalam (inner loop) dipakai untuk membuat lebar persegi.
Kode Program C++ Persegi Bintang
Berikut salah satu solusi dari soal membuat persegi bintang menggunakan bahasa pemrograman C++:
#include <iostream> using namespace std; int main() { cout << "## Program C++ Persegi Bintang ##" << endl; cout << "===================================" << endl; cout << endl; int besar_persegi,i,j; cout << "Input besar persegi: "; cin >> besar_persegi; cout << endl; for(i=1;i<=besar_persegi;i++) { for(j=1;j<=besar_persegi;j++) { cout << " *"; } cout << endl; } return 0; }
Hasil kode program:
Kode program ini meminta satu inputan yang disimpan ke dalam variabel besar_persegi. Variabel inilah yang nantinya akan menjadi penentu kondisi akhir dari perulangan for.
Proses menampilkan karakter bintang dilakukan oleh perulangan for di baris 18 – 23. Perulangan luar, yakni dengan variabel counter i dipakai untuk membuat tinggi persegi. Ini dimulai dari i = 1
 hingga i <= besar_persegi
.
Jika pada saat proses input nilai besar_persegi
berisi angka 5, maka perulangan luar akan dijalankan sebanyak 5 kali.
Dalam setiap iterasi, jalankan perulangan dalam serta sebuah perintah cout << endl
di baris 22. Perintah endl
ini dipakai untuk proses pindah baris. Alternatif lain bisa juga menggunakan perintah cout << "\n"
.
Perulangan dalam dengan variabel counter j, dipakai untuk membuat karakter bintang. Karena kita membuat sebuah persegi, maka proses perulangan juga dilakukan mulai dari j = 1
hingga j <= besar_persegi
.
Dalam setiap iterasi, jalankan perintah cout << " *"
. Tanda spasi sebelum karakter bintang dipakai agar kotak persegi kita menjadi lebih rapi.
Latihan soal ini memang cukup sederhana, tapi menjadi dasar dari kode program membuat bentuk bintang lain yang lebih kompleks seperti persegi panjang bintang, segitiga bintang, hingga piramida bintang.
makasi bang kalo bole banyakin lagi bang
soal latihan algoritma nya
karna logika saya masih jelek
makasi bang
kalo ada saran ada situs yg belajar algoritma juga gak bang
makasi bang
untuk latihan soal boleh ke website tlx.toki gan , di sana ada kursus c++ dari awal , latihannya juga menantang
kalo udah selesai kursus c++ di tlx TOKI mungkin bisa mengerjakan problem atau ikut kontes di Codeforces gan
Mas, kalo di python kan bisa mengalikan string
Misal print('#'*10) yang hasilnya ##########.
Kalo di c++ bisa juga nggak ya, apa harus pake perulangan?
Iya, itu salah satu "perintah special" di Python. Mayoritas bahasa pemrograman lain tidak ada, termasuk C++. Jadi memang harus pakai perulangan.
Update: barusan ketemu caranya, bisa seperti ini:
cout << string(6, '#') ; // ######