NIM : 13117040
1
BAB I
PENDAHULUAN
1. Rumusan Masalah
1. Apa manfaat dari pembuatan struk pembayaran?
2. Apa kerugian tanpa struk pembayaran?
3. Apakah keuntungan dari pembuatan struk tersebut?
BAB 2
ISI
Program Menu Belanja dibuat untuk mempermudah kedua pihak yang bertransaksi,
baik penjual maupun pembeli. Kedua pihak menjadi mudah menghitung jumlah, harga, dan
menjadi bukti nyata apabila ada yang melapor kesalahan jumlah uang belanja yang di bayar
maupun yang lainnya
2
a. Algoritma Program/flowchart
b.
Start
c.
d.
Silahkan Masukkane. Pilihannya
f.
1.Beli Bahan Sembako Pilihan g.
Menu : 2. Kembalikan Belanjaan
h.
1. Beli Bahan Sembako
i. Belanjaan
4. Selesai 2. Kembalikan 3. Tunjukkan
3. Tunjukkan
4. Selesai
Daftar Belanja :
1.Beras
2. Gula Pasir
3. Minyak Goreng
4. Daging
5. Telur
6.Susu
7. Jagung
8. Minyak Tanah
9. Garam
output
End
3
Start : Memulai Program
b. Komplesitas Algoritme
#include <stdio.h>
#include <stdlib.h>
struct Node
{
int bhn;
struct Node *las;
}*ginjang;
void pop()
{
struct Node *temp, *var=ginjang;
if(var==ginjang)
{
ginjang = ginjang->las;
free(var);
else
printf("\nKeranjang Belanja Kosong"); //Tampilan Ketika Keluar Tanpa Ada Belanjaan
4
temp=(struct Node *)malloc(sizeof(struct Node));
temp->bhn=shop;
if (ginjang==NULL)
{
ginjang=temp;
ginjang->las=NULL;
}
else
{
temp->las=ginjang;
ginjang=temp;
}
}
void display()
{
struct Node *var=ginjang;
if(var!=NULL)
{
printf("\nIsi keranjang :");
while(var!=NULL)
{
if (var->bhn==1){
printf("->Beras",var->bhn);
var=var->las;
}else if (var->bhn==2){
printf("->Gula Pasir",var->bhn);
var=var->las;
}else if (var->bhn==3){
printf("->Minyak Goreng",var->bhn);
var=var->las;
}else if (var->bhn==4){
printf("->Daging",var->bhn);
var=var->las;
}else if (var->bhn==5){
printf("->Telur",var->bhn);
var=var->las;
}else if (var->bhn==6){
printf("->Susu",var->bhn);
var=var->las;
}else if (var->bhn==7){
printf("->Jagung",var->bhn);
var=var->las;
}else if (var->bhn==8){
printf("->Minyak Tanah",var->bhn);
var=var->las;
}else if (var->bhn==9){
printf("->Garam",var->bhn);
var=var->las;
}
5
}
}
else
printf("\nBelanja Masih Kosong\n");
}
c. Perancangan GUI
6
{
pop();
break;
}
case 3:
{
display();
break;
}
case 4:
{
struct Node *temp;
while(ginjang!=NULL)
{
temp = ginjang->las;
free(ginjang);
ginjang=temp;
}
exit(0);
}
default:
{
printf("\n Salah Masukan Pak,Bu... :)");//Ketika Salah Input
}
}
#include <stdio.h>
#include <stdlib.h>
struct Node
{
int bhn;
struct Node *las;
}*ginjang;
void pop()
{
struct Node *temp, *var=ginjang;
if(var==ginjang)
{
ginjang = ginjang->las;
free(var);
7
}
else
printf("\nKeranjang Belanja Kosong"); //Tampilan Ketika Keluar Tanpa Ada Belanjaan
{
ginjang=temp;
ginjang->las=NULL;
}
else
{
temp->las=ginjang;
ginjang=temp;
}
}
void display()
{
struct Node *var=ginjang;
if(var!=NULL)
{
printf("\nIsi keranjang :");
while(var!=NULL)
{
if (var->bhn==1){
printf("->Beras",var->bhn);
var=var->las;
}else if (var->bhn==2){
printf("->Gula Pasir",var->bhn);
var=var->las;
}else if (var->bhn==3){
printf("->Minyak Goreng",var->bhn);
var=var->las;
}else if (var->bhn==4){
printf("->Daging",var->bhn);
var=var->las;
}else if (var->bhn==5){
printf("->Telur",var->bhn);
var=var->las;
8
}else if (var->bhn==6){
printf("->Susu",var->bhn);
var=var->las;
}else if (var->bhn==7){
printf("->Jagung",var->bhn);
var=var->las;
}else if (var->bhn==8){
printf("->Minyak Tanah",var->bhn);
var=var->las;
}else if (var->bhn==9){
printf("->Garam",var->bhn);
var=var->las;
}
}
}
else
printf("\nBelanja Masih Kosong\n");
}
9
printf("\n1) Beras\n2) Gula Pasir\n3) Minyak Goreng\n4) Daging\n5) Telur\n6)
Susu\n7) Jagung \n8) Minyak Tanah\n9) Garam ");//Pilihan Menu
printf("\nMasukkan Nomor Pilihan Barang: ");//Input Belanjaa
scanf("%d",&pembeli);
push(pembeli);
break;
}
case 2:
{
pop();
break;
}
case 3:
{
display();
break;
}
case 4:
{
struct Node *temp;
while(ginjang!=NULL)
{
temp = ginjang->las;
free(ginjang);
ginjang=temp;
}
exit(0);
}
default:
{
printf("\n Salah Masukan Pak,Bu... :)");//Ketika Salah Input
}
}
scanf("%d",&rotasi);
}while(rotasi==1);
}
10
e. Screen Shoot Tampilan Program
11
BAB III
PENUTUP
1. Kesimpulan
• Pembayaran dengan mekanisme struk bermanfaat bagi kedua belah pihak yang
bertransaksi
• Kerugian melakukan pembayaran tradisional antara lain lama, kemungkinan terjadi
kesalahan pembayaran dan kembalian lebih besar
• Keuntungan dengan memakai struk lebih cepat dan kesalahan di minimalisasi
2. Daftar Pustaka
• Modul Praktikum Pemecahan Masalah Dengan Bahasa C Institut Teknologi
Sumatera
12