# Latihan

### Contoh Latihan Perulangan dengan \`For\`

Berikut adalah contoh implementasi dari latihan yang diminta menggunakan PHP native dengan HTML:

### Contoh 1: Menampilkan Angka dari 1 hingga 10

```php
<?php for ($i = 1; $i <= 10; $i++) : ?>
    <h1>Angka: <?= $i; ?></h1>
<?php endfor; ?>
```

**Penjelasan:**

* Inisialisasi `$i = 1`.
* Loop berjalan selama `$i <= 10`.
* Setiap iterasi, angka akan ditampilkan menggunakan tag `<h1>`.
* Nilai `$i` ditambah 1 setiap iterasi.

***

### Contoh 2: Menghitung Jumlah Bilangan dari 1 hingga 100

```php
<?php
$jumlah = 0;
for ($i = 1; $i <= 100; $i++) :
    $jumlah += $i;
endfor;
?>
<h1>Jumlah: <?= $jumlah; ?></h1>
```

**Penjelasan:**

* Inisialisasi `$i = 1` dan `$jumlah = 0`.
* Loop berjalan selama `$i <= 100`.
* Setiap iterasi, nilai `$i` ditambahkan ke variabel `$jumlah`.
* Setelah loop selesai, jumlah total akan ditampilkan.

***

### Contoh 3: Menampilkan Bilangan Genap dari 1 hingga 20

```php
<?php for ($i = 2; $i <= 20; $i += 2) : ?>
    <h1>Bilangan Genap: <?= $i; ?></h1>
<?php endfor; ?>
```

**Penjelasan:**

* Inisialisasi `$i = 2`.
* Loop berjalan selama `$i <= 20`.
* Setiap iterasi, bilangan genap akan ditampilkan menggunakan tag `<h1>`.
* Nilai `$i` ditambah 2 setiap iterasi.

***

### Contoh 4: Iterasi Melalui Array dengan `for` Loop

```php
<?php
$buah = array("Apel", "Pisang", "Jeruk", "Mangga");
for ($i = 0; $i < count($buah); $i++) : ?>
    <h1>Buah: <?= $buah[$i]; ?></h1>
<?php endfor; ?>
```

**Penjelasan:**

* Inisialisasi `$i = 0`.
* Loop berjalan selama `$i < count($buah)`.
* Setiap iterasi, elemen array `$buah` akan ditampilkan berdasarkan indeksnya menggunakan tag `<h1>`.
* Nilai `$i` ditambah 1 setiap iterasi.

***

### Contoh 5: Menampilkan Matriks 2D

```php
<?php
$matriks = array(
    array(1, 2, 3),
    array(4, 5, 6),
    array(7, 8, 9)
);
for ($i = 0; $i < count($matriks); $i++) :
    for ($j = 0; $j < count($matriks[$i]); $j++) : ?>
        <?= $matriks[$i][$j] . " "; ?>
    <?php endfor; ?>
    <br>
<?php endfor; ?>
```

**Penjelasan:**

* Loop luar mengontrol baris (`$i`), loop dalam mengontrol kolom (`$j`).
* Setiap iterasi, elemen dari matriks 2D akan ditampilkan dengan spasi di antara elemen.
* Setelah satu baris selesai, `<br>` digunakan untuk pindah ke baris berikutnya.

***

### Contoh Latihan Perulangan dengan \`While\`

Berikut adalah implementasi dari contoh-contoh menggunakan `while` loop dalam PHP yang dipadukan dengan HTML:

### Contoh 1: Menampilkan Angka dari 1 hingga 10

```php
<?php
$i = 1;
while ($i <= 10) : ?>
    <h1>Angka: <?= $i; ?></h1>
    <?php $i++;
endwhile; ?>
```

**Penjelasan:**

* Inisialisasi `$i = 1`.
* Loop berjalan selama `$i <= 10`.
* Setiap iterasi, angka akan ditampilkan menggunakan tag `<h1>`.
* Nilai `$i` ditingkatkan 1 setiap iterasi.

***

### Contoh 2: Menghitung Jumlah Bilangan dari 1 hingga 100

```php
<?php
$jumlah = 0;
$i = 1;
while ($i <= 100) :
    $jumlah += $i;
    $i++;
endwhile;
?>
<h1>Jumlah: <?= $jumlah; ?></h1>
```

**Penjelasan:**

* Inisialisasi `$i = 1` dan `$jumlah = 0`.
* Loop berjalan selama `$i <= 100`.
* Setiap iterasi, nilai `$i` ditambahkan ke variabel `$jumlah`.
* Setelah loop selesai, jumlah total akan ditampilkan.

