Program Sederhana Toko Minuman dengan Fungsi Rekursif, Array, Control Flow pada C

Bismillah…

Pada kesempatan ini  saya akan berbagi tutorial cara membuat sebuah program yang didalamnya ada variable, fungsi/fungsi rekursif, array, string, control flow, operator, perulangan, struct. adapun program ini saya beri nama SEGAR SHOP.

A. Deskripsi Program

Program ini merupakan sebuah program sederhana untuk menghitung sebuah pembelian minuman, dengan ketentuan.

1. jika pembelian minuman lebih besar atau sama dengan dari 50 buah, maka mendapatkan bonus 3 buah.

2. jika pembelian minuman lebih besar atau sama dengan 30 buah, maka mendapatkan bonus 2.

3. jika pembelian minuman lebih besar atau sama dengan 10 buah, maka mendapatkan bonus 1 buah, dan jika pembelian kurang dari itu maka tidak mendapatkan bonus.

pertama-tama user harus login terlebih dahulu, yaitu memasukkan username dan password, jika berhasil maka user bisa langsung melakukan pemberlian, jika tidak berhasil maka user harus mengulangnya sebanyak 3 kali, jika masih gagal maka tidak dapat mengakses program ini dan selesai.

B. Flowchart Diagram

Berikut ini rancangan Flowchart Diagram dari program SEGAR SHOP

segar shoop

untuk lebih jelasnya KLIK DISINI

C. Kode Program


#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(){
 struct login
 {
 char pas1[20];
 char pas2[20];
 }login;

int jml, pilihan1;
 int hbigcola=3000, hmineral=2000, hsprite=5000, hfanta=5000, hfres=5000, htp=5000, hmizone=5000;
 int banding1, banding2, ulang;
 printf("\t\t=== SEGAR SHOP APPLLICATION ===\n");
 printf("\t\t==Created By Nurfiah 49010385==\n");

