Latihan Kode Program Bahasa C: Membuat Pola Belah Ketupat Bintang

Membuat kode program belah ketupat bintang bisa disebut menjadi salah satu soal "legend" dalam latihan algoritma menggunakan bahasa C.

Ini karena kode yang diperlukan cukup kompleks karena setidaknya kita butuh 6 perulangan yang saling bersambung satu sama lain.

Latihan ini menguji pemahaman tentang logika program serta penggunaan perulangan bersarang (nested loop). Dalam beberapa soal, belah ketupat bintang ini disebut juga sebagai diamond bintang.


Soal Belah Ketupat Bintang

Buatlah kode program dalam bahasa C untuk menampilkan gambar belah ketupat atau diamond dalam bentuk kumpulan bintang (karakter *). Kode program butuh satu inputan yang dipakai untuk menentukan lebar belah ketupat.

Berikut contoh tampilan akhir yang diinginkan (1) :

## Program Bahasa C Belah Ketupat Bintang ##
============================================

Input lebar belah ketupat: 5

     *
    * *
   * * *
  * * * *
 * * * * *
  * * * *
   * * *
    * *
     *

Berikut contoh tampilan akhir yang diinginkan (2) :

## Program Bahasa C Belah Ketupat Bintang ##
============================================

Input lebar belah ketupat: 7

       *
      * *
     * * *
    * * * *
   * * * * *
  * * * * * *
 * * * * * * *
  * * * * * *
   * * * * *
    * * * *
     * * *
      * *
       *

Tips Membuat Kode Program Belah Ketupat 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.

Pada dasarnya belah ketupat bintang adalah gabungan dari piramida bintang dan piramida bintang terbalik dalam satu program. Artinya kita butuh 6 buah perulangan for untuk membuatnya. Karena itu pemahaman tentang kode program membuat piramida bintang sangat diperlukan.


Kode Program Bahasa C Belah Ketupat

Berikut salah satu solusi dari soal membuat belah ketupat menggunakan bahasa pemrograman C:

#include <stdio.h>

int main(void)
{
  printf("## Program Bahasa C Belah Ketupat Bintang ## \n");
  printf("============================================ \n\n");

  int lebar_belah_ketupat,i,j,k;

  printf("Input lebar belah ketupat: ");
  scanf("%d",&lebar_belah_ketupat);

  printf("\n");

  for(i=1;i<=lebar_belah_ketupat;i++) {

    for(j=1;j<=lebar_belah_ketupat-i;j++) {
      printf(" ");
    }

    for(k=1;k<=i;k++) {
      printf(" *");
    }
    printf("\n");
  }

  for(i=1;i<lebar_belah_ketupat;i++) {

    for(j=1;j<=i;j++) {
      printf(" ");
    }

    for(k=1;k<=lebar_belah_ketupat-i;k++) {
      printf(" *");
    }
    printf("\n");
  }

  return 0;
}

Hasil kode program:

Latihan Kode Program Bahasa C - Membuat Pola Belah Ketupat Bintang

Kode program meminta satu inputan yang disimpan ke dalam variabel lebar_belah_ketupat menggunakan perintah scanf("%d",&lebar_belah_ketupat) di baris 11. Variabel inilah yang nantinya akan menjadi penentu kondisi akhir dari perulangan for.

Proses menampilkan karakter bintang dilakukan oleh 6 perulangan for antara baris 15 – 37. Seperti yang dijelaskan dalam bagian tips, kode ini merupakan gabungan dari kode membuat piramida bintang dan piramida bintang terbalik.

Tiga perulangan for pertama antara baris 15 – 25 dipakai untuk membuat sisi atas belah ketupat. Sedangkan tiga perulangan for berikutnya antara baris 27 – 37 dipakai untuk membuat sisi bawah belah ketupat.

Perulangan luar pertama dimulai dari i = 1 sampai i <= lebar_belah_ketupat. Sedangkan perulangan luar kedua dimulai dari i = 1 sampai i < lebar_belah_ketupat.

Sedikit perbedaan dari penggunaan tanda <= dan < adalah agar alas piramida atas tidak berhimpit dengan alas piramida bawah. Dalam setiap perulangan i, jalankan perulangan j dan k untuk membuat pola piramida dan pola piramida terbalik.


Demikian soal dan jawaban kode program membuat pola belah ketupat bintang dalam bahasa C.

Kode yang diperlukan memang cukup kompleks karena butuh 6 buah perulangan for yang saling terhubung satu sama lain. Semoga bisa bermanfaat.

Add Comment