***

### Contoh 3: Menampilkan Bilangan Genap dari 1 hingga 20

```php
phpCopy code<?php
$i = 2;
while ($i <= 20) : ?>
    <h1>Bilangan Genap: <?= $i; ?></h1>
    <?php $i += 2;
endwhile; ?>
```

**Penjelasan:**

* Inisialisasi `$i = 2`.
* Loop berjalan selama `$i <= 20`.
* Setiap iterasi, bilangan genap akan ditampilkan menggunakan tag `<h1>`.
* Nilai `$i` ditambah 2 setiap iterasi.

***

### Contoh 4: Iterasi Melalui Array dengan `while` Loop

```php
phpCopy code<?php
$buah = array("Apel", "Pisang", "Jeruk", "Mangga");
$i = 0;
while ($i < count($buah)) : ?>
    <h1>Buah: <?= $buah[$i]; ?></h1>
    <?php $i++;
endwhile; ?>
```

**Penjelasan:**

* Inisialisasi `$i = 0`.
* Loop berjalan selama `$i < count($buah)`.
* Setiap iterasi, elemen array `$buah` akan ditampilkan berdasarkan indeksnya menggunakan tag `<h1>`.
* Nilai `$i` ditambah 1 setiap iterasi.

***

### Contoh 5: Menampilkan Matriks 2D dengan `while` Loop

```php
phpCopy code<?php
$matriks = array(
    array(1, 2, 3),
    array(4, 5, 6),
    array(7, 8, 9)
);

$i = 0;
while ($i < count($matriks)) :
    $j = 0;
    while ($j < count($matriks[$i])) : ?>
        <?= $matriks[$i][$j] . " "; ?>
        <?php $j++;
    endwhile; ?>
    <br>
    <?php $i++;
endwhile; ?>
```

**Penjelasan:**

* Loop luar mengontrol baris (`$i`), loop dalam mengontrol kolom (`$j`).
* Setiap iterasi, elemen dari matriks 2D akan ditampilkan dengan spasi di antara elemen.
* Setelah satu baris selesai, `<br>` digunakan untuk pindah ke baris berikutnya.
* Nilai `$i` dan `$j` ditambah 1 setiap iterasi.

***

### Contoh Latihan Perulangan dengan Menggunakan D0-While

Berikut ini adalah 5 contoh latihan menggunakan perulangan `do-while` dengan menggabungkan HTML, beserta penjelasannya:

### Contoh 1: Menampilkan Angka Ganjil dari 1 hingga 19

```php
phpCopy code<?php
$i = 1;
do : ?>
    <h1>Angka Ganjil: <?= $i; ?></h1>
    <?php $i += 2;
while ($i < 20); ?>
```

**Penjelasan:**\
Latihan ini menggunakan perulangan `do-while` untuk menampilkan angka-angka ganjil dari 1 hingga 19. Perulangan dimulai dengan $i = 1 dan setiap iterasi, $i ditambahkan dengan 2. Loop ini berjalan selama $i kurang dari 20.

### Contoh 2: Menghitung Total Bilangan Genap dari 2 hingga 20

```php
phpCopy code<?php
$total = 0;
$i = 2;
do : ?>
    <?php $total += $i; ?>
    <?php $i += 2;
while ($i <= 20); ?>
<h1>Total Bilangan Genap: <?= $total; ?></h1>
```

**Penjelasan:**\
Perulangan ini menjumlahkan semua bilangan genap dari 2 hingga 20. Variabel $total digunakan untuk menyimpan hasil penjumlahan. Pada setiap iterasi, nilai $i ditambahkan ke $total, dan kemudian $i ditambah 2. Loop berhenti saat $i melebihi 20.

### Contoh 3: Menampilkan Daftar Buah

```php
phpCopy code<?php
$buah = ["Apel", "Pisang", "Jeruk", "Mangga"];
$i = 0;
do : ?>
    <h1>Buah: <?= $buah[$i]; ?></h1>
    <?php $i++;
while ($i < count($buah)); ?>
```

**Penjelasan:**\
Contoh ini menampilkan daftar buah yang terdapat dalam array $buah. Loop ini akan terus berjalan hingga seluruh buah dalam array ditampilkan. Nilai $i digunakan sebagai indeks untuk mengakses elemen-elemen array.

### Contoh 4: Menghitung Faktorial dari 5

