12 Eylül 2008 Cuma

Eczane Programı

eczane işlerini görebilecek bir program


#include
#include
#include
#include

typedef struct{
char ilac_ad[20];
char barkod[20];
char ilac_firmasi[50];
double ilac_tutari;
double kdv;
char ilac_turu[20];
int ilac_adedi;
} İlacT;

typedef struct{
char eleman_adi[20];
char eleman_soyadi[20];
char eleman_unvani[20];
int eleman_yasi;
char eleman_tel_no[20];
char tc_kimlik[15];
} ElemanT;


typedef struct{
char eczane_ismi[20];
ElemanT sahib;
} EczaneT;

typedef struct{
double gelir;
double gider;
double kâr;
} ButceT;

typedef struct{
double brut_maas_mik;
double sigorta_mik;
double net_maas_mik;
} MaasT;

void eczane_bil_gir(EczaneT* eczane)
{
char bos[2];
FILE *ptr;
ptr=fopen("eczane_bil.txt","w");
gets(bos);
printf("Eczane ismini giriniz...\t");
gets(eczane->eczane_ismi);

fputs(eczane->eczane_ismi,ptr);
fprintf(ptr,"\n");

printf("Eczane sahibinin ismini giriniz...\t");
gets(eczane->sahib.eleman_adi);

printf("Soyadini giriniz...\t");
gets(eczane->sahib.eleman_soyadi);

fputs(eczane->sahib.eleman_adi,ptr);
fprintf(ptr,"\n");
fputs(eczane->sahib.eleman_soyadi,ptr);

fclose(ptr);

if(ptr!=NULL)
{
printf("Bilgiler basariyla yuklendi...\n");
}
else{printf("Bilgiler yuklenirken bir hata olustu...\nLutfen tekrar giris yapiniz...\n");}
}
int eleman_bil_gir(ElemanT* eleman)
{
int secim;
FILE* ptr;
FILE* tptr;
char isim[20];
char tc[16];
char uzanti[6]=".txt";
char bos[2];


system("cls");

printf("Elemanin tc kimlik no sunu giriniz...\n");
scanf("%s", &eleman->tc_kimlik);

strcpy(tc,eleman->tc_kimlik);
strcat(tc,uzanti);

tptr=fopen(tc,"w");

printf("Eleman adini giriniz...\t");
gets(bos);

gets(eleman->eleman_adi);

strcpy(isim,eleman->eleman_adi);
strcat(isim,uzanti);

ptr=fopen(isim,"w");

fprintf(ptr,"Tc Kimlik:\t");
fputs(eleman->tc_kimlik,ptr);
fprintf(ptr,"\n");

fprintf(tptr,"Tc Kimlik:\t");
fputs(eleman->tc_kimlik,tptr);
fprintf(tptr,"\n");

fprintf(ptr,"Ad:\t");
fputs(eleman->eleman_adi,ptr);
fprintf(ptr,"\n");

fprintf(tptr,"Ad:\t");
fputs(eleman->eleman_adi,tptr);
fprintf(tptr,"\n");

printf("Soyadini giriniz...\t");
gets(eleman->eleman_soyadi);

fprintf(ptr,"Soyad:\t");
fputs(eleman->eleman_soyadi,ptr);
fprintf(ptr,"\n");

fprintf(tptr,"Soyad:\t");
fputs(eleman->eleman_soyadi,tptr);
fprintf(tptr,"\n");

printf("Unvanini giriniz...\t");
gets(eleman->eleman_unvani);
fprintf(ptr,"Unvani:\t");
fputs(eleman->eleman_unvani,ptr);
fprintf(ptr,"\n");

fprintf(tptr,"Unvani:\t");
fputs(eleman->eleman_unvani,tptr);
fprintf(tptr,"\n");

printf("Yasini giriniz...\t");
scanf("%d", &eleman->eleman_yasi);
fprintf(ptr,"Yas:\t");
fprintf(ptr,"%d\n",eleman->eleman_yasi);

fprintf(tptr,"Yas:\t");
fprintf(tptr,"%d\n",eleman->eleman_yasi);

printf("Telefon No sunu giriniz...\t");
scanf("%s",eleman->eleman_tel_no);
fprintf(ptr,"Tel-no:\t");
fputs(eleman->eleman_tel_no,ptr);

fprintf(tptr,"Tel-no:\t");
fputs(eleman->eleman_tel_no,tptr);

fclose(ptr);fclose(tptr);
if(ptr!=NULL){printf("Bilgileriniz basariyla yuklendi...\n");}else{printf("Bilgiler yuklenirken bir hata olustu lutfen tekrar deneyiniz...\n");}
if(tptr!=NULL){printf("Bilgiler yuklenirken bir hata olustu lutfen tekrar deneyiniz...\n");}

free(eleman);
do{
printf("\nYeni eleman eklemek icin (1) e basiniz\nYoksa herhangi bir tusa basiniz...\n");
scanf("%d", &secim);
if(secim!=1)
return 0;

eleman=(ElemanT*)malloc(sizeof ElemanT);
eleman_bil_gir(eleman);
}while(secim==1);
}
void eleman_maas_bil_gir()
{
MaasT maas;
char name[20];
char ek[5]=".txt";
char tc[16];
printf("Maas bilgilerini girmek istediginiz elemanin adini giriniz...\n");
scanf("%s", name);
printf("Maas bilgilerini girmek istedigininz elemanin tc kimlik no sungu iriniz\n");
scanf("%s",tc);
strcat(tc,ek);
strcat(name, ek);
FILE* tptr;
tptr=fopen(tc,"a");
FILE* ptr;
ptr=fopen(name,"a");


printf("Brut maas miktarini giriniz: ");
scanf("%lf", &maas.brut_maas_mik);
printf("Sigorta ucretini girini: ");
scanf("%lf", &maas.sigorta_mik);
maas.net_maas_mik=(maas.brut_maas_mik)-maas.sigorta_mik;
printf("Elemaninizin net maas miktari %.2lf YTL dir...\n", maas.net_maas_mik);

fprintf(ptr,"\nBrut maas tutari: %.2lf YTL", maas.brut_maas_mik);
fprintf(ptr,"\nSigorta tutari: %.2lf YTL", maas.sigorta_mik);
fprintf(ptr,"\nNet maas tutari: %.2lf YTL", maas.net_maas_mik);

fprintf(tptr,"\nBrut maas tutari: %.2lf YTL", maas.brut_maas_mik);
fprintf(tptr,"\nSigorta tutari: %.2lf YTL", maas.sigorta_mik);
fprintf(tptr,"\nNet maas tutari: %.2lf YTL", maas.net_maas_mik);


fclose(ptr);

if(ptr!=NULL){printf("Isleminiz basariyla gerceklestirildi...\n");}
else{printf("Isleminizde hata olustu kontrol edip tekrar deneyiniz...\n");
}
}



