#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <ctype.h>
#define temizle system("cls");
int ebob(int,int);
int main()
{
int sayi1,sayi2;
char karar;
do{
temizle;
printf("\n\t\t\tBirinci Sayiyi Giriniz: "); scanf("%d",&sayi1);
printf("\n\t\t\tIkinci Sayiyi Giriniz: "); scanf("%d",&sayi2);
temizle;
printf("\n\n\n\t\t\tEbob ( %d , %d )= %d",sayi1,sayi2,ebob(sayi1,sayi2));
printf("\n\n\t\tYeni Bir Giris Yapmak Istiyor musunuz? ( E / H )");
do{
karar=toupper(getch());
}while(karar!='H'&&karar!='E');
}while(karar=='E');
temizle;
printf("\n\n\n\t\tProgram Sonlandirildi. . .\n\t\t");
system("PAUSE");
return 0;
}
int ebob(int bolunen,int bolen)
{
return (bolen==0) ? bolunen : ebob(bolen,bolunen % bolen);
}
C Programlama
4 Haziran 2010 Cuma
2. Final Sorusu
1. Final Sorusu
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>
#include <ctype.h>
#define temizle system("cls")
int main()
{
char cumle[21],uzunluk;
int kontrol,i;
char karar;
do{
temizle;
printf("\n\tCumle giriniz: ");
gets(cumle);
uzunluk=strlen(cumle);
kontrol=1;
for(i=0;i<=(uzunluk/2)-1;i++)
{
if(cumle[i]!=cumle[uzunluk-i-1])
kontrol=0;
}
if(kontrol==0)
printf("\n\tGirilen Cumle Polindromik degildir");
else if(kontrol==1)
printf("\n\tGirilen Cumle Polindromiktir");
puts("\n\n\t\tYeni Bir Giris Yapmak Ister misiniz? ( E / H )");
do{
karar=toupper(getch());
}while(karar!='E'&&karar!='H');
}while(karar=='E');
temizle;
printf("\n\n\t\tProgram Sonlandirildi. . .\n\t\t");
system("PAUSE");
return 0;
}
3 Haziran 2010 Perşembe
(Dosyalama + Struct) Bilgi Sistemi
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <ctype.h>
#include <string.h>
#define YapiBoyutu sizeof(struct kayitYapisi)
struct kayitYapisi{
char isim[30];
char soyisim[40];
char numara[15];
char doluMu;
};
char anaMenu(void);
void kayitEkle(FILE*);
void kayitSil(FILE*);
void kayitListele(FILE*);
int main()
{
FILE *dosya;
int i;
struct kayitYapisi insan={"","","",'H'};
char karar;
if((dosya=fopen("dosyam.txt","r+"))==NULL)
{
dosya=fopen("dosyam.txt","w+");
fclose(dosya);
dosya=fopen("dosyam.txt","r+");
printf("DOSYA OLUSTURULDU"); getch();
for(i=0;i<30;i++)
{
fseek(dosya,i*YapiBoyutu,SEEK_SET);
fwrite(&insan,YapiBoyutu,1,dosya);
}
}
while(1==1)
{
karar=anaMenu();
switch (karar)
{
case '1': kayitEkle(dosya); break;
case '2': kayitListele(dosya); break;
case '3': kayitSil(dosya); break;
case '4': fclose(dosya); return;
}
}
}
void kayitEkle(FILE *dosya)
{
int i;
struct kayitYapisi insan;
for(i=0;i<30;i++)
{
fseek(dosya,i*YapiBoyutu,SEEK_SET);
fread(&insan,YapiBoyutu,1,dosya);
if(insan.doluMu=='H')
{
printf("\n\tIsim Giriniz: ");
scanf("%s",&insan.isim);
printf("\n\tSoyisim Giriniz: ");
scanf("%s",&insan.soyisim);
printf("\n\tNumara Giriniz: ");
scanf("%s",&insan.numara);
insan.doluMu='E';
fseek(dosya,i*YapiBoyutu,SEEK_SET);
fwrite(&insan,YapiBoyutu,1,dosya);
printf("\n\n\tKayit Eklendi...");
getch();
return;
}
}
}
void kayitSil(FILE *dosya)
{
char tus,eminMi;
int i;
char isim[20];
char numara[15];
int silinecek=-1;
struct kayitYapisi insan={"","","",'H'};
printf("\n\t(1) Isme gore sil");
printf("\n\t(2) Numaraya gore sil");
do{
tus=getch();
}while(tus!='1'&&tus!='2');
switch (tus)
{
case '1': printf("\n\tSilmek istediginiz kisinin ismini giriniz :");
scanf("%s",&isim);
break;
case '2': printf("\n\tSilmek istediginiz kisinin numarasini giriniz :");
scanf("%s",&numara);
break;
}
for(i=0;i<30;i++)
{
silinecek=-1;
fseek(dosya,i*YapiBoyutu,SEEK_SET);
fread(&insan,YapiBoyutu,1,dosya);
if(insan.doluMu=='E')
{
if(tus=='1'&&strcmp(isim,insan.isim)==0) //isme göre aranıyor ise
silinecek=i;
else if(tus=='2'&&strcmp(numara,insan.numara)==0)
silinecek=i;
}
if(silinecek!=-1)
{
printf("\n\tIsim: %s\n\tSoyisim: %s\n\tNumara: %s",insan.isim,insan.soyisim,insan.numara);
printf("\n\n\t\tBu kayidi silmek istediginize emin misiniz ? (E / H)");
do{
eminMi=getch();
eminMi=toupper(eminMi);
}while(eminMi!='E'&&eminMi!='H');
if (eminMi=='E')
{
insan.doluMu='H';
fseek(dosya,i*YapiBoyutu,SEEK_SET);
fwrite(&insan,YapiBoyutu,1,dosya);
printf("\n\tKayit Silindi..");
}
else if(eminMi='H')
printf("\n\tSilme isleminden vazgecildi");
getch();
return;
}
}
printf("\n\t\tKayit Bulunamadi..");
getch();
return;
}
void kayitListele(FILE *dosya)
{
struct kayitYapisi insan={"","","",'H'};
int i;
system("cls");
printf("%10s%20s%20s","Isim","Soyisim","Numara");
for(i=0;i<30;i++)
{
fseek(dosya,i*YapiBoyutu,SEEK_SET);
fread(&insan,YapiBoyutu,1,dosya);
if(insan.doluMu=='E')
{
printf("\n%10s%20s%20s",insan.isim,insan.soyisim,insan.numara);
}
}
getch();
}
char anaMenu()
{
char tus;
system("cls");
puts("\t Ana Menu");
puts("\n\n\t(1) Kayit Ekle");
puts("\n\t(2) Kayitlari Listele");
puts("\n\t(3) Kayit Sil");
puts("\n\t(4) Cikis");
do{
tus=getch();
}while(tus<'1'||tus>'4');
return tus;
}
(Dizi + Struct) Bilgi Sistemi
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <ctype.h>
#include <string.h>
struct kayitYapisi{
char isim[30];
char soyisim[40];
char numara[15];
char doluMu;
};
char anaMenu(void);
void kayitEkle(struct kayitYapisi*);
void kayitSil(struct kayitYapisi* );
void kayitListele(struct kayitYapisi*);
int main()
{
struct kayitYapisi kisi[30];
int i;
char karar;
for(i=0;i<=29;i++)
{
kisi[i].doluMu='H';
}
while(1==1)
{
karar=anaMenu();
switch (karar)
{
case '1': kayitEkle(kisi); break;
case '2': kayitListele(kisi); break;
case '3': kayitSil(kisi); break;
case '4': exit(1); break;
}
}
}
void kayitEkle(struct kayitYapisi* insan)
{
int i;
for(i=0;i<30;i++)
{
if(insan[i].doluMu=='H')
{
printf("\n\tIsim Giriniz: ");
scanf("%s",&insan[i].isim);
printf("\n\tSoyisim Giriniz: ");
scanf("%s",&insan[i].soyisim);
printf("\n\tNumara Giriniz: ");
scanf("%s",&insan[i].numara);
insan[i].doluMu='E';
printf("\n\n\tKayit Eklendi...");
getch();
return;
}
}
}
void kayitSil(struct kayitYapisi* insan)
{
char tus,eminMi;
int i;
char isim[20];
char numara[15];
int silinecek=-1;
printf("\n\t(1) Isme gore sil");
printf("\n\t(2) Numaraya gore sil");
do{
tus=getch();
}while(tus!='1'&&tus!='2');
switch (tus)
{
case '1': printf("\n\tSilmek istediginiz kisinin ismini giriniz :");
scanf("%s",&isim); printf("***%d***",isim);
break;
case '2': printf("\n\tSilmek istediginiz kisinin numarasini giriniz :");
scanf("%s",&numara);
break;
}
for(i=0;i<30;i++)
{
silinecek=-1;
if(insan[i].doluMu=='E')
{
if(tus=='1'&&strcmp(isim,insan[i].isim)==0) //isme göre aranıyor ise
silinecek=i;
else if(tus=='2'&&strcmp(numara,insan[i].numara)==0)
silinecek=i;
}
if(silinecek!=-1)
{
printf("%s\t%s\t%s",insan[i].isim,insan[i].soyisim,insan[i].numara);
printf("\n\t\tBu kayidi silmek istediginize emin misiniz ? (E / H)");
do{
eminMi=getch();
eminMi=toupper(eminMi);
}while(eminMi!='E'&&eminMi!='H');
if (eminMi=='E')
{
insan[i].doluMu='H';
printf("\n\tKayit Silindi..");
}
getch();
return;
}
}
printf("\n\t\tKayit Bulunamadi..");
getch();
return;
}
void kayitListele(struct kayitYapisi* insan)
{
int i;
system("cls");
printf("%10s%20s%20s","Isim","Soyisim","Numara");
for(i=0;i<30;i++)
{
if(insan[i].doluMu=='E')
{
printf("\n%10s%20s%20s",insan[i].isim,insan[i].soyisim,insan[i].numara);
}
}
getch();
}
char anaMenu()
{
char tus;
system("cls");
puts("\t Ana Menu");
puts("\n\n\t(1) Kayit Ekle");
puts("\n\t(2) Kayitlari Listele");
puts("\n\t(3) Kayit Sil");
puts("\n\t(4) Cikis");
do{
tus=getch();
}while(tus<'1'||tus>'4');
return tus;
}
1 Haziran 2010 Salı
Taban Değiştirme
Dışarıdan girilen tabandaki sayıyı istenilen tabana ceviren program
#include <stdio.h>
#include <ctype.h> //toupper fonk.
#include <conio.h>
#define Temizle system("cls");
int OnlukTabanaCevir(int,int);
int Kontrol(int,int); // 0 > Yanlış / 1 > Doğru
int IstenilenTabanaCevir(int,int);
int UsAl(int,int);
void main()
{
int ilkTaban,Sayi,sonTaban,Sonuc,OnlukTaban;
char Karar;
Temizle;
do
{
printf("Kac Tabaninda Sayi Gireceksiniz? ");
scanf("%d",&ilkTaban);
if (ilkTaban>10)
{
Temizle;
printf("Taban 10'dan Buyuk Olamaz!! \n");
}
}
while (ilkTaban>10);
Temizle;
do
{
printf("%d Tabaninda Bir Sayi Giriniz: ",ilkTaban);
scanf("%d",&Sayi);
if (Kontrol(ilkTaban,Sayi)==0)
{
Temizle;
printf("Girdiginiz Sayinin Rakamlari Tabandan Kucuk Olmalidir!\n");
}
}
while (Kontrol(ilkTaban,Sayi)==0);
printf("Sayiyi Kac Tabanina Cevirmek Istiyorsunuz? ");
scanf("%d",&sonTaban);
OnlukTaban=OnlukTabanaCevir(ilkTaban,Sayi);
Sonuc=IstenilenTabanaCevir(sonTaban,OnlukTaban);
Temizle;
printf("\n\nSayinin On Tabaninda Karsiligi: %d\n\n",OnlukTaban);
printf("%d Tabanindaki %d Sayisinin %d Tabaninda Karsiligi: %d",ilkTaban,Sayi,sonTaban,Sonuc);
printf("\n\nYeni Bir Sayi Girmek Istiyor musunuz? ( E / H )");
do
{
Karar=toupper(getch());
}while(Karar!='E'&&Karar!='H');
if(Karar=='E') main();
else
{
Temizle;
printf("Program Kapatildi...");
}
getch();
}
int OnlukTabanaCevir(int ilkTaban,int Sayi) // Gönderilen Sayının Onluk Tabandaki Karşılığını Döndürür
{
int OnlukTabanda=0,Kuvvet=0;
do
{
OnlukTabanda=OnlukTabanda + (Sayi%10)*UsAl(ilkTaban,Kuvvet);
Sayi=Sayi/10;
Kuvvet++;
}
while (Sayi>=1);
return OnlukTabanda;
}
int IstenilenTabanaCevir(int sonTaban,int Sayi)
{
int Basamak,Toplam=0,Us=1;
while (Sayi>=1)
{
Basamak=Sayi%sonTaban;
Sayi=Sayi/sonTaban;
Toplam+=Basamak*Us;
Us*=10;
}
return Toplam;
}
int Kontrol(int ilkTaban,int Sayi)
{
while (Sayi>=1)
{
if ((Sayi%10)>=ilkTaban)
return 0;
Sayi=Sayi/10;
}
return 1;
}
int UsAl(int Taban,int Kuvvet)
{
int Sonuc=1,i;
for (i=1;i<=Kuvvet;i++)
Sonuc=Sonuc*Taban;
return Sonuc;
}
Girilen Kelimenin harflerini, harf matrisi içinde bulmak
#include <stdlib.h>
#include <conio.h>
#define diziboyutu 5
int main()
{
char dizi[diziboyutu][diziboyutu];
char i,j,k=0;
char kelime[10];
srand(time(0));
for(i=0;i<=diziboyutu-1;i++)
for(j=0;j<=diziboyutu-1;j++)
dizi[i][j]=rand()%26+97;
for(i=0;i<=diziboyutu-1;i++)
{
for(j=0;j<=diziboyutu-1;j++)
printf("%4c ",dizi[i][j]);
printf("\n\n");
}
printf("Bir kelime giriniz: ");
gets(kelime);
while(kelime[k]!='\0')
{
for(i=0;i<=diziboyutu-1;i++)
{
for(j=0;j<=diziboyutu-1;j++)
if(kelime[k]==dizi[i][j])
printf("\n%4c : [%d][%d]",kelime[k],i,j);
}
k++;
}
getch();
return 0;
}
Sayısal Loto Programı
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <conio.h>
#define Temizle system("cls")
void Sirala(int[]);
int main()
{
int KolonSay,*Kolon,i,j,k,Collon;
printf("Kac Kolon Oynamak Istersiniz?");
scanf("%d",&KolonSay);
Temizle;
srand(time(NULL));
for (i=1;i<=KolonSay;i++)
{
Kolon=(int *)malloc(6*sizeof(int));
for (j=0;j<6;j++)
{
KolonOlustur:
*(Kolon+j) = rand()%49+1;
for (k=j-1;k>=0;k--)
if (Kolon[k]==Kolon[j]) goto KolonOlustur;
}
Sirala(Kolon); /*Kolon Elemanları Küçükten Büyüğe Siralanir */
/* i. kolon ekrana yazdirilir */
printf("\n\t%2d. Kolon: ",i);
for (k=0;k<6;k++)
{
printf("%3d ",Kolon[k]);
if (k!=5) printf("-");
}
free(Kolon);
}
printf("\n\n\t%d Kolon Fiyati %d TLdir. Bol Sanslar.",KolonSay,KolonSay);
getch();
return 0;
}
void Sirala(int Kolon[])
{
char kontrol=0;
int i;
while (!kontrol)
{
kontrol=1;
for (i=0;i<5;i++)
if (Kolon[i]>=Kolon[i+1])
{
int temp=Kolon[i];
Kolon[i]=Kolon[i+1];
Kolon[i+1]=temp;
kontrol=0;
}
}
}
Kaydol:
Kayıtlar (Atom)