for(ulang=1; ulang<=3; ulang++){
 printf("\nMasukkan Username :");
 gets(login.pas1);
 printf("Masukkan Password :");
 gets(login.pas2);

banding1=strcmp(login.pas1, "NURFIAH");
 banding2=strcmp(login.pas2, "MASNOER");

 if(banding1==0 && banding2==0){
 printf("\n=========== Login Berhhasil =========== \n", login.pas1, login.pas2);
 printf("Selamat Datang!!\n \n%s\n", login.pas1);
 printf("\n========== Menu SEGAR Shop ============\n");
 printf("1. Big Cola \t\t 2. Mizone \n");
 printf("3. Air Mineral \t\t 4. Fanta \n");
 printf("5. Sprite \t\t 6. Frestea \n");
 printf("7. Teh Pucuk \t\t 0. Keluar\n");
 printf("=========================================\n");

printf("\nMasukkan Pilihan Anda : ");
 scanf("%d", &pilihan1);

switch (pilihan1)
 {
 case 1:
 printf("Berapa Jumlah Pembelian Big Cola : ");
 scanf("%d", &jml);
 printf("Total Pembelian = %d\n", total(hbigcola,jml));
 if(jml >=50)
 printf("Selamat Anda Mendapatkan Bonus 3 Buah Big Cola \n");
 else if(jml >=30)
 printf("Selamat Anda Mendapatkan Bonus 2 Buah Big Cola \n");
 else if(jml >=10)
 printf("Selamat Anda Mendapatkan Bonus 1 Buah Big Cola \n");
 else
 printf("Maaf Anda Tidak Mendapatkan Bonus \n");
 break;
 case 2:
 printf("Berapa Jumlah Pembelian Mizone : ");
 scanf("%d", &jml);
 printf("Total Pembelian = %d\n", total(hmizone,jml));
 if(jml >=50)
 printf("Selamat Anda Mendapatkan Bonus 3 Buah Mizone \n");
 else if(jml >=30)
 printf("Selamat Anda Mendapatkan Bonus 2 Buah Mizone \n");
 else if(jml >=10)
 printf("Selamat Anda Mendapatkan Bonus 1 Buah Mizone\n");
 else
 printf("Maaf Anda Tidak Mendapatkan Bonus \n");
 break;
 case 3:
 printf("Berapa Jumlah Pembelian Air Mineral : ");
 scanf("%d", &jml);
 printf("Total Pembelian = %d\n", total(hmineral,jml));
 if(jml >=50)
 printf("Selamat Anda Mendapatkan Bonus 3 Buah Air Mineral \n");
 else if(jml >=30)
 printf("Selamat Anda Mendapatkan Bonus 2 Buah Air Meneral \n");
 else if(jml >=10)
 printf("Selamat Anda Mendapatkan Bonus 1 Buah Air Mineral \n");
 else
 printf("Maaf Anda Tidak Mendapatkan Bonus \n");
 break;
 case 4 :
 printf("Berapa Jumlah Pembelian Fanta : ");
 scanf("%d", &jml);
 printf("Total Pembelian = %d\n", total(hfanta,jml));
 if(jml >=50)
 printf("Selamat Anda Mendapatkan Bonus 3 Buah Fanta\n");
 else if(jml >=30)
 printf("Selamat Anda Mendapatkan Bonus 2 Buah Fanta \n");
 else if(jml >=10)
 printf("Selamat Anda Mendapatkan Bonus 1 Buah Fanta \n");
 else
 printf("Maaf Anda Tidak Mendapatkan Bonus \n");
 break;
 case 5:
 printf("Berapa Jumlah Pembelian Sprite: ");
 scanf("%d", &jml);
 printf("Total Pembelian = %d\n", total(hsprite,jml));
 if(jml >=50)
 printf("Selamat Anda Mendapatkan Bonus 3 Buah Sprite\n");
 else if(jml >=30)
 printf("Selamat Anda Mendapatkan Bonus 2 Buah Sprite \n");
 else if(jml >=10)
 printf("Selamat Anda Mendapatkan Bonus 1 Buah Sprite \n");
 else
 printf("Maaf Anda Tidak Mendapatkan Bonus \n");
 break;
 case 6:
 printf("Berapa Jumlah Pembelian Frestea : ");
 scanf("%d", &jml);
 printf("Total Pembelian = %d\n", total(hfres,jml));
 if(jml >=50)
 printf("Selamat Anda Mendapatkan Bonus 3 Buah Frestea \n");
 else if(jml >=30)
 printf("Selamat Anda Mendapatkan Bonus 2 Buah Frestea \n");
 else if(jml >=10)
 printf("Selamat Anda Mendapatkan Bonus 1 Buah Frestea \n");
 else
 printf("Maaf Anda Tidak Mendapatkan Bonus \n");
 break;
 case 7:
 printf("Berapa Jumlah Pembelian Teh Pucuk : ");
 scanf("%d", &jml);
 printf("Total Pembelian = %d\n", total(htp,jml));
 if(jml >=50)
 printf("Selamat Anda Mendapatkan Bonus 3 Buah Teh Pucuk \n");
 else if(jml >=30)
 printf("Selamat Anda Mendapatkan Bonus 2 Buah Teh Pucuk \n");
 else if(jml >=10)
 printf("Selamat Anda Mendapatkan Bonus 1 Buah Teh Pucuk\n");
 else
 printf("Maaf Anda Tidak Mendapatkan Bonus \n");
 break;
 case 8:
 exit;
 break;
 default:
 break;
 }
 printf("=========================================\n");
 system("pause");
 return (0);
 }
 else
 {
 printf("\t\t====== Password Anda Salah ====== \n");
 printf("\t\t====== Coba Lagi =======\n");
 }
}
printf("\t======Akses Ditolak====== \n");
system("pause");
return(0);
}

int total(int a, int b){
 if (b==0)
 return 0;
 else
 return a + total(a, b-1);
}

D. Video Tutorial

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout /  Ubah )

Foto Google

You are commenting using your Google account. Logout /  Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout /  Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout /  Ubah )

Connecting to %s