agusilham01

Structure with operation (Parkiran)

Mar 21st, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.72 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <conio.h>
  3. #include <math.h>
  4.  
  5. typedef struct parkir{
  6. float masuk;
  7. float keluar;
  8. int id;
  9. }parkir;
  10.  
  11. void main(){
  12.     parkir prk[2]; //Angka bisa diganti sesuai dengan berapa banyak perulangan untuk input
  13.     int i;
  14.     int harga=2000;
  15.     float jam;
  16.     float menit;
  17.     int total;
  18.    int bulat;
  19.    int dispen;
  20.  
  21.    clrscr();
  22.    printf("=== Pembayaran Parkir ADASNU ===\n");
  23.    printf("\nSilahkan masukkan data disini\n(Kurang dari 1 jam = 3000 || Lebih dari 1 jam = +2000 (Berlaku Kelipatan)\n\n");
  24.  
  25.     for (i=0;i<2;i++){ //Jika mengganti angka di struct parkir prk, maka angka pada for (i<angka) harus diganti sesuai dengan struct
  26.     printf("Masukkan ID Parkir:");
  27.         scanf("%d",&prk[i].id);
  28.         printf("Masukkan Jam Masuk: ");
  29.         scanf("%f",&prk[i].masuk);
  30.         printf("Masukkan Jam Keluar: ");
  31.         scanf("%f",&prk[i].keluar);
  32.       jam=prk[i].keluar-prk[i].masuk;
  33.       menit=jam*60;
  34.       dispen=menit-15; //dispensasi 15 menit atas masuk mencari parkiran yang kosong, keluar dari parkiran ke gate pembayaran atau gagal mendapatkan parkir
  35.       if(dispen > 60){  //jika lebih dari 1 jam (mulai dari menit ke 1, menit diambil dari dispen) maka harganya akan berbeda
  36.             bulat=ceil(jam); //pembulatan
  37.          total=bulat*harga+1000;
  38.         }
  39.         else if(dispen < 60){
  40.             total=1*3000;
  41.         }
  42.     }
  43.  
  44.     for (i=0;i<2;i++){ //Jika mengganti angka di struct parkir prk, maka angka pada for (i<angka) harus diganti sesuai dengan struct
  45.     printf("\nTotal Yang Harus Dibayar oleh motor dengan no. ID Parkir %d adalah sebesar Rp.%d",prk[i].id,total);
  46.     }
  47. getch();
  48. }
  49.  
  50. //I added some if function for better result
  51. //thanks stackoverflow for the solution
  52. //I added "dispen" variable for 15 minutes compessation of out from parking lot
Advertisement
Add Comment
Please, Sign In to add comment