void ilac_bil_gir()
{
İlacT ilac;
FILE* ptr;
FILE* bptr;
char uzanti[5]=".txt";
char name[20];
char barkod[20];

char bos[2];
system("cls");
printf("Ilacin adini giriniz...\t");
gets(bos);
gets(ilac.ilac_ad);

printf("Ilacin turunu giriniz...\t");
gets(ilac.ilac_turu);

printf("Ilacin ait oldugu firmanin adinin giriniz...\t");
gets(ilac.ilac_firmasi);

printf("Ilacin barkodunu giriniz...\t");
gets(ilac.barkod);

printf("Ilacın tutarini giriniz...\t");
scanf("%lf", &ilac.ilac_tutari);

printf("Ilacin kdv sini giriniz...\t");
scanf("%lf", &ilac.kdv);

printf("Ilactan kac adet bulundugunu giriniz...\t");
scanf("%d", &ilac.ilac_adedi);

strcpy(name,ilac.ilac_ad);
strcat(name,uzanti);

strcpy(barkod,ilac.barkod);
strcat(barkod, uzanti);

ptr=fopen(name,"w");
bptr=fopen(barkod,"w");

fprintf(ptr,"Ilacin Barkodu:\t");
fputs(ilac.barkod,ptr);

fprintf(bptr,"Ilacin Barkodu:\t");
fputs(ilac.barkod,bptr);

fprintf(ptr,"\nIlacin Adi:\t");
fputs(ilac.ilac_ad,ptr);

fprintf(bptr,"\nIlacin Adi:\t");
fputs(ilac.ilac_ad,bptr);

fprintf(ptr,"\nIlacin Firmasi:\t");
fputs(ilac.ilac_firmasi,ptr);

fprintf(bptr,"\nIlacin Firmasi:\t");
fputs(ilac.ilac_firmasi,bptr);

fprintf(ptr,"\nIlacin turu:\t");
fputs(ilac.ilac_turu,ptr);

fprintf(bptr,"\nIlacin turu:\t");
fputs(ilac.ilac_turu,bptr);

fprintf(ptr,"\nIlacin Adedi:\t");
fprintf(ptr,"%d", ilac.ilac_adedi);

fprintf(bptr,"\nIlacin Adedi:\t");
fprintf(bptr,"%d", ilac.ilac_adedi);


fprintf(ptr,"\nIlacin Tutari:\t");
fprintf(ptr,"%.2lf YTL", ilac.ilac_tutari);

fprintf(bptr,"\nIlacin Tutari:\t");
fprintf(bptr,"%.2lf YTL", ilac.ilac_tutari);


fprintf(ptr,"\nIlacin kdv tutari:\t");
fprintf(ptr,"%.2lf YTL",ilac.kdv);

fprintf(bptr,"\nIlacin kdv tutari:\t");
fprintf(bptr,"%.2lf YTL",ilac.kdv);


fclose(ptr);
fclose(bptr);

if(ptr!=NULL){printf("Ilac bilgileri basariyla yuklendi...\n");}else{printf("Ilac bilgileri yuklenirken hata olustu lutfen tekrar deneyiniz...\n");}


}
void ilac_bil_sorgula()
{
FILE* ptr;
char barkod[20];
char bos[2];
char uzanti[5]=".txt";
char* alici;
alici=(char*)malloc(50*sizeof(char));



printf("Lutfen ilacin barkodunu giriniz...\t");

gets(bos);
gets(barkod);

strcat(barkod, uzanti);

ptr=fopen(barkod,"r");
system("cls");
while(!(feof(ptr)))
{
fgets(alici,50,ptr);

puts(alici);
}
free(alici);
}

