Sunday, December 14, 2014

Contoh Bahasa C Algoritma Gaji Karyawan



Habis dapat materi algoritma di STMIK MUHAMMADIYAH PAGUYANGAN, saya mencoba membuat contoh program menentukan Gaji karyawan berdasarkan jabatan, jumlah hari kerja dan tunjangan tunjangannya tentunya dalam bahasa C. untuk menjalankannya boleh pakai aplikasi CodeBlock atau bisa juga dengan DEV++ yang disini saya peroleh aplikasinya dari mas Arief Setia Sandi 
berikut ini Coding beserta sedikit keterangannya yang berada diantar tanda /*   */  

#include <stdio.h>
#include <string.h>
#include <conio.h>
/*Semua Teks Dalam Tanda Seperti ini Hanya Petunjuk Saja
tidak akan muncul ketika program dijalankan karena
tidak termasuk dalam Coding/penulisan Format bahasa C-nya
Jika ingin melihat jelas Codingnya silakan hapus semua teks
yang diapit tanda  */

int main (void)
{int j,x;
   char nm[100],no[100]; /* [100] maksudnya Character maksimal berjumlah 100*/
   float hr,ghr,k,p,mt,gp;

    /* KETERANGAN Variabel j adalah jabatan, nm =NAMA, no=NOMER,
    hr=HARI KERJA, ghr=Gaji Kotor,
    k= TUNJANGAN KESEHATAN, p= Tunjangan PENDIDIKAN,
    mt=Tunjangan MASA TUA, gp=GAJI POKOK*/

    printf("^^^^^ Data Gaji Karyawan SPARTAN Corporation ^^^^^ \n\n");
    printf("1. Masukan Nama Anda              = ");gets(nm);
    /*gets digunakan agar bisa membaca spasi dalam kalimat*/
    printf("2. Masukan Nomer Identitas Anda   = ");gets(no);
    printf("\n3. Saudara %s Silakan Pilih Jabatan :",nm);
    /* tanda %s memanggil dan meletakan nama(nm)*/
    printf("\n   1. Direktur");
    printf("\n   2. Sekretaris");
    printf("\n   3. Bendahara");
    printf("\n   4. Karyawan/Karyawati");
    printf("\n   5. Office Boy/Girl");
    printf("\n\nMasukan Pilihan Jabatan Anda di Spartan Corporations = ");scanf("%d",&j);
    /* Switch = untuk membaca nomer pilihan jabatan yang dimasukan
     dan CASE untuk menampilkan sesuai data SWITCH
     BREAK sebagai Akhiran dari tiap CASE*/
    printf("\nNAMA     : %s\n",nm);
    printf("Nomer ID : %s",no);
    switch(j){
    case 1:
    printf("\nJabatan  : Direktur\n\n");
    printf ("Gaji Harian Anda adalah Rp. 150.000");
    printf("\nTunjangan Anda Meliputi (Dalam Persen) :");
    printf("\n   a. Kesehatan  = 5% ");
    printf("\n   b. Pendidikan = 3% ");
    printf("\n   c. Masa Tua   = 3% ");
    break;
    case 2:
    printf("\nJabatan  : Sekretaris\n\n");
    printf ("Gaji Harian Anda adalah Rp. 125.000,-");
    printf("\nTunjangan Anda Meliputi (Dalam Persen) :");
    printf("\n   a. Kesehatan  = 4%");
    printf("\n   b. Pendidikan = 2%");
    printf("\n   c. Masa Tua   = 3%");
    break;
    case 3:
    printf("\nJabatan  : Bendahara\n\n");
    printf ("Gaji Harian Anda adalah Rp. 100.000,-");
    printf("\nTunjangan Anda Meliputi (Dalam Persen) :");
    printf("\n   a. Kesehatan  = 3%");
    printf("\n   b. Pendidikan = 2%");
    printf("\n   c. Masa Tua   = 2%");
    break;
    case 4:
    printf("\nJabatan  : Karyawan/Karyawati\n\n");
    printf ("Gaji Harian Anda adalah Rp. 90.000,-");
    printf("\nTunjangan Anda Meliputi :");
    printf("\n   a. Kesehatan  = 2%");
    printf("\n   b. Pendidikan = 2%");
    printf("\n   c. Masa Tua   = 2%");
    break;
    case 5:
    printf("\nJabatan  : Office Boy/Girl\n\n");
    printf ("Gaji Harian Anda adalah Rp. 75.000,-");
    printf("\nTunjangan Anda Meliputi (Dalam Persen) :");
    printf("\n   a. Kesehatan  = 1%");
    printf("\n   b. Pendidikan = 1%");
    printf("\n   c. Masa Tua   = 2%");
    break;
    default:/*DEFAULT=artinya jika CASE JABATAN selain angka 1-5
        akan muncul dibawah ini*/
    printf ("\n\nMOHON MAAF PILIHAN TIDAK TERSEDIA ");
};

/*IF (j<6)digunakan jika Jabatan yg dipilih
adalah 1-5 maka muncul perintah dibawahnya */
if (j<6)
    {
    printf("\n\n4. Berapa Hari Anda Bekerja Bulan Ini = ");scanf("%f",&hr);}
if (hr>31){
    printf("\nSaudara %s Jumlah Hari yang Anda masukan melebihi batas 1 bulan\n\n\n",nm);}
if (hr<=31){
    switch(j){
    case 1:
    ghr=hr*150000;  /*Rumus Ini Menyesuaikan Gaji Harian
                    dan Presentase Tunjangan Berdasarkan JABATAN (j)*/
    k=(ghr*5)/100;
    p=(ghr*3)/100;
    mt=(ghr*3)/100;
    gp=(ghr-k-p-mt);
    printf ("\n1. Gaji Kotor Anda = Rp%.0f",ghr);
    printf ("\n2. Tunjangan Kesehatan Anda = Rp %.0f",k);
    printf ("\n3. Tunjangan Pendidikan Anda = Rp %.0f",p);
    printf ("\n4. Tunjangan Masa Tua Anda = Rp %.0f",mt);
    printf ("\n\nGaji Yang Anda Terima Sejumlah = Rp %.0f",gp);
    break;

    case 2:
    ghr=hr*125000;
    k=(ghr*4)/100;
    p=(ghr*2)/100;
    mt=(ghr*3)/100;
    gp=(ghr-k-p-mt);
    printf ("\n1. Gaji Kotor Anda = Rp %.0f",ghr);
    printf ("\n2. Tunjangan Kesehatan Anda = Rp %.0f",k);
    printf ("\n3. Tunjangan Pendidikan Anda = Rp %.0f",p);
    printf ("\n4. Tunjangan Masa Tua Anda = Rp %.0f",mt);
    printf ("\n\nGaji Yang Anda Terima Sejumlah = Rp %.0f",gp);
    break;

    case 3:
    ghr=hr*100000;
    k=(ghr*3)/100;
    p=(ghr*2)/100;
    mt=(ghr*2)/100;
    gp=(ghr-k-p-mt);
    printf ("\n1. Gaji Kotor Anda = Rp %.0f",ghr);
    printf ("\n2. Tunjangan Kesehatan Anda = Rp %.0f",k);
    printf ("\n3. Tunjangan Pendidikan Anda = Rp %.0f",p);
    printf ("\n4. Tunjangan Masa Tua Anda = Rp %.0f",mt);
    printf ("\n\nGaji Yang Anda Terima Sejumlah = Rp %.0f",gp);
    break;

    case 4:
    ghr=hr*90000;
    k=(ghr*2)/100;
    p=(ghr*2)/100;
    mt=(ghr*2)/100;
    gp=(ghr-k-p-mt);
    printf ("\n1. Gaji Kotor Anda = Rp %.0f",ghr);
    printf ("\n2. Tunjangan Kesehatan Anda = Rp %.0f",k);
    printf ("\n3. Tunjangan Pendidikan Anda = Rp %.0f",p);
    printf ("\n4. Tunjangan Masa Tua Anda = Rp %.0f",mt);
    printf ("\n\nGaji Yang Anda Terima Sejumlah = Rp %.0f",gp);
                break;

    case 5:
    ghr=hr*75000;
    k=(ghr*1)/100;
    p=(ghr*1)/100;
    mt=(ghr*2)/100;
    gp=(ghr-k-p-mt);
    printf ("\n1. Gaji Kotor Anda    = Rp %.0f",ghr);
    printf ("\n2. Tunjangan Kesehatan Anda   = Rp  %.0f",k);
    printf ("\n3. Tunjangan Pendidikan Anda   = Rp  %.0f",p);
    printf ("\n4. Tunjangan Masa Tua Anda  = Rp %.0f",mt);
    printf ("\n\nGaji Yang Anda Terima Sejumlah   = Rp %.0f",gp);
    break;
    default:
    printf ("\SILAKAN ULANGI KEMBALI\n\n\n");}
}
    if (j<6)
    if (hr<=31){
    printf("\n\n\n=====SILAKAN PRINTOUT DATA INI DAN HUBUNGI KASIR=====");
    printf("\n\n*****************SPARTAN CORPORATIONS****************\n\n\n");
    printf(" ");scanf("%d",x);}
    return 0;
    }


semoga bermanfaat buat pembaca dan silakan kembangankan lagi kreatifitas anda.
#SalamSPARTAN 
Follow Me on Twitter @Nurul_Spartan99 

No comments: