Showing posts with label c. Show all posts
Showing posts with label c. Show all posts
Çanakkale Onsekiz Mart Üniversitesi Bilgisayar Mühendisliği Bölümü Veri Madenciliği C ile veri küpü kodlaması.
Proje Açıklaması ve Proje Kodları
#include
#include
void dosyaolustur();
void boyut1fonk1(int);
void boyut1fonk2();
void boyut1fonk3();
void boyut2fonk1(int);
void boyut2fonk2(char[]);
void boyut2fonk3();
void boyut2fonk4();
void boyut3fonk1(int);
void boyut3fonk2(char[]);
void boyut3fonk3();
void boyut3fonk4();
int main()
{
dosyaolustur();
int secenek,secenek2,UrunAnahtar;
char UrunAdi[2];
char TedarikciAdi[3];
do{
printf("--------------------\nHangi boyutta islem yapmak istiyorsunuz?\n1- Boyut1\n2- Boyut2\n3- Boyut3\n->");
scanf("%d",&secenek);
if(secenek==1){
printf("--------------------\nBoyut1de yapabileceginiz islemler\n1-Urunu Listele\n2-En Az Satilan Urunu Listele\n3-En Cok Satilan Urunu Listele\n4-Boyut Degistir\n->");
scanf("%d",&secenek2);
if(secenek2==1){
printf("Urun Anahtar Bilgisini Giriniz\n->");
scanf("%d",&UrunAnahtar);
boyut1fonk1(UrunAnahtar);
}
else if(secenek2==2)boyut1fonk2();
else if(secenek2==3)boyut1fonk3();
else if(secenek2==4)continue;
}
else if(secenek==2){
printf("--------------------\nBoyut2de yapabileceginiz islemler\n1-Urun Anahtari ile Urunu Listele\n2-Urun Adi ile Urunu Listele\n3-En Cok Satilan Urunu Listele\n4-En Az Kazanc Saglanan Urunu Listele\n5-Boyut Degistir\n->");
scanf("%d",&secenek2);
if(secenek2==1){
printf("Urun Anahtar Bilgisini Giriniz\n->");
scanf("%d",&UrunAnahtar);
boyut2fonk1(UrunAnahtar);
}
else if(secenek2==2){
printf("Urun Adini Giriniz\n->");
scanf("%s",UrunAdi);
boyut2fonk2(UrunAdi);
}
else if(secenek2==3){
boyut2fonk3();
}
else if(secenek2==4){
boyut2fonk4();
}
else if(secenek2==5){
continue;
}
}
else if(secenek==3){
printf("--------------------\nBoyut3te yapabileceginiz islemler\n1-Urun Anahtari ile Urun ve Tedarikci Bilgisini listele\n2-Tedarikciye Ait Urunleri Listele\n3-En Cok Satilan Urunu listele\n4-En Az Kazanc Saglanan Urunu Listele\n5-Boyut Degistir\n->");
scanf("%d",&secenek2);
if(secenek2==1){
printf("Urun Anahtar Bilgisini Giriniz\n->");
scanf("%d",&UrunAnahtar);
boyut3fonk1(UrunAnahtar);
}
else if(secenek2==2){
printf("Tedarikci Adini Giriniz\n->");
scanf("%s",TedarikciAdi);
boyut3fonk2(TedarikciAdi);
}
else if(secenek2==3){
boyut3fonk3();
}
else if(secenek2==4){
boyut3fonk4();
}
else if(secenek2==5){
continue;
}
}
}
while(secenek!=0);
return 0;
}
void dosyaolustur(){
FILE * satislardosyasi = fopen("satislar.txt","w");
fprintf(satislardosyasi,"\t\t\tSATIÞLAR\n");
fprintf(satislardosyasi,"Ürün Anahtarý\tTedarikci Anahtarý\tSatýþ Mikatarý\n");
fprintf(satislardosyasi,"1\t\t1\t\t\t6\n");
fprintf(satislardosyasi,"2\t\t1\t\t\t6\n");
fprintf(satislardosyasi,"3\t\t1\t\t\t5\n");
fprintf(satislardosyasi,"4\t\t2\t\t\t3\n");
fprintf(satislardosyasi,"5\t\t2\t\t\t1\n");
fprintf(satislardosyasi,"6\t\t3\t\t\t3");
fclose(satislardosyasi);
FILE * urunlerdosyasi = fopen("urunler.txt","w");
fprintf(urunlerdosyasi,"\t\tÜRÜNLER\n");
fprintf(urunlerdosyasi,"Ürün Anahtarý\tÜrün Adý\tFiyat\tTür\n");
fprintf(urunlerdosyasi,"1\t\tAA\t\t5\tX\n");
fprintf(urunlerdosyasi,"2\t\tBB\t\t4\tY\n");
fprintf(urunlerdosyasi,"3\t\tCC\t\t10\tX\n");
fprintf(urunlerdosyasi,"4\t\tDD\t\t20\tK\n");
fprintf(urunlerdosyasi,"5\t\tEE\t\t100\tL\n");
fprintf(urunlerdosyasi,"6\t\tFF\t\t15\tM");
fclose(urunlerdosyasi);
FILE * tedarikdosyasi = fopen("tedarik.txt","w");
fprintf(tedarikdosyasi,"\t\tTEDARÝK\n");
fprintf(tedarikdosyasi,"Tedarikçi Anahtarý\tTedarikçi Ýsmi\n");
fprintf(tedarikdosyasi,"1\t\t\tASD\n");
fprintf(tedarikdosyasi,"2\t\t\tDSA\n");
fprintf(tedarikdosyasi,"3\t\t\tXYZ\n");
fclose(tedarikdosyasi);
}
void boyut1fonk1(int UrunAnahtar){
int UrunAnahtarGelen,TedarikciAnahtarGelen,SatisMiktariGelen,i;
FILE * satislardosyasi = fopen("satislar.txt","r");
fseek(satislardosyasi,62,SEEK_SET);
for(i=0;i<6 i="" p="">6>
fscanf(satislardosyasi,"%d %d %d",&UrunAnahtarGelen,&TedarikciAnahtarGelen,&SatisMiktariGelen);
if(UrunAnahtar == UrunAnahtarGelen){
printf("Tedarikci Anahtari\tSatis Miktari\n%d\t\t\t%d\n",TedarikciAnahtarGelen,SatisMiktariGelen);
break;
}
}
fclose(satislardosyasi);
}
void boyut1fonk2(){
int UrunAnahtarGelen,TedarikciAnahtarGelen,SatisMiktariGelen,i,enkucuk=100;
FILE * satislardosyasi = fopen("satislar.txt","r");
fseek(satislardosyasi,62,SEEK_SET);
for(i=0;i<6 i="" p="">6>
fscanf(satislardosyasi,"%d %d %d",&UrunAnahtarGelen,&TedarikciAnahtarGelen,&SatisMiktariGelen);
if(SatisMiktariGelen
enkucuk = SatisMiktariGelen;
}
}
fseek(satislardosyasi,62,SEEK_SET);
for(i=0;i<6 i="" p="">6>
fscanf(satislardosyasi,"%d %d %d",&UrunAnahtarGelen,&TedarikciAnahtarGelen,&SatisMiktariGelen);
if(SatisMiktariGelen==enkucuk){
printf("Urun Anahtari\tSatis Miktari\n%d\t\t%d\n",UrunAnahtarGelen,SatisMiktariGelen);
}
}
fclose(satislardosyasi);
}
void boyut1fonk3(){
int UrunAnahtarGelen,TedarikciAnahtarGelen,SatisMiktariGelen,i,enbuyuk=0;
FILE * satislardosyasi = fopen("satislar.txt","r");
fseek(satislardosyasi,62,SEEK_SET);
for(i=0;i<6 i="" p="">6>
fscanf(satislardosyasi,"%d %d %d",&UrunAnahtarGelen,&TedarikciAnahtarGelen,&SatisMiktariGelen);
if(SatisMiktariGelen>enbuyuk){
enbuyuk = SatisMiktariGelen;
}
}
fseek(satislardosyasi,62,SEEK_SET);
for(i=0;i<6 i="" p="">6>
fscanf(satislardosyasi,"%d %d %d",&UrunAnahtarGelen,&TedarikciAnahtarGelen,&SatisMiktariGelen);
if(SatisMiktariGelen==enbuyuk){
printf("Urun Anahtari\tSatis Miktari\n%d\t\t%d\n",UrunAnahtarGelen,SatisMiktariGelen);
}
}
fclose(satislardosyasi);
}
void boyut2fonk1(int UrunAnahtar){
int UrunAnahtarSatislardanGelen,TedarikciAnahtarGelen,SatisMiktariGelen;
FILE * satislardosyasi = fopen("satislar.txt","r");
fseek(satislardosyasi,62,SEEK_SET);
int UrunAnahtarUrunlerdenGelen,FiyatGelen;
char UrunAdiGelen1,UrunAdiGelen2,TurGelen;
FILE * urunlerdosyasi = fopen("urunler.txt","r");
fseek(urunlerdosyasi,45,SEEK_SET);
int i,kazanc;
for(i=0;i<6 i="" p="">6>
fscanf(satislardosyasi,"%d %d %d",&UrunAnahtarSatislardanGelen,&TedarikciAnahtarGelen,&SatisMiktariGelen);
fscanf(urunlerdosyasi,"%d %c %c %d %c",&UrunAnahtarUrunlerdenGelen,&UrunAdiGelen1,&UrunAdiGelen2,&FiyatGelen,&TurGelen);
if(UrunAnahtar == UrunAnahtarSatislardanGelen && UrunAnahtar==UrunAnahtarUrunlerdenGelen){
kazanc = SatisMiktariGelen * FiyatGelen;
printf("--------------------\nUrun Adi\tTur\tSatis Miktari\tElde Edilen Kazanc\n%c%c\t\t%c\t%d\t\t%d\n",UrunAdiGelen1,UrunAdiGelen2,TurGelen,SatisMiktariGelen,kazanc);
}
}
fclose(satislardosyasi);
fclose(urunlerdosyasi);
}
void boyut2fonk2(char UrunAdi[2]){
int UrunAnahtarSatislardanGelen,TedarikciAnahtarGelen,SatisMiktariGelen;
FILE * satislardosyasi = fopen("satislar.txt","r");
fseek(satislardosyasi,62,SEEK_SET);
int UrunAnahtarUrunlerdenGelen,FiyatGelen;
char UrunAdiGelen1,UrunAdiGelen2,TurGelen;
FILE * urunlerdosyasi = fopen("urunler.txt","r");
fseek(urunlerdosyasi,45,SEEK_SET);
int i,kazanc;
for(i=0;i<6 i="" p="">6>
fscanf(satislardosyasi,"%d %d %d",&UrunAnahtarSatislardanGelen,&TedarikciAnahtarGelen,&SatisMiktariGelen);
fscanf(urunlerdosyasi,"%d %c %c %d %c",&UrunAnahtarUrunlerdenGelen,&UrunAdiGelen1,&UrunAdiGelen2,&FiyatGelen,&TurGelen);
if(UrunAdi[0] == UrunAdiGelen1 && UrunAdi[1]==UrunAdiGelen2 && UrunAnahtarUrunlerdenGelen==UrunAnahtarSatislardanGelen){
kazanc = SatisMiktariGelen * FiyatGelen;
printf("--------------------\nUrun Anahtari\tTur\tSatis Miktari\tElde Edilen Kazanc\n%d\t\t%c\t%d\t\t%d\n",UrunAnahtarUrunlerdenGelen,TurGelen,SatisMiktariGelen,kazanc);
}
}
fclose(satislardosyasi);
fclose(urunlerdosyasi);
}
void boyut2fonk3(){
int UrunAnahtarSatislardanGelen,TedarikciAnahtarGelen,SatisMiktariGelen;
FILE * satislardosyasi = fopen("satislar.txt","r");
fseek(satislardosyasi,62,SEEK_SET);
int UrunAnahtarUrunlerdenGelen,FiyatGelen;
char UrunAdiGelen1,UrunAdiGelen2,TurGelen;
FILE * urunlerdosyasi = fopen("urunler.txt","r");
fseek(urunlerdosyasi,45,SEEK_SET);
int i,kazanc,enbuyuk=0;
for(i=0;i<6 i="" p="">6>
fscanf(satislardosyasi,"%d %d %d",&UrunAnahtarSatislardanGelen,&TedarikciAnahtarGelen,&SatisMiktariGelen);
if(SatisMiktariGelen>enbuyuk){
enbuyuk = SatisMiktariGelen;
}
}
fseek(satislardosyasi,62,SEEK_SET);
for(i=0;i<6 i="" p="">6>
fscanf(satislardosyasi,"%d %d %d",&UrunAnahtarSatislardanGelen,&TedarikciAnahtarGelen,&SatisMiktariGelen);
fscanf(urunlerdosyasi,"%d %c %c %d %c",&UrunAnahtarUrunlerdenGelen,&UrunAdiGelen1,&UrunAdiGelen2,&FiyatGelen,&TurGelen);
if(SatisMiktariGelen==enbuyuk){
kazanc = SatisMiktariGelen * FiyatGelen;
printf("--------------------\nUrun Adi\tTur\tElde Edilen Kazanc\n%c%c\t\t%c\t%d\n",UrunAdiGelen1,UrunAdiGelen2,TurGelen,kazanc);
}
}
fclose(satislardosyasi);
fclose(urunlerdosyasi);
}
void boyut2fonk4(){
int UrunAnahtarSatislardanGelen,TedarikciAnahtarGelen,SatisMiktariGelen;
FILE * satislardosyasi = fopen("satislar.txt","r");
fseek(satislardosyasi,62,SEEK_SET);
int UrunAnahtarUrunlerdenGelen,FiyatGelen;
char UrunAdiGelen1,UrunAdiGelen2,TurGelen;
FILE * urunlerdosyasi = fopen("urunler.txt","r");
fseek(urunlerdosyasi,45,SEEK_SET);
int i,kazanc,enkucukkazanc=1000;
for(i=0;i<6 i="" p="">6>
fscanf(satislardosyasi,"%d %d %d",&UrunAnahtarSatislardanGelen,&TedarikciAnahtarGelen,&SatisMiktariGelen);
fscanf(urunlerdosyasi,"%d %c %c %d %c",&UrunAnahtarUrunlerdenGelen,&UrunAdiGelen1,&UrunAdiGelen2,&FiyatGelen,&TurGelen);
kazanc = SatisMiktariGelen * FiyatGelen;
if(kazanc < enkucukkazanc){
enkucukkazanc = kazanc;
}
}
fseek(satislardosyasi,62,SEEK_SET);
fseek(urunlerdosyasi,45,SEEK_SET);
for(i=0;i<6 i="" p="">6>
fscanf(satislardosyasi,"%d %d %d",&UrunAnahtarSatislardanGelen,&TedarikciAnahtarGelen,&SatisMiktariGelen);
fscanf(urunlerdosyasi,"%d %c %c %d %c",&UrunAnahtarUrunlerdenGelen,&UrunAdiGelen1,&UrunAdiGelen2,&FiyatGelen,&TurGelen);
kazanc = SatisMiktariGelen * FiyatGelen;
if(kazanc == enkucukkazanc){
printf("--------------------\nUrun Adi\tTur\tElde Edilen Kazanc\n%c%c\t\t%c\t%d\n",UrunAdiGelen1,UrunAdiGelen2,TurGelen,kazanc);
}
}
fclose(satislardosyasi);
fclose(urunlerdosyasi);
}
void boyut3fonk1(int UrunAnahtar){
int UrunAnahtarSatislardanGelen,TedarikciAnahtarSatislardanGelen,SatisMiktariGelen;
FILE * satislardosyasi = fopen("satislar.txt","r");
fseek(satislardosyasi,62,SEEK_SET);
int UrunAnahtarUrunlerdenGelen,FiyatGelen;
char UrunAdiGelen1,UrunAdiGelen2,TurGelen;
FILE * urunlerdosyasi = fopen("urunler.txt","r");
fseek(urunlerdosyasi,45,SEEK_SET);
int TedarikciAnahtarTedariktenGelen;
char TedarikciAdiGelen1,TedarikciAdiGelen2,TedarikciAdiGelen3;
FILE * tedarikdosyasi = fopen("tedarik.txt","r");
fseek(tedarikdosyasi,46,SEEK_SET);
int i,j;
for(i=0;i<6 i="" p="">6>
fscanf(satislardosyasi,"%d %d %d",&UrunAnahtarSatislardanGelen,&TedarikciAnahtarSatislardanGelen,&SatisMiktariGelen);
fscanf(urunlerdosyasi,"%d %c %c %d %c",&UrunAnahtarUrunlerdenGelen,&UrunAdiGelen1,&UrunAdiGelen2,&FiyatGelen,&TurGelen);
if(UrunAnahtar == UrunAnahtarSatislardanGelen && UrunAnahtar==UrunAnahtarUrunlerdenGelen){
for(j=0;j<3 j="" p="">3>
fscanf(tedarikdosyasi,"%d %c %c %c",&TedarikciAnahtarTedariktenGelen,&TedarikciAdiGelen1,&TedarikciAdiGelen2,&TedarikciAdiGelen3);
if(TedarikciAnahtarSatislardanGelen == TedarikciAnahtarTedariktenGelen){
printf("--------------------\nUrun Adi\tTedarikci Adi\n%c%c\t\t%c%c%c\n",UrunAdiGelen1,UrunAdiGelen2,TedarikciAdiGelen1,TedarikciAdiGelen2,TedarikciAdiGelen3);
}
}
}
}
fclose(satislardosyasi);
fclose(urunlerdosyasi);
fclose(tedarikdosyasi);
}
void boyut3fonk2(char TedarikciAdi[3]){
int UrunAnahtarSatislardanGelen,TedarikciAnahtarSatislardanGelen,SatisMiktariGelen;
FILE * satislardosyasi = fopen("satislar.txt","r");
fseek(satislardosyasi,62,SEEK_SET);
int UrunAnahtarUrunlerdenGelen,FiyatGelen;
char UrunAdiGelen1,UrunAdiGelen2,TurGelen;
FILE * urunlerdosyasi = fopen("urunler.txt","r");
fseek(urunlerdosyasi,45,SEEK_SET);
int TedarikciAnahtarTedariktenGelen;
char TedarikciAdiGelen1,TedarikciAdiGelen2,TedarikciAdiGelen3;
FILE * tedarikdosyasi = fopen("tedarik.txt","r");
fseek(tedarikdosyasi,46,SEEK_SET);
int i;
for(i=0;i<3 i="" p="">3>
fscanf(tedarikdosyasi,"%d %c %c %c",&TedarikciAnahtarTedariktenGelen,&TedarikciAdiGelen1,&TedarikciAdiGelen2,&TedarikciAdiGelen3);
if(TedarikciAdi[0] == TedarikciAdiGelen1 && TedarikciAdi[1] == TedarikciAdiGelen2 && TedarikciAdi[2] == TedarikciAdiGelen3){
break;
}
}
for(i=0;i<6 i="" p="">6>
fscanf(satislardosyasi,"%d %d %d",&UrunAnahtarSatislardanGelen,&TedarikciAnahtarSatislardanGelen,&SatisMiktariGelen);
fscanf(urunlerdosyasi,"%d %c %c %d %c",&UrunAnahtarUrunlerdenGelen,&UrunAdiGelen1,&UrunAdiGelen2,&FiyatGelen,&TurGelen);
if(TedarikciAnahtarSatislardanGelen == TedarikciAnahtarTedariktenGelen){
printf("--------------------\nUrun Adi\tTur\tFiyati\t\n%c%c\t\t%c\t%d\n",UrunAdiGelen1,UrunAdiGelen2,TurGelen,FiyatGelen);
}
}
fclose(satislardosyasi);
fclose(urunlerdosyasi);
fclose(tedarikdosyasi);
}
void boyut3fonk3(){
int UrunAnahtarSatislardanGelen,TedarikciAnahtarSatislardanGelen,SatisMiktariGelen;
FILE * satislardosyasi = fopen("satislar.txt","r");
fseek(satislardosyasi,62,SEEK_SET);
int UrunAnahtarUrunlerdenGelen,FiyatGelen;
char UrunAdiGelen1,UrunAdiGelen2,TurGelen;
FILE * urunlerdosyasi = fopen("urunler.txt","r");
fseek(urunlerdosyasi,45,SEEK_SET);
int TedarikciAnahtarTedariktenGelen;
char TedarikciAdiGelen1,TedarikciAdiGelen2,TedarikciAdiGelen3;
FILE * tedarikdosyasi = fopen("tedarik.txt","r");
int i,j,enbuyuk=0;
for(i=0;i<6 i="" p="">6>
fscanf(satislardosyasi,"%d %d %d",&UrunAnahtarSatislardanGelen,&TedarikciAnahtarSatislardanGelen,&SatisMiktariGelen);
if(SatisMiktariGelen>enbuyuk){
enbuyuk = SatisMiktariGelen;
}
}
fseek(satislardosyasi,62,SEEK_SET);
for(i=0;i<6 i="" p="">6>
fscanf(satislardosyasi,"%d %d %d",&UrunAnahtarSatislardanGelen,&TedarikciAnahtarSatislardanGelen,&SatisMiktariGelen);
fscanf(urunlerdosyasi,"%d %c %c %d %c",&UrunAnahtarUrunlerdenGelen,&UrunAdiGelen1,&UrunAdiGelen2,&FiyatGelen,&TurGelen);
if(SatisMiktariGelen==enbuyuk){
fseek(tedarikdosyasi,46,SEEK_SET);
for(j=0;j<3 j="" p="">3>
fscanf(tedarikdosyasi,"%d %c %c %c",&TedarikciAnahtarTedariktenGelen,&TedarikciAdiGelen1,&TedarikciAdiGelen2,&TedarikciAdiGelen3);
if(TedarikciAnahtarTedariktenGelen == TedarikciAnahtarSatislardanGelen){
printf("--------------------\nUrun Adi\tTur\tSatis Miktari\tTedarikci Adi\n%c%c\t\t%c\t%d\t\t%c%c%c\n",UrunAdiGelen1,UrunAdiGelen2,TurGelen,SatisMiktariGelen,TedarikciAdiGelen1,TedarikciAdiGelen2,TedarikciAdiGelen3);
}
}
}
}
fclose(satislardosyasi);
fclose(urunlerdosyasi);
fclose(tedarikdosyasi);
}
void boyut3fonk4(){
int UrunAnahtarSatislardanGelen,TedarikciAnahtarSatislardanGelen,SatisMiktariGelen;
FILE * satislardosyasi = fopen("satislar.txt","r");
fseek(satislardosyasi,62,SEEK_SET);
int UrunAnahtarUrunlerdenGelen,FiyatGelen;
char UrunAdiGelen1,UrunAdiGelen2,TurGelen;
FILE * urunlerdosyasi = fopen("urunler.txt","r");
fseek(urunlerdosyasi,45,SEEK_SET);
int TedarikciAnahtarTedariktenGelen;
char TedarikciAdiGelen1,TedarikciAdiGelen2,TedarikciAdiGelen3;
FILE * tedarikdosyasi = fopen("tedarik.txt","r");
int i,j,kazanc,enkucukkazanc=1000;
for(i=0;i<6 i="" p="">6>
fscanf(satislardosyasi,"%d %d %d",&UrunAnahtarSatislardanGelen,&TedarikciAnahtarSatislardanGelen,&SatisMiktariGelen);
fscanf(urunlerdosyasi,"%d %c %c %d %c",&UrunAnahtarUrunlerdenGelen,&UrunAdiGelen1,&UrunAdiGelen2,&FiyatGelen,&TurGelen);
kazanc = SatisMiktariGelen * FiyatGelen;
if(kazanc
enkucukkazanc = kazanc;
}
}
fseek(satislardosyasi,62,SEEK_SET);
fseek(urunlerdosyasi,45,SEEK_SET);
for(i=0;i<6 i="" p="">6>
fscanf(satislardosyasi,"%d %d %d",&UrunAnahtarSatislardanGelen,&TedarikciAnahtarSatislardanGelen,&SatisMiktariGelen);
fscanf(urunlerdosyasi,"%d %c %c %d %c",&UrunAnahtarUrunlerdenGelen,&UrunAdiGelen1,&UrunAdiGelen2,&FiyatGelen,&TurGelen);
kazanc = SatisMiktariGelen * FiyatGelen;
if(kazanc==enkucukkazanc){
fseek(tedarikdosyasi,46,SEEK_SET);
for(j=0;j<3 j="" p="">3>
fscanf(tedarikdosyasi,"%d %c %c %c",&TedarikciAnahtarTedariktenGelen,&TedarikciAdiGelen1,&TedarikciAdiGelen2,&TedarikciAdiGelen3);
if(TedarikciAnahtarTedariktenGelen == TedarikciAnahtarSatislardanGelen){
printf("--------------------\nUrun Adi\tTur\tKazanc Miktari\tTedarikci Adi\n%c%c\t\t%c\t%d\t\t%c%c%c\n",UrunAdiGelen1,UrunAdiGelen2,TurGelen,kazanc,TedarikciAdiGelen1,TedarikciAdiGelen2,TedarikciAdiGelen3);
}
}
}
}
fclose(satislardosyasi);
fclose(urunlerdosyasi);
fclose(tedarikdosyasi);
}
Kendisine gönderilen bir integer sayıyı yine kendisine gönderilen bağlı listede bulunduran elemanı silen fonksiyonun c kodu
void liste_eleman_sil(int silinecek,struct eleman **ListeBasi){
struct dugum *b = *ListeBasi;
struct dugum *a;
while(*BagliListe != NULL){
a = b;
b = b->sonraki;
}
if(b == NULL){
return;
}
else if(b == *ListeBasi){
*ListeBasi = (*ListeBasi)->sonraki;
}
else{
a->sonraki = b->sonraki;
}
free(b);
}
void liste_eleman_sil(int silinecek,struct eleman **ListeBasi){
struct dugum *b = *ListeBasi;
struct dugum *a;
while(*BagliListe != NULL){
a = b;
b = b->sonraki;
}
if(b == NULL){
return;
}
else if(b == *ListeBasi){
*ListeBasi = (*ListeBasi)->sonraki;
}
else{
a->sonraki = b->sonraki;
}
free(b);
}
Kendisine gönderilen bağlı listeyi ters çeviren yani tüm bağlantıları tersine çeviren fonksiyonun C kodu
void liste_ters_cevir(struct dugum **BagliListe){
struct dugum *a,*b;
a = NULL;
While(*BagliListe != NULL){
b = *BagliListe;
*BagliListe = (*BagliListe)->sonraki;
b->sonraki = a;
a = b;
}
*BagliListe = a;
}
void liste_ters_cevir(struct dugum **BagliListe){
struct dugum *a,*b;
a = NULL;
While(*BagliListe != NULL){
b = *BagliListe;
*BagliListe = (*BagliListe)->sonraki;
b->sonraki = a;
a = b;
}
*BagliListe = a;
}
Kendisine gönderilen bağlı listedeki en küçük elemanı geri döndüren fonksiyonun c kodu
struct dugum* EnKucukDugum(struct dugum *BagliListe){
struct dugum *EnKucuk = NULL;
struct dugum *ListedeGez = BagliListe;
int EnKucukDeger = ListedeGez->icerik;
While(ListedeGez != NULL){
if(ListedeGez->icerik <= EnKucukDeger){
EnKucukDeger = ListedeGez->icerik;
EnKucuk= ListedeGez;
}
ListedeGez = ListedeGez->sonraki;
return EnKucuk;
}
struct dugum* EnKucukDugum(struct dugum *BagliListe){
struct dugum *EnKucuk = NULL;
struct dugum *ListedeGez = BagliListe;
int EnKucukDeger = ListedeGez->icerik;
While(ListedeGez != NULL){
if(ListedeGez->icerik <= EnKucukDeger){
EnKucukDeger = ListedeGez->icerik;
EnKucuk= ListedeGez;
}
ListedeGez = ListedeGez->sonraki;
return EnKucuk;
}
Kendisine gönderilen ikili arama ağacındaki tek çocuk düğüme sahip olan düğümlerin sayısını veren fonksiyonun c kodu
int TekCocukluDugumSayisi(struct dugum *agac){
if(agac->sag != NULL && agac->sol != NULL){
return TekCocukluDugumSayisi(agac->sol) + TekCocukluDugumSayisi(agac->sag);
}
else if(agac->sag == NULL && agac->sol != NULL){
return 1 + TekCocukluDugumSayisi(agac->sol);
}
else if(agac->sag != NULL && agac->sol == NULL){
return 1 + TekCocukluDugumSayisi(agac->sag);
}
else{
return 0;
}
}
Çanakkale Onsekiz Mart Üniversitesi Bilgisayar Mühendisliği Bölümü yapısal programlama(C) dersi için yazdığım çark oyunu projem.
Detaylı Açıklama
Github
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
int sayi1,sayi2,sayi3,sayi4; /** Bilgisayarin tahmin ettigi sayilar **/
int puan=250; /** Puan degiskeni **/
int carkpuan; /** Çark döndügünde gelen seçenegin tutuldugu degisken**/
int dogrutahmin; /** Main fonksiyonuna gönderilen dogru tahmin sayisi**/
int main()
{
char secim; /** Kullanicinin seçim yapmasi için olusturulan degisken**/
printf("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\nCARK OYUNUNA HOS GELDINIZ...\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");
do
{
printf("Carki Cevirmek Icin 'c' Giriniz\n");
printf("Oyunu Kapatmak Icin 's' Giriniz\n");
printf ("Seciminiz:");
scanf(" %c",&secim);
printf("\n");
switch(secim)
{
case 'c':
sayi_uret();
cark_cevir();
tahmin_gir();
if(dogrutahmin==1)
{
puan=puan+50;
printf("Tebrikler 50 Puan Kazandiniz!!\nToplam Puaniniz=%d\n-----------------------------------------------\n",puan);
}
else if(dogrutahmin==2)
{
puan=puan+100;
printf("Tebrikler 100 Puan Kazandiniz!!\nToplam Puaniniz=%d\n-----------------------------------------------\n",puan);
}
else if(dogrutahmin==3)
{
puan=puan+250;
printf("Tebrikler 250 Puan Kazandiniz!!\nToplam Puaniniz=%d\n-----------------------------------------------\n",puan);
}
else if(dogrutahmin==0) /** Puan azaltma seçeneginin geldigini belirtmek için dogru tahmini sayisini 0 yaptim**/
{
puan=(puan-(puan/4));
printf("Toplam Puaniniz=%d\n-----------------------------------------------\n",puan);
}
else if(dogrutahmin==4) /** Iflas seçeneginin geldigini belirtmek için dogru tahmini sayisini 4 yaptim **/
{
secim='s';
}
break;
case 's':
printf("\nGule Gule");
break;
default:
printf("Hatali giris!\n");
}
}
while(secim!='s');
return 0;
}
void cark_cevir()
{
srand(time(NULL));
int cark;
carkpuan=0;
cark= 1 + rand()%6; /** Çarkin üzerindeki 6 seçenegi 1-6 arasindaki sayilara atadim ve onlari rastgele buldurdum**/
if(cark==1)
{
carkpuan=50;
}
else if(cark==2)
{
carkpuan=100;
}
else if(cark==3)
{
carkpuan=250;
}
else if(cark==4)
{
carkpuan=2; /** iflas secenegi geldigini belirtmek icin **/
}
else if(cark==5)
{
carkpuan=0; /**pas secenegi geldigini belirtmek icin **/
}
else if(cark==6)
{
carkpuan=1; /**puan azaltma oldugunu belirtmek icin **/
}
return 1;
}
void sayi_uret()
{
srand(time(NULL));
sayi1= 1 + rand()%10;
sayi2=sayi1;
sayi3=sayi1;
sayi4=sayi1;
while(sayi2==sayi1)
{
sayi2= 1 + rand()%10;
}
while(sayi3==sayi1 || sayi3==sayi2)
{
sayi3= 1 + rand()%10;
}
while(sayi4==sayi1 || sayi4==sayi2 || sayi4==sayi3)
{
sayi4= 1 + rand()%10;
}
return 1;
}
int tahmin_gir()
{
int tahmin1,tahmin2,tahmin3,tahmin4;
dogrutahmin=5; /** Program her döndügünde bir önceki dogru tahmin sayisi döndürülmesin diye farkli bir deger yapiyorum
cunku mesela pas seçeneginde dogru tahmini sayisinda degisiklik olmaz**/
if(carkpuan==50)
{
printf("Cark Puani=50\n");
printf("50 Puan Kazanmak Icin 1-10 Arasi 4 Sayi Tahmini Giriniz\n(En az 1 dogru tahmin gerekir)\n");
printf("1. Sayiyi Giriniz=");
scanf("%d",&tahmin1);
printf("2. Sayiyi Giriniz=");
scanf("%d",&tahmin2);
printf("3. Sayiyi Giriniz=");
scanf("%d",&tahmin3);
printf("4. Sayiyi Giriniz=");
scanf("%d",&tahmin4);
if(tahmin1==sayi1 || tahmin2==sayi1 || tahmin3==sayi1 || tahmin4==sayi1)
{
dogrutahmin=1;
}
else if(tahmin1==sayi2 || tahmin2==sayi2 || tahmin3==sayi2 || tahmin4==sayi2)
{
dogrutahmin=1;
}
else if(tahmin1==sayi3 || tahmin2==sayi3 || tahmin3==sayi3 || tahmin4==sayi3)
{
dogrutahmin=1;
}
else if(tahmin1==sayi4 || tahmin2==sayi4 || tahmin3==sayi4 || tahmin4==sayi4)
{
dogrutahmin=1;
}
else
{
printf("Basarili tahmin yapilamadi!!\n-----------------------------------------------\n");
}
}
else if(carkpuan==100)
{
printf("Cark Puani=100\n");
printf("100 Puan Kazanmak Icin 1-10 Arasi 4 Sayi Tahmini Giriniz\n(En az 2 dogru tahmin gerekir)\n");
printf("1. Sayiyi Giriniz=");
scanf("%d",&tahmin1);
printf("2. Sayiyi Giriniz=");
scanf("%d",&tahmin2);
printf("3. Sayiyi Giriniz=");
scanf("%d",&tahmin3);
printf("4. Sayiyi Giriniz=");
scanf("%d",&tahmin4);
if(tahmin1==sayi1 || tahmin2==sayi1 || tahmin3==sayi1 || tahmin4==sayi1)
{
if(tahmin1==sayi2 || tahmin2==sayi2 || tahmin3==sayi2 || tahmin4==sayi2)
{
dogrutahmin=2;
}
else if(tahmin1==sayi3 || tahmin2==sayi3 || tahmin3==sayi3 || tahmin4==sayi3)
{
dogrutahmin=2;
}
else if(tahmin1==sayi4 || tahmin2==sayi4 || tahmin3==sayi4 || tahmin4==sayi4)
{
dogrutahmin=2;
}
else
{
printf("Basarili tahmin yapilamadi!!\n-----------------------------------------------\n");
}
}
else if(tahmin1==sayi2 || tahmin2==sayi2 || tahmin3==sayi2 || tahmin4==sayi2)
{
if(tahmin1==sayi1 || tahmin2==sayi1 || tahmin3==sayi1 || tahmin4==sayi1)
{
dogrutahmin=2;
}
else if(tahmin1==sayi3 || tahmin2==sayi3 || tahmin3==sayi3 || tahmin4==sayi3)
{
dogrutahmin=2;
}
else if(tahmin1==sayi4 || tahmin2==sayi4 || tahmin3==sayi4 || tahmin4==sayi4)
{
dogrutahmin=2;
}
else
{
printf("Basarili tahmin yapilamadi!!\n-----------------------------------------------\n");
}
}
else if(tahmin1==sayi3 || tahmin2==sayi3 || tahmin3==sayi3 || tahmin4==sayi3)
{
if(tahmin1==sayi1 || tahmin2==sayi1 || tahmin3==sayi1 || tahmin4==sayi1)
{
dogrutahmin=2;
}
else if(tahmin1==sayi2 || tahmin2==sayi2 || tahmin3==sayi2 || tahmin4==sayi2)
{
dogrutahmin=2;
}
else if(tahmin1==sayi4 || tahmin2==sayi4 || tahmin3==sayi4 || tahmin4==sayi4)
{
dogrutahmin=2;
}
else
{
printf("Basarili tahmin yapilamadi!!\n-----------------------------------------------\n");
}
}
else if(tahmin1==sayi4 || tahmin2==sayi4 || tahmin3==sayi4 || tahmin4==sayi4)
{
if(tahmin1==sayi1 || tahmin2==sayi1 || tahmin3==sayi1 || tahmin4==sayi1)
{
dogrutahmin=2;
}
else if(tahmin1==sayi2 || tahmin2==sayi2 || tahmin3==sayi2 || tahmin4==sayi2)
{
dogrutahmin=2;
}
else if(tahmin1==sayi3 || tahmin2==sayi3 || tahmin3==sayi3 || tahmin4==sayi3)
{
dogrutahmin=2;
}
else
{
printf("Basarili tahmin yapilamadi!!\n-----------------------------------------------\n");
}
}
else
{
printf("Basarili tahmin yapilamadi!!\n-----------------------------------------------\n");
}
}
else if(carkpuan==250)
{
printf("Cark Puani=250\n");
printf("250 Puan Kazanmak Icin 1-10 Arasi 4 Sayi Tahmini Giriniz\n(En az 3 dogru tahmin gerekir)\n");
printf("1. Sayiyi Giriniz=");
scanf("%d",&tahmin1);
printf("2. Sayiyi Giriniz=");
scanf("%d",&tahmin2);
printf("3. Sayiyi Giriniz=");
scanf("%d",&tahmin3);
printf("4. Sayiyi Giriniz=");
scanf("%d",&tahmin4);
if(tahmin1==sayi1 || tahmin2==sayi1 || tahmin3==sayi1 || tahmin4==sayi1)
{
if(tahmin1==sayi2 || tahmin2==sayi2 || tahmin3==sayi2 || tahmin4==sayi2)
{
if(tahmin1==sayi3 || tahmin2==sayi3 || tahmin3==sayi3 || tahmin4==sayi3)
{
dogrutahmin=3;
}
else if(tahmin1==sayi4 || tahmin2==sayi4 || tahmin3==sayi4 || tahmin4==sayi4)
{
dogrutahmin=3;
}
else
{
printf("Basarili tahmin yapilamadi!!\n-----------------------------------------------\n");
}
}
else if(tahmin1==sayi3 || tahmin2==sayi3 || tahmin3==sayi3 || tahmin4==sayi3)
{
if(tahmin1==sayi4 || tahmin2==sayi4 || tahmin3==sayi4 || tahmin4==sayi4)
{
dogrutahmin=3;
}
else
{
printf("Basarili tahmin yapilamadi!!\n-----------------------------------------------\n");
}
}
else
{
printf("Basarili tahmin yapilamadi!!\n-----------------------------------------------\n");
}
}
else if(tahmin1==sayi2 || tahmin2==sayi2 || tahmin3==sayi2 || tahmin4==sayi2)
{
if(tahmin1==sayi3 || tahmin2==sayi3 || tahmin3==sayi3 || tahmin4==sayi3)
{
if(tahmin1==sayi4 || tahmin2==sayi4 || tahmin3==sayi4 || tahmin4==sayi4)
{
dogrutahmin=3;
}
else
{
printf("Basarili tahmin yapilamadi!!\n-----------------------------------------------\n");
}
}
else
{
printf("Basarili tahmin yapilamadi!!\n-----------------------------------------------\n");
}
}
else
{
printf("Basarili tahmin yapilamadi!!\n-----------------------------------------------\n");
}
}
else if(carkpuan==0)
{
printf("Pas!!\n\n-----------------------------------------------\n");
}
else if(carkpuan==1)
{
printf("Puan azaltma!!! puaniniz %25 azaldi\n-----------------------------------------------\n");
dogrutahmin=0; /** puan azaltma seceneginin geldigini belirtmek icin **/
}
else if(carkpuan==2)
{
printf("iflas!!!!! Oyun Bitti!!!");
dogrutahmin=4; /** iflas seçeneginin geldigini belirtmek için **/
}
return 1;
}