```php
phpCopy code<?php
$faktorial = 1;
$i = 5;
do : ?>
    <?php $faktorial *= $i; ?>
    <?php $i--;
while ($i > 0); ?>
<h1>Faktorial dari 5: <?= $faktorial; ?></h1>
```

**Penjelasan:**\
Latihan ini menghitung faktorial dari 5 dengan menggunakan perulangan `do-while`. Variabel $faktorial digunakan untuk menyimpan hasil perkalian, dan loop terus berjalan hingga $i mencapai 0.

### Contoh 5: Menampilkan Tabel Perkalian 2

```php
phpCopy code<?php
$i = 1;
do : ?>
    <h1>2 x <?= $i; ?> = <?= 2 * $i; ?></h1>
    <?php $i++;
while ($i <= 10); ?>
```

**Penjelasan:**\
Latihan ini menggunakan perulangan `do-while` untuk menampilkan tabel perkalian 2 dari 1 hingga 10. Pada setiap iterasi, hasil perkalian antara 2 dan $i ditampilkan, dan loop akan berjalan hingga $i mencapai 10.

***

### Contoh Latihan Perulangan dengan \`foreach\`

Berikut adalah 5 contoh latihan penggunaan `foreach` di PHP dengan menggabungkan HTML, beserta penjelasannya:

### **Contoh Latihan 1: Menampilkan Daftar Nama**

**Contoh Kode:**

```php
phpCopy code<?php
$nama = ['Andi', 'Budi', 'Cici', 'Dedi'];

foreach ($nama as $orang) : ?>
    <h1>Nama: <?= $orang; ?></h1>
<?php endforeach; ?>
```

**Penjelasan:**

* **Inisialisasi Array**: `$nama` adalah array yang berisi daftar nama.
* **Perulangan `foreach`**: Setiap elemen dalam array `$nama` diakses satu per satu dan disimpan dalam variabel `$orang`.
* **Output**: Nama dari setiap elemen akan ditampilkan dalam tag `<h1>`.

### **Contoh Latihan 2: Menampilkan Daftar Angka**

**Contoh Kode:**

```php
phpCopy code<?php
$angka = [1, 2, 3, 4, 5];

foreach ($angka as $num) : ?>
    <h1>Angka: <?= $num; ?></h1>
<?php endforeach; ?>
```

**Penjelasan:**

* **Inisialisasi Array**: `$angka` adalah array yang berisi angka 1 hingga 5.
* **Perulangan `foreach`**: Setiap angka dalam array `$angka` diakses dan disimpan dalam variabel `$num`.
* **Output**: Setiap angka akan ditampilkan dalam tag `<h1>`.

### **Contoh Latihan 3: Menampilkan Daftar Buah**

**Contoh Kode:**

```php
phpCopy code<?php
$buah = ['Apel', 'Mangga', 'Pisang', 'Jeruk'];

foreach ($buah as $jenis) : ?>
    <h1>Buah: <?= $jenis; ?></h1>
<?php endforeach; ?>
```

**Penjelasan:**

* **Inisialisasi Array**: `$buah` adalah array yang berisi nama-nama buah.
* **Perulangan `foreach`**: Setiap elemen dalam array `$buah` disimpan dalam variabel `$jenis`.
* **Output**: Nama buah akan ditampilkan dalam tag `<h1>`.

### **Contoh Latihan 4: Menampilkan Daftar Warna**

**Contoh Kode:**

```php
phpCopy code<?php
$warna = ['Merah', 'Hijau', 'Biru', 'Kuning'];

foreach ($warna as $color) : ?>
    <h1>Warna: <?= $color; ?></h1>
<?php endforeach; ?>
```

**Penjelasan:**

* **Inisialisasi Array**: `$warna` adalah array yang berisi nama warna.
* **Perulangan `foreach`**: Setiap warna dalam array `$warna` diakses dan disimpan dalam variabel `$color`.
* **Output**: Nama warna akan ditampilkan dalam tag `<h1>`.

### **Contoh Latihan 5: Menampilkan Daftar Hewan**

**Contoh Kode:**

```php
phpCopy code<?php
$hewan = ['Kucing', 'Anjing', 'Gajah', 'Singa'];

foreach ($hewan as $binatang) : ?>
    <h1>Hewan: <?= $binatang; ?></h1>
<?php endforeach; ?>
```

**Penjelasan:**

* **Inisialisasi Array**: `$hewan` adalah array yang berisi nama-nama hewan.
* **Perulangan `foreach`**: Setiap elemen dalam array `$hewan` disimpan dalam variabel `$binatang`.
* **Output**: Nama hewan akan ditampilkan dalam tag `<h1>`.