void ilac_sat()
{
char string[15];
int basamak=0;
FILE* ptr;
int value;
int sonuc;
char barkod[20];
char bos[2];
char uzanti[5]=".txt";
char* alici;
char ek[20]="Ilacin Adedi: ";
alici=(char*)malloc(60*sizeof(char));
if(alici==NULL){printf("Hafiza tahsisi yapilamadi...\n");}
int al;
char null[20];

system("cls");
printf("Lutfen ilacin barkodunu giriniz...\t");

gets(bos);
gets(barkod);

strcpy(null,barkod);
strcat(barkod, uzanti);

ptr=fopen(barkod,"r+");


printf("Kac Adet bu ilactan satilacak:\t");
scanf("%d", &al);

while(!(feof(ptr)))
{
static int sayac=3;
fgets(alici,60,ptr);


while(sayac==0)
{
static int say=2;

if(say==0){
fscanf(ptr,"%d", &value);
value=value-al;
if(value<0){
printf("Hic ilac kalmamis,Lutfen ilac siparis ediniz...\n");break;}
else{
sonuc= value+ al;
do{
sonuc=sonuc/10;
basamak++;}while(sonuc!=0);

if(basamak>1){
fseek(ptr,-(basamak),1);
fprintf(ptr,"%d", value);
while(basamak!=0){
fprintf(ptr," ");basamak--;}
break;}
else{
fseek(ptr,-1,1);
fprintf(ptr,"%d", value);break;}
}
}
if((say>0)&&(say!=0))
{
fscanf(ptr,"%s",string);

}
say--;
}
sayac--;
if(sayac<0)
break;


}

printf("\nIlactan %d tane satilnistir...\n\n",al);
printf("%s barkodlu ilactan %d tane kalmistir...\n", null, value);
fclose(ptr);
}
void ilac_ekle()
{
char string[15];
int basamak=0;
int sayac;
FILE* ptr;
int value;
char barkod[20];
char bos[2];
char uzanti[5]=".txt";
char* alici;
char ek[20]="Ilacin Adedi: ";
alici=(char*)malloc(60*sizeof(char));
if(alici==NULL){printf("Hafiza tahsisi yapilamadi...\n");}
int al;
char null[20]="\0";


system("cls");
printf("Lutfen ilacin barkodunu giriniz...\t");

gets(bos);
gets(barkod);
strcpy(null,barkod);

strcat(barkod, uzanti);

ptr=fopen(barkod,"r+");


printf("Kac Adet bu ilactan eklenecek:\t");
scanf("%d", &al);

while(!(feof(ptr)))
{
static int sayac=3;
fgets(alici,60,ptr);


while(sayac==0)
{
static int say=2;

if(say==0){
fscanf(ptr,"%d", &value);
value=value+al;
if(value<0){
printf("Hic ilac kalmamis,Lutfen ilac siparis ediniz...\n");break;}
else{
sayac= value-al;
do{
sayac=sayac/10;
basamak++;}while(sayac!=0);

fseek(ptr,-basamak,1);
fprintf(ptr,"%d", value);break;
while(basamak!=0)
{
fprintf(ptr," ");
basamak--;
}
}
}
if((say>0)&&(say!=0))
{
fscanf(ptr,"%s",string);

}
say--;
}
sayac--;
if(sayac<0)
break;


}
if(value>0){
printf("\nIlactan %d tane eklenmistir...\n\n",al);

printf("%s barkodlu ilactan %d tane vardir...\n", null, value);}
fclose(ptr);
}

