Latihan Kode Program PHP: Membuat Pola Persegi Panjang Bintang

Latihan algoritma kode program PHP kali ini akan membahas cara membuat pola persegi panjang bintang. Materi ini melatih logika program, terutama pemahaman terkait konsep perulangan bersarang (nested loop).


Soal Membuat Pola Persegi Panjang Bintang

Buatlah kode program dalam bahasa PHP untuk menampilkan pola gambar persegi panjang dalam bentuk kumpulan karakter bintang (karakter *). Sebagai bonus, buat juga sebuah form untuk menginput tinggi dan lebar persegi.

Berikut contoh tampilan akhir yang diinginkan (1) :

Kode Program PHP - Persegi Panjang Bintang (5 x 10)

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

Berikut contoh tampilan akhir yang diinginkan (2) :

Kode Program PHP - Persegi Panjang Bintang (8 x 15)

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

Tips Membuat Kode Program Persegi Panjang Bintang

Soal ini melatih pemahaman terkait perulangan bersarang (nested loop). Berikut tutorial pendahuluan yang bisa di ikuti:

Kita perlu membuat perulangan bersarang atau nested loop untuk memecahkan soal ini. Perulangan luar (outer loop) dipakai untuk membuat tinggi persegi, dan perulangan dalam (inner loop) dipakai untuk membuat lebar persegi.


Kode Program PHP Pola Persegi Panjang Bintang

Berikut salah satu konsep dasar cara membuat pola persegi panjang bintang menggunakan bahasa pemrograman PHP:

<?php
  echo "<p>Kode Program PHP - Persegi Panjang Bintang (5 x 10)</p>";
  echo "<pre>";

  $tinggi_persegi = 5;
  $lebar_persegi = 10;
  for($i = 1; $i <= $tinggi_persegi; $i++) {
    for($j = 1; $j <= $lebar_persegi; $j++) {
      echo " *";
    }
    echo "<br>";
  }

  echo "</pre>";
?>

Hasil kode program:

Latihan Kode Program PHP - Membuat Pola Persegi Panjang Bintang

Kode program diawali dengan perintah echo untuk menampilkan tag <h1> yang berisi judul program, serta tag <pre> agar hasil persegi bintang terlihat lebih rapi.

Di baris 5-6, variabel $tinggi_persegi di isi angka 8, dan variabel $lebar_persegi di isi angka 15. Variabel inilah yang akan menentukan tinggi dan lebar persegi.

Proses menampilkan karakter bintang dilakukan oleh perulangan for di baris 7-12. Perulangan luar dengan variabel counter $i dipakai untuk membuat tinggi persegi. Ini dimulai dari  $i = 1 hingga $i <= $tinggi_persegi.

Karena saat ini variabel $tinggi_persegi berisi angka 8, maka perulangan luar akan dijalankan sebanyak 8 kali. Dalam setiap iterasi, jalankan perulangan dalam serta sebuah perintah echo "<br>" di baris 11 untuk proses pindah baris.

Perulangan dalam dengan variabel counter $j dipakai untuk membuat karakter bintang. Karena kita membuat pola persegi panjang, maka proses perulangan dilakukan sebanyak nilai yang tersimpan di variabel $lebar_persegi.

Dalam setiap iterasi, jalankan perintah echo " *". Perintah inilah yang akan menampilkan karakter spasi dan bintang. Jika tidak ingin ada jarak, silahkan hapus awalan spasi di " *".


Membuat Pola Persegi Panjang Bintang dengan Inputan Form

Jika ingin membuat kode program PHP yang bisa menerima nilai input dari user, maka butuh sebuah form HTML. Bahasan tentang cara memproses form lumayan panjang, jika butuh materi dasar bisa lanjut ke tutorial cara memproses form HTML dengan PHP.

Berikut kode program membuat pola persegi panjang bintang dengan perpaduan kode HTML, CSS dan PHP:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Latihan Soal Algoritma Bahasa PHP</title>
  <style>
    body  { text-align: center; font-family: "Trebuchet MS", serif; }
    h1,h2 { margin-bottom: 0; }
    hr    { width: 80%; }
    form  { margin-top: 2rem; }
    pre   { margin-top: 1.4rem; }
    .result {
      margin: 1rem auto; 
      padding: 0.25rem 0.25rem 1rem 0.25rem;
      background-color: ghostwhite;
      width: 50%;
    }
  </style>
</head>
<body>
  <h1>Kode Program PHP - Persegi Panjang Bintang</h1>
  <hr>
  <form action="" method="post">
    <div>
      Tinggi Persegi: <input type="text" name="tinggi_persegi" size="1">
      Lebar Persegi: <input type="text" name="lebar_persegi" size="1">
      <input type="submit" name="submit">
    </div>
  </form>
  
    <?php
      if (isset($_POST['submit'])) {
        $tinggi_persegi = $_POST['tinggi_persegi'];
        $lebar_persegi = $_POST['lebar_persegi'];

        echo "<div class='result'>";
        echo "<h2>Hasil Kode Program</h2>";
        echo "<span>($tinggi_persegi x $lebar_persegi)</span>";
        echo "<pre>";

        for($i = 1; $i <= $tinggi_persegi; $i++) {
          for($j = 1; $j <= $lebar_persegi; $j++) {
            echo " *";
          }
          echo "<br>";
        }
        echo "</pre>";
        echo "</div>";
      }
    ?>
  
</body>
</html>

Latihan Kode Program PHP - Membuat Pola Persegi Panjang Bintang dengan Form

Selain struktur dasar HTML, pada script ini juga terdapat kode CSS di dalam tag <style> untuk mempercantik tampilan halaman (baris 7-19).

Kode untuk membuat form HTML ada di baris 24-30. Di dalamnya terdapat 2 tag <input> untuk menampung nilai input tinggi_persegi dan lebar_persegi. Serta tag <input type="submit" name="submit"> untuk membuat tombol "Submit".

Kode PHP sendiri ada di baris 32-50. Kondisi if(isset($_POST['submit'])) berguna untuk memeriksa apakah form sudah di submit atau belum. Hanya jika kondisi ini terpenuhi, barulah kode PHP lain akan di proses.

Agar lebih praktis, nilai form yang tersimpan di global variable $_POST['tinggi_persegi'] dan $_POST['lebar_persegi'] dipindahkan ke variabel $tinggi_persegi dan $lebar_persegi pada baris 34-35.

Perintah echo antara baris 37-40 berguna untuk membuat struktur HTML sebagai tempat dari persegi panjang bintang kita. Setelah itu baru masuk ke perulangan for yang akan menampilkan pola persegi panjang bintang seperti bahasan sebelumnya.


Itulah tutorial singkat membahas cara membuat pola persegi panjang bintang menggunakan bahasa PHP.

Soal ini memang cukup sederhana, tapi menjadi dasar dari pembuatan pola bintang lain seperti segitiga bintang, piramida bintang hingga diamond bintang. Semua ini akan dibahas dalam tutorial terpisah.

Add Comment