Advertisement
MuhTaufiq

CodingC

Dec 25th, 2017
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 9.98 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <conio.h>
  4.  
  5. void informasi();
  6. void editing();
  7. int hapus();
  8. void transaksi();
  9.  
  10. int pesan=0;
  11. int selesai=0;
  12. int jml=9;
  13. int jml1=11;
  14. int jumlahhari;
  15.  
  16. struct date
  17. {
  18.     int hari;
  19.     int bulan;
  20.     int tahun;
  21. };
  22.  
  23. struct customer
  24. {
  25.     char nama[50];
  26.     char alamat[50];
  27.     char tlp[20];
  28. };
  29.  
  30. struct customer data_pelanggan[100]=
  31. {
  32.     {"Taufiq","Keputih","082231550836"},
  33.     {"Fanus","TMB","081232218692"},
  34.     {"Frisco","TMB","085645945696"},
  35.     {"Anas","Gebang","085733145883"},
  36.     {"Fifi","Gebang","085204961178"},
  37.     {"Riva","Gebang","088804800503"},
  38.     {"Adhi","TMB","085607678087"},
  39.     {"Rintan","Gebang","083845402351"},
  40.     {"Defa","Gebang","08976778252"},
  41.     {"Annisa","Gebang","085257823795"},
  42. };
  43.  
  44. struct car
  45. {
  46.     char jenis[50];
  47.     int harga;
  48.     char kondisi[10];
  49. };
  50.  
  51. struct car data_mobil[100]=
  52. {
  53.     {"Innova       ",400000,"Siap"},
  54.     {"Ertiga       ",250000,"Siap"},
  55.     {"Mobilio      ",300000,"Siap"},
  56.     {"Evalia       ",250000,"Siap"},
  57.     {"Grand Livina ",250000,"Siap"},
  58.     {"Avanza       ",250000,"Siap"},
  59.     {"APV          ",250000,"Siap"},
  60.     {"Luxio        ",250000,"Siap"},
  61.     {"Xenia        ",250000,"Siap"},
  62.     {"Sigra        ",250000,"Siap"},
  63.     {"Calya        ",250000,"Siap"},
  64.     {"Sienta       ",250000,"Siap"},
  65. };
  66.  
  67. struct pemesanan
  68. {
  69.     char nama[50];
  70.     char alamat[50];
  71.     char tlp[50];
  72.     char jenis[50];
  73.     struct date tanggal_mulai;
  74.     struct date tanggal_kembali;
  75.     int biaya;
  76.     int total;
  77. };
  78.  
  79. struct pemesanan pesanmobil[100];
  80.  
  81. int main()
  82. {
  83.     int pilih,hps;
  84.  
  85.     system("cls");
  86.     printf("\t\t\t\t\tSELAMAT DATANG DI RENTAL MOBIL D3 A\n");
  87.     printf("Menu :\n");
  88.     printf("1. Informasi\n");
  89.     printf("2. Transaksi\n");
  90.     printf("3. Tambahkan Data User\n");
  91.     printf("4. Hapus Data User\n");
  92.  
  93.     printf("Masukkan Pilihan = ");
  94.     scanf("%d", &pilih);
  95.  
  96.     switch(pilih)
  97.     {
  98.     case 1 :
  99.         informasi();
  100.         break;
  101.     case 2 :
  102.         transaksi();
  103.         break;
  104.     case 3 :
  105.         tambah();
  106.         break;
  107.     case 4 :
  108.         printf("Masukkan ID User yang akan di hapus : ");
  109.         scanf("%d", &hps);
  110.         hapus(hps);
  111.         break;
  112.     default :
  113.         printf("Pilihan Anda Tidak Anda!!\n");
  114.         printf("Silahkan Masukkan Pilihan Dengan Benar");
  115.         break;
  116.  
  117.     }
  118.  
  119.  
  120. }
  121.  
  122. void informasi()
  123. {
  124.     int i,j,pilih,pilih1;
  125.     char jawab;
  126.  
  127.     system("cls");
  128.     printf("\t\tPilihan\n");
  129.     printf("1. Informasi Mobil\n");
  130.     printf("2. Informasi User\n");
  131.     printf("3. Informasi Pemesan\n");
  132.  
  133.     printf("Masukkan Pilihan = ");
  134.     scanf("%d", &pilih);
  135.  
  136.     switch(pilih)
  137.     {
  138.  
  139.     case 1:
  140.         printf("\t\t\t\tINFORMASI MOBIL\n\n");
  141.  
  142.         printf("******************************************************************\n");
  143.         printf("*                     RENTAL MOBIL                               *\n");
  144.         printf("******************************************************************\n");
  145.         printf(" _________________________________________________________________\n");
  146.         printf("| Kode |        Jenis          |         Harga     |    Kondisi   | \n");
  147.  
  148.         for(i=0; i<=jml1; i++)
  149.         {
  150.             printf("    %-2d       %-10s          %d             %-10s\n",i+1,data_mobil[i].jenis,data_mobil[i].harga,data_mobil[i].kondisi);
  151.  
  152.         }
  153.  
  154.         printf("\n1. Kembali ke menu sebelumnya\n");
  155.         printf("2. Kembali ke menu awal\n");
  156.         fflush(stdin);
  157.         printf("Masukkan pilihan = ");
  158.         scanf("%d", &pilih1);
  159.  
  160.         if(pilih1==1)
  161.             informasi();
  162.         else main();
  163.         break;
  164.  
  165.     case 2 :
  166.         printf("\n\n\t\t\t\tData Pelanggan\n\n");
  167.  
  168.         printf(" __________________________________________________\n");
  169.         printf("| kode |Nama Pelanggan |Alamat    | No.telp       | \n");
  170.  
  171.         for(i=0; i<=jml; i++)
  172.         {
  173.  
  174.             printf("    %d     %-8s      %-8s   %-8s   \n",i+1,data_pelanggan[i].nama,data_pelanggan[i].alamat,data_pelanggan[i].tlp);
  175.  
  176.  
  177.         }
  178.  
  179.         printf("\n\n1. Kembali ke menu sebelumnya\n");
  180.         printf("2. Kembali ke menu awal\n");
  181.         fflush(stdin);
  182.         printf("Masukkan pilihan = ");
  183.         scanf("%d", &pilih1);
  184.  
  185.         if(pilih1==1)
  186.             informasi();
  187.         else main();
  188.         break;
  189.  
  190.     case 3:
  191.         printf("\t\t\t\tINFORMASI PEMESAN\n\n");
  192.         printf("\t *********************************************************************************************************\n");
  193.         printf("\t *                                           DATA PEMESAN                                                *\n");
  194.         printf("\t *********************************************************************************************************\n");
  195.         printf("\t  ________________________________________________________________________________________________________\n");
  196.         printf("\t |    Nama    | Alamat  |     No Telp     | Jenis    | Tgl.Pinjam   |  Tgl.kembali  |  Biaya    |  Total|\n");
  197.         printf("\t |            |         |                 |          |              |               |           |       |\n");
  198.         printf("\t |_______________________________________________________________________________________________________\n");
  199.         printf("\n\n");
  200.  
  201.         printf("1. Kembali ke menu sebelumnya\n");
  202.         printf("2. Kembali ke menu awal\n");
  203.         fflush(stdin);
  204.         printf("Masukkan pilihan = ");
  205.         scanf("%d", &pilih1);
  206.  
  207.         if(pilih1==1)
  208.             informasi();
  209.         else main();
  210.         break;
  211.  
  212.         fflush(stdin);
  213.         printf("\nKembali ke menu awal [Y/T] ?? ");
  214.         jawab=getchar();
  215.         if(jawab=='Y' || 'y')
  216.             main();
  217.     }
  218. }
  219.  
  220. void tambah()
  221. {
  222.     char jawab;
  223.  
  224.     do
  225.     {
  226.         jml++;
  227.         fflush(stdin);
  228.         printf("\nMasukkan nama pelanggan = ");
  229.         gets(data_pelanggan[jml].nama);
  230.         printf("Alamat = ");
  231.         gets(data_pelanggan[jml].alamat);
  232.         printf("No Telepon = ");
  233.         gets(data_pelanggan[jml].tlp);
  234.  
  235.         printf("\n\nMau Memasukkan Data Lagi [Y/T] ?? ");
  236.         fflush(stdin);
  237.         jawab = getchar();
  238.         fflush(stdin);
  239.  
  240.     }
  241.     while(jawab=='Y' || jawab=='y');
  242.  
  243.     if(jawab!='Y' || jawab!='y');
  244.     main();
  245.  
  246. }
  247.  
  248. int hapus(int index)
  249. {
  250.     int i,k,pilih;
  251.     for(k=(index-1); k<=jml; k++)
  252.     {
  253.         strcpy(data_pelanggan[k].nama,data_pelanggan[k+1].nama);
  254.         strcpy(data_pelanggan[k].alamat,data_pelanggan[k+1].alamat);
  255.         strcpy(data_pelanggan[k].tlp,data_pelanggan[k+1].tlp);
  256.     }
  257.     jml--;
  258.  
  259.     printf("\n\n\t\t\t\tData Pelanggan\n\n");
  260.  
  261.     printf(" __________________________________________________\n");
  262.     printf("| kode |Nama Pelanggan |Alamat    | No.telp       | \n");
  263.  
  264.     for(i=0; i<=jml; i++)
  265.     {
  266.  
  267.         printf("    %d     %-8s      %-8s   %-8s   \n",i+1,data_pelanggan[i].nama,data_pelanggan[i].alamat,data_pelanggan[i].tlp);
  268.  
  269.  
  270.  
  271.     }
  272.     printf("\n\n1. Kembali ke menu sebelumnya\n");
  273.     fflush(stdin);
  274.     printf("Masukkan pilihan = ");
  275.     scanf("%d", &pilih);
  276.  
  277.     if(pilih==1)
  278.         main();
  279. }
  280.  
  281. void transaksi()
  282. {
  283.     int i,j,h,k,o;
  284.     char pelanggan[50];
  285.     char mobil[50];
  286.  
  287.     printf("Apakah anda sudah terdaftar ??\n\n");
  288.     printf("Silahkan Cari Nama Anda di Database Kami\n");
  289.     printf("Tulis Nama anda = ");
  290.     fflush(stdin);
  291.     gets(pelanggan);
  292.  
  293.     for(i=0; i<=jml; i++)
  294.     {
  295.         h=strnicmp(pelanggan,data_pelanggan[i].nama,strlen(pelanggan));
  296.         if(h==0)
  297.             break;
  298.     }
  299.         if(h!=0)
  300.         {
  301.             printf("Maaf Anda Belum terdaftar\nSilahkan Masukkan Data yang Kami Butuhkan\n");
  302.             tambah();
  303.         }
  304.  
  305.     system("cls");
  306.     printf("ANDA SUDAH TERDAFTAR!!\n\n");
  307.  
  308.     printf("\t\t\t\tINFORMASI MOBIL\n\n");
  309.  
  310.     printf("******************************************************************\n");
  311.     printf("*                     RENTAL MOBIL                               *\n");
  312.     printf("******************************************************************\n");
  313.     printf(" _________________________________________________________________\n");
  314.     printf("| Kode |        Jenis          |         Harga     |    Kondisi   | \n");
  315.  
  316.     for(j=0; j<=jml1; j++)
  317.     {
  318.         printf("    %-2d      %-10s          %d             %-10s\n",j+1,data_mobil[j].jenis,data_mobil[j].harga,data_mobil[j].kondisi);
  319.  
  320.     }
  321.  
  322.     printf("\n[Masukkan Nama Mobil Sesuai Pilihan Di Atas]\n");
  323.     printf("Masukkan nama mobil = ");
  324.     fflush(stdin);
  325.     gets(mobil);
  326.  
  327.  
  328.     for(j=0; j<=jml1; j++)
  329.     {
  330.         k=strnicmp(mobil,data_mobil[j].jenis,strlen(mobil));
  331.         if(k==0)
  332.             break;
  333.     }
  334.         if(k!=0)
  335.  
  336.     strcpy(pesanmobil[pesan].nama,data_pelanggan[i].nama);
  337.     strcpy(pesanmobil[pesan].alamat,data_pelanggan[i].alamat);
  338.     strcpy(pesanmobil[pesan].tlp,data_pelanggan[i].tlp);
  339.     strcpy(pesanmobil[pesan].jenis,data_mobil[j].jenis);
  340.  
  341.     printf("Mobil yang anda pesan adalah %s \n\n",pesanmobil[pesan].jenis);
  342.  
  343.     printf("PEMINJAMAN TIDAK BOLEH LEBIH DARI 20 HARI\n\n");
  344.     printf("Tanggal Pinjam = ");
  345.     fflush(stdin);
  346.     scanf("%d", &pesanmobil[pesan].tanggal_mulai.hari);
  347.     printf("Bulan Pinjam = ");
  348.     fflush(stdin);
  349.     scanf("%d", &pesanmobil[pesan].tanggal_mulai.bulan);
  350.     printf("Tahun Pinjam = ");
  351.     fflush(stdin);
  352.     scanf("%d", &pesanmobil[pesan].tanggal_mulai.tahun);
  353.     pesan++;
  354.  
  355.     printf("\n\nTanggal Kembali = ");
  356.     fflush(stdin);
  357.     scanf("%d", &pesanmobil[selesai].tanggal_kembali.hari);
  358.     printf("Bulan Pinjam = ");
  359.     fflush(stdin);
  360.     scanf("%d", &pesanmobil[selesai].tanggal_kembali.bulan);
  361.     printf("Tahun Pinjam = ");
  362.     fflush(stdin);
  363.     scanf("%d", &pesanmobil[selesai].tanggal_kembali.tahun);
  364.     selesai++;
  365.  
  366.     jumlahhari = (pesanmobil[selesai].tanggal_kembali.hari - pesanmobil[pesan].tanggal_mulai.hari);
  367.  
  368.     printf("%d", jumlahhari);
  369.  
  370. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement