#include <stdio.h>

int main() {
    char nama[50];
    float gajiPokok, tunjangan, jamLembur;
    float upahLembur, totalGaji, potongan, gajiBersih;

    printf("========================================\n");
    printf("       PROGRAM MENGHITUNG GAJI          \n");
    printf("              KARYAWAN                  \n");
    printf("========================================\n");

    printf("\nMasukkan nama karyawan : ");
    scanf(" %[^\n]", nama);

    printf("Masukkan gaji pokok    : Rp");
    scanf("%f", &gajiPokok);

    printf("Masukkan tunjangan     : Rp");
    scanf("%f", &tunjangan);

    printf("Masukkan jumlah jam lembur : ");
    scanf("%f", &jamLembur);

    if (gajiPokok < 0 || tunjangan < 0 || jamLembur < 0) {
        printf("\nData yang dimasukkan tidak valid.\n");
    }
    else {
        upahLembur = jamLembur * 25000;

        totalGaji = gajiPokok + tunjangan + upahLembur;

        potongan = totalGaji * 0.05;

        gajiBersih = totalGaji - potongan;

        printf("\n========================================\n");
        printf("             HASIL PERHITUNGAN          \n");
        printf("========================================\n");

        printf("Nama karyawan     : %s\n", nama);
        printf("Gaji pokok        : Rp%.2f\n", gajiPokok);
        printf("Tunjangan         : Rp%.2f\n", tunjangan);
        printf("Upah lembur       : Rp%.2f\n", upahLembur);
        printf("Total gaji        : Rp%.2f\n", totalGaji);
        printf("Potongan 5%%       : Rp%.2f\n", potongan);
        printf("----------------------------------------\n");
        printf("Gaji bersih       : Rp%.2f\n", gajiBersih);
        printf("========================================\n");

        if (jamLembur > 0) {
            printf("Karyawan mendapat upah lembur.\n");
        }
        else {
            printf("Karyawan tidak memiliki jam lembur.\n");
        }

        printf("\nTerima kasih.\n");
    }

    return 0;
}