void eczane_bilancosu(ButceT);

void menu1()
{
char* name;
name=(char*)malloc(20*sizeof(char));
FILE* ptr;
ptr=fopen("eczane_bil.txt","r");
fgets(name,20,ptr);
printf("\t\t\t\t");
puts(name);
printf("\n");
printf("\t\t\t\t\tHOSGELDINIZ\n\n");
}
void menu()
{
system("color d");
printf("\t\tEczane Bilgileri girmek icin (1)\a\n");
printf("\t\tEleman Bilgileri girmek icin (2)\a\n");
printf("\t\tEleman Maas Bilgilerini girmek icin (3)\a\n");
printf("\t\tEleman Bilgileri isimle sorgulamak icin (4)\a\n");
printf("\t\tEleman Bilgilerinin tc kimlik no ile sorgulamak icin (5)\a\n");
printf("\t\tIlac bilgilerini girmek icin (6)\a\n");
printf("\t\tIlac bilgilerini sorgulamak icin (7)\a\n");
printf("\t\tIlac Satisi icin (8)\a\n");
printf("\t\tIlac eklemek icin (9)\a\n");
printf("\t\tYeni islem (10)\a\n");
printf("\t\tCikis icin (11)\a\n");
}
void eleman_bil_sorgula_tc()
{
char uzanti[5]=".txt";
char tc[16];
FILE* tptr;
printf("Tc Kimlik No yu Giriniz:\t");
scanf("%s", tc);
strcat(tc,uzanti);
tptr=fopen(tc,"r");
if(tptr==NULL){printf("Boyle Bir kayit bulunmamaktadir...\n");}
system("cls");
char* Name;
Name=(char*)malloc(40*sizeof(char));
while(!(feof(tptr)))
{

fgets(Name,40,tptr);
puts(Name);
}
fclose(tptr);
printf("\nSorguladiginiz kisinin Bilgileri yukaridadir...\n");
}



void eleman_bil_sorgula()
{
char bos[2];
FILE* ptr;
printf("Bilgilerine ulasmak istediginiz elemanin ismini ilk harfi buyuk olacak bıcımde giriniz\n");
char uzanti[5]=".txt";
char name[20];
char* Name;
Name=(char*)malloc(40*sizeof(char));
gets(bos);
gets(name);
strcat(name, uzanti);
ptr=fopen(name,"r");
if(ptr==NULL){printf("Boyle Bir kayit bulunmamaktadir...\n");}
system("cls");

while(!(feof(ptr)))
{

fgets(Name,40,ptr);
puts(Name);
}
fclose(ptr);
printf("\nSorguladiginiz kisinin Bilgileri yukaridadir...\n");


}
int main()
{
menu1();

menu();
int secim;
system("color 3");
printf("Seciminizi giriniz... ");
scanf("%d", &secim);


ElemanT* eleman;
eleman=(ElemanT*)malloc(sizeof ElemanT);
EczaneT* eczane;
eczane=(EczaneT*)malloc(sizeof EczaneT);
if(secim==1){
eczane_bil_gir(eczane);
system("pause");
system("cls");
return main();}
if(secim==2){
eleman_bil_gir(eleman);system("pause");
system("cls");
return main();}
if(secim==3){
eleman_maas_bil_gir();system("pause");
system("cls");
return main();}
if(secim==4){
eleman_bil_sorgula();system("pause");
system("cls");
return main();}
if(secim==5){
eleman_bil_sorgula_tc();system("pause");
system("cls");
return main();}
if(secim==6){
ilac_bil_gir();system("pause");
system("cls");
return main();}
if(secim==7){
ilac_bil_sorgula();system("pause");
system("cls");
return main();}
if(secim==8){
ilac_sat();system("pause");
system("cls");
return main();}
if(secim==9){
ilac_ekle();system("pause");
system("cls");
return main();}
if(secim==10){
system("cls");return main();}
if(secim==11)
return 0;


else{
return 0;}
return 0;
}