More Related Content
PDF
Yohan jacobi gaussseidel_analisis DOCX
PDF
PDF
PDF
Ejercicios resueltos Practica 4 informatica II PDF
Introduction to Service Worker DOCX
PDF
Quiz Component For Joomla Viewers also liked
PPTX
Benedicto16 año.fe.13.jesucristo, mediador y plenitud de toda la revelación PPTX
Projektledarrollen vs scrum master juni 2013 PPTX
Tapas del martes 29 de mayo PPTX
PPTX
iPad technology to improve learning PDF
PDF
Volunteering in Malaysia: The Big Picture PPTX
PPT
PDF
PPTX
PDF
PPT
Grup 5 indonesia-arch_eco_tgl_13-6_-_2015_final PPTX
Benedicto16 año.fe18.renuncia al pontificado de la iglesia católica PPTX
Hijas de cristo rey school (1) blog PPTX
PDF
Gurdjieff ideas cosmologias 14 pags PPTX
DOCX
DOCX
Creating Value for the business through Strategic initiatives to gain Competi... Siti rusitaok1
- 1.
/**
------------------------------
Program Manipulasi DataLaundry
Diprogram oleh : Siti_Rusita
------------------------------
**/
#include <stdio.h>
#include <ctype.h>
#include <conio.h>
#include <stdlib.h>
#define UINT unsigned int
#define MAX 10
#define _MY_DEBUG
#if defined(_MY_DEBUG)
#define TRACE_LINE printf("n1. Line : %dn2. File :
%sn",__LINE__,__FILE__);
#else
#define TRACE_LINE
#endif
#define QUEST
printf("Ingin menggunakan program ini lagi (Y/N) : ");
scanf("%c",&opsi);
fflush(stdin);
if(toupper(opsi) == 'N') {
puts("nTerima Kasih Telah Menggunakan Program Ini!");
exit(0);
}
#define INCODE
int no;
printf("Masukkan No : ");
scanf("%d",&no);
fflush(stdin);
typedef struct {
UINT no;
char nama[2*MAX],tanggal[2*MAX],kar;
int kode,das,kaos,kem,jak,cel,rok,Jil,J,b;
double byr ;
} Data;
int TampilPilihan(Data*), /*1*/
idx = 0,
Search(Data*, int), /*2*/
isCheck(Data*), /*3*/
isMax(Data*), /*4*/
getSize(Data*); /*5*/
void Choice(Data*, int), /*6*/
Add(Data*), /*7*/
Edit(Data*, int), /*8*/
Delete(Data*, int), /*9*/
View(const Data*), /*10*/
Nomor(Data*), /*11*/
freeBuffer(Data*); /*12*/
/** Program Utama (Main Program) **/
int main(int argc, char *argv[]) {
system("COLOR 2");
Data *data = (Data*)calloc((MAX+1),sizeof(Data));
int pilihan;
while((pilihan = TampilPilihan(data)) != 6) {
- 2.
Choice(data,pilihan);
}
puts("nTerima Kasih TelahMenggunakan Program Ini!");
TRACE_LINE;
freeBuffer(data);
getch();
return(EXIT_SUCCESS);
}
int TampilPilihan(Data* data) {
int pilihan;
system("CLS");
puts("===Program Manipulasi Data Laundry===");
puts(" Menu Program");
if(isMax(data)) {
printf("1. ADD DATA [%d:MAX]n",getSize(data));
} else {
printf("1. ADD DATA [%d]n",getSize(data));
}
puts("2. EDIT DATA");
puts("3. DELETE DATA");
puts("4. VIEW DATA");
puts("5. NOMOR DATA");
puts("6. EXIT PROGRAM");
printf("Masukkan pilihan anda : ");
scanf("%d",&pilihan);
fflush(stdin);
return(pilihan);
}
void Choice(Data* data, int pilihan) {
char opsi;
switch(pilihan) {
case 1 : {
system("CLS");
if(isMax(data)) {
puts("Maaf, data sudah penuh!");
} else {
Add(data);
}
QUEST;
} break;
case 2 : {
system("CLS");
if(isCheck(data)) {
puts("Anda telah memilih "EDIT"");
INCODE;
if(Search(data,no)) {
Edit(data,idx);
} else {
puts("Maaf, data tidak ditemukan!");
}
} else {
puts("Maaf, data masih kosong!");
}
QUEST;
} break;
case 3 : {
system("CLS");
if(isCheck(data)) {
puts("Anda telah memilih "DELETE"");
INCODE;
- 3.
if(Search(data,no)) {
Delete(data,idx);
puts("Anda berhasilmenghapus data!");
} else {
puts("Maaf, data tidak ditemukan!");
}
} else {
puts("Maaf, data masih kosong!");
}
QUEST;
} break;
case 4 : {
system("CLS");
if(isCheck(data)) {
puts("Anda telah memilih "VIEW"");
INCODE;
if(Search(data,no)) {
View(&data[idx]);
} else {
puts("Maaf, data tidak ditemukan!");
}
} else {
puts("Maaf, data masih kosong!");
}
QUEST;
} break;
case 5 : {
system("CLS");
if(isCheck(data)) {
puts("Nomor yang sudah digunakan");
Nomor(data);
} else {
puts("Maaf, data masih kosong!");
}
QUEST;
} break;
default :
break;
}
}
void Add(Data* data) {
printf(" Laundry Warna-Warni n");
printf(" =========================================== n");
printf(" Paket Laundry: n");
printf(" 1 ekonomis 1 Rp 3.000n");
printf(" 2 ekonomis 2 Rp 4.000n");
printf(" 3 ekonomis 3 Rp 5.000n");
printf("n");
if(0 == getSize(data)) {
printf(" No. ");
scanf("%d",&data[0].no);
fflush(stdin);
if(!Search(data,data[0].no)) {
printf("Nama = ");
gets(data[0].nama);
printf("Tanggal = ");
gets(data[0].tanggal);
printf("n");
printf("No Jenis Pakaian Jumlah n");
printf("1. Daster/Piyama = ");
- 4.
scanf("%d",&data[0].das);
printf("2. Kaos =");
scanf("%d",&data[0].kaos);
printf("3. Kemeja/Jas = ");
scanf("%d",&data[0].kem);
printf("4. Jaket/Sweater = ");
scanf("%d",&data[0].jak);
printf("5. Celana Panjang/Pendek = ");
scanf("%d",&data[0].cel);
printf("6. Rok = ");
scanf("%d",&data[0].rok);
printf("7. Jilbab/Kerudung = ");
scanf("%d",&data[0].Jil);
printf("---------------------------------------------n");
printf("Berat Pakaian = ");
scanf("%d",&data[0].b);
printf("Paket Laundry = ");
scanf("%d",&data[0].kode);
J=das+kaos+kem+jak+cel+rok+Jil;
printf("Jumlah Pakaian = %.fn",J);
total = 0 ;
do
{
if (kode==1)
hrg = (float) 3000 * b ;
else if (kode==2)
hrg = (float) 4000 * b;
else if (kode==3)
hrg = (float) 5000 * b ;
total = total + hrg ;
} while (kar=='Y');
if (total)
byr = total - 0;
else
byr=total;
printf("nBiaya yang harus Anda bayar = Rp %.2fn", byr);
printf("^_^ terimakasih sudah menggunakan jasa kamin");
printf("Jumlah Pakaian = ");
scanf("%d",&data[0].J);
printf("Harga = Rp ");
scanf("%d",&data[0].byr);
fflush(stdin);
puts("Anda berhasil menambah data!");
} else {
puts("Maaf, data sudah ada!");
}
} else {
int i = getSize(data);
printf(" No. ");
scanf("%d",&data[i].no);
fflush(stdin);
if(!Search(data,data[i].no)) {
printf("Nama = ");
gets(data[i].nama);
fflush(stdin);
printf("Tanggal = ");
gets(data[i].tanggal);
fflush(stdin);
printf("n");
- 5.
printf("No Jenis PakaianJumlah n");
printf("1. Daster/Piyama = ");
scanf("%d",&data[i].das);
fflush(stdin);
printf("2. Kaos = ");
scanf("%d",&data[i].kaos);
fflush(stdin);
printf("3. Kemeja/Jas = ");
scanf("%d",&data[i].kem);
fflush(stdin);
printf("4. Jaket/Sweater = ");
scanf("%d",&data[i].jak);
fflush(stdin);
printf("5. Celana Panjang/Pendek = ");
scanf("%d",&data[i].cel);
fflush(stdin);
printf("6. Rok = ");
scanf("%d",&data[i].rok);
fflush(stdin);
printf("7. Jilbab/Kerudung = ");
scanf("%d",&data[i].Jil);
fflush(stdin);
printf("---------------------------------------------n");
printf("Berat Pakaian = ");
scanf("%d",&data[i].b);
fflush(stdin);
printf("Paket Laundry = ");
scanf("%d",&data[i].kode);
fflush(stdin);
printf("Jumlah Pakaian = ");
scanf("%d",&data[i].J);
fflush(stdin);
printf("Harga = Rp ");
scanf("%d",&data[i].byr);
fflush(stdin);
puts("Anda berhasil menambah data!");
} else {
puts("Maaf, data sudah ada!");
}
}
}
void Edit(Data* data, int index) {
int no;
puts("Data sekarang :");
printf(" No.
%dn",data[index].no);
printf("Nama = %sn",data[index].nama);
printf("Tanggal = %sn",data[index].tanggal);
printf("n");
printf("No Jenis Pakaian Jumlah n");
printf("1. Daster/Piyama = %dn",data[index].das);
printf("2. Kaos = %dn",data[index].kaos);
printf("3. Kemeja/Jas = %dn",data[index].kem);
printf("4. Jaket/Sweater = %dn",data[index].jak);
printf("5. Celana Panjang/Pendek = %dn",data[index].cel);
printf("6. Rok = %dn",data[index].rok);
printf("7. Jilbab/Kerudung = %dn",data[index].Jil);
printf("---------------------------------------------n");
printf("Berat Pakaian = %dn",data[index].b);
printf("Paket Lausry = %dn",data[index].kode);
printf("Jumlah Pakaian = %dn",data[index].J);
printf("Harga = Rp %dn",data[index].byr);
printf("n");
- 6.
printf("n");
puts("nData baru :");
printf("No. ");
scanf("%d",&no);
fflush(stdin);
if((!Search(data,no)) || (no == data[index].no)) {
data[index].no = no;
printf("Nama = ");
gets(data[index].nama);
fflush(stdin);
printf("Tanggal = ");
gets(data[index].tanggal);
fflush(stdin);
printf("n");
printf("No Jenis Pakaian Jumlah n");
printf("1. Daster/Piyama = ");
scanf("%d",&data[index].das);
fflush(stdin);
printf("2. Kaos = ");
scanf("%d",&data[index].kaos);
fflush(stdin);
printf("3. Kemeja/Jas = ");
scanf("%d",&data[index].kem);
fflush(stdin);
printf("4. Jaket/Sweater = ");
scanf("%d",&data[index].jak);
fflush(stdin);
printf("5. Celana Panjang/Pendek = ");
scanf("%d",&data[index].cel);
fflush(stdin);
printf("6. Rok = ");
scanf("%d",&data[index].rok);
fflush(stdin);
printf("7. Jilbab/Kerudung = ");
scanf("%d",&data[index].das);
fflush(stdin);
printf("---------------------------------------------n");
printf("Berat Pakaian = ");
scanf("%d",&data[index].b);
fflush(stdin);
printf("Paket Laundry = ");
scanf("%d",&data[index].kode);
fflush(stdin);
printf("Jumlah Pakaian = ");
scanf("%d",&data[index].J);
fflush(stdin);
printf("Harga = Rp ");
scanf("%d",&data[index].byr);
fflush(stdin);
puts("Anda berhasil menyunting data!");
} else {
puts("Maaf, kode sudah ada!");
}
}
void Delete(Data* data, int index) {
int i = index, size = getSize(data);
while(i < size) {
data[i] = data[i+1];
if(i == size) {
freeBuffer(&data[i]);
break;
}
++i;
- 7.
}
}
void View(const Data*data) {
puts("Data ditemukan!");
printf(" No. %dn",data->no);
printf("Nama = %sn",data->nama);
printf("Tanggal = %sn",data->tanggal);
printf("n");
printf("No Jenis Pakaian Jumlah n");
printf("1. Daster/Piyama = %dn",data->das);
printf("2. Kaos = %dn",data->kaos);
printf("3. Kemeja/Jas = %dn",data->kem);
printf("4. Jaket/Sweatwr = %dn",data->jak);
printf("5. Celana Panjang/Pendek = %dn",data->cel);
printf("6. Rok = %dn",data->rok);
printf("7. Jilbab/Kerudung = %dn",data->Jil);
printf("---------------------------------------------n");
printf("Berat Pakaian = %dn",data->b);
printf("Paket Laundry = %dn",data->kode);
printf("Jumlah Pakaian = %dn",data->J);
printf("Harga = Rp %dn",data->byr);
printf("n");
printf("n");
}
void Nomor(Data* data) {
int i;
for(i = 0; i < getSize(data); ++i) {
printf(" Nomor : %dn",(i+1),(i+1),data[i].no);
}
printf("n");
printf("n");
}
int Search(Data* data, int no) {
int i = 0, find = 0;
for(i = 0; i < getSize(data); ++i) {
find = no == data[i].no;
if(find) {
idx = i;
break;
}
}
return(find);
}
int isMax(Data* data) {
if(getSize(data) < MAX) {
return 0;
} else {
return 1;
}
}
int getSize(Data* data) {
int i = 0;
while(0 != data[i].nama[0]) {
++i;
}
return(i);
}
int isCheck(Data* data) {
if(0 != data->nama[0]) {
- 8.
return 1;
} else{
return 0;
}
}
void freeBuffer(Data* data) {
free(data);
data = NULL;
}