<?php
// Fungsi untuk menghitung total harga barang
function hitungTotalHarga($harga, $jumlah, $diskon = 0, $pajak = 0) {
    $subtotal = $harga * $jumlah; // Menghitung subtotal
    $potonganDiskon = $subtotal * ($diskon / 100); // Diskon
    $setelahDiskon = $subtotal - $potonganDiskon; // Setelah diskon
    $jumlahPajak = $setelahDiskon * ($pajak / 100); // Pajak
    return $setelahDiskon + $jumlahPajak; // Total
}

// Meminta jumlah barang dari pengguna
echo "jumlah barang yang ingin dibeli: ";
$jumlahBarang = (int) trim(fgets(STDIN)); // Membaca input jumlah barang

// Array untuk menyimpan data barang
$barang = [];

// Input data barang secara dinamis
for ($i = 0; $i < $jumlahBarang; $i++) {
    echo "Masukkan nama barang ke-" . ($i + 1) . ": ";
    $nama = trim(fgets(STDIN)); // Nama barang

    echo "Masukkan harga barang ke-" . ($i + 1) . ": ";
    $harga = (float) trim(fgets(STDIN)); // Harga barang

    echo "Masukkan jumlah barang ke-" . ($i + 1) . ": ";
    $jumlah = (int) trim(fgets(STDIN)); // Jumlah barang

    // Menyimpan data ke dalam array
    $barang[] = ["nama" => $nama, "harga" => $harga, "jumlah" => $jumlah];
}

// Variabel untuk menyimpan total keseluruhan
$totalKeseluruhan = 0;

// Perulangan untuk memproses setiap barang
foreach ($barang as $item) {
    $nama = $item["nama"];
    $harga = $item["harga"];
    $jumlah = $item["jumlah"];

    // Diskon: Jika harga barang lebih dari 50.000, diskon 10%
    $diskon = ($harga > 50000) ? 10 : 0;

    // Hitung total harga untuk barang ini
    $totalBarang = hitungTotalHarga($harga, $jumlah, $diskon, 5); // Pajak 5%
    $totalKeseluruhan += $totalBarang; // Tambahkan ke total keseluruhan

    // Tampilkan hasil untuk setiap barang
    echo "\n\nNama Barang: $nama\n";
    echo "Harga: Rp " . number_format($harga, 0, ',', '.') . "\n";
    echo "Jumlah: $jumlah\n";
    echo "Diskon: $diskon%\n";
    echo "Total Harga (setelah diskon dan pajak): Rp " . number_format($totalBarang, 0, ',', '.') . "\n\n";
}

// Tampilkan total keseluruhan
echo "Total Keseluruhan: Rp " . number_format($totalKeseluruhan, 0, ',', '.') . "\n";
?>
