C,C++,C#

Calismalarimdan bazilari :
Parts from my works:

--HeapSort denemesi (C) --
--A HearSort try(C)--

#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
typedef struct topluluk{
int bilgi;
struct topluluk *sol,*sag;
}SIRALANAN;

main()
{
puts("Agacta yer almasini istediginiz bir tamsayi giriniz.\n");
puts("Girdi islemini sonlandirmak icin bosluk(space) tusuna basiniz.\n");
SIRALANAN *ilk=NULL,*son=NULL;
struct topluluk *sol,*sag;
SIRALANAN *okunan;
okunan=(SIRALANAN *)malloc(sizeof(SIRALANAN));
do{scanf("%d",&(okunan->bilgi));
if(ilk==NULL){
ilk=okunan;
son=okunan;
ilk->sol=NULL;
ilk->sag=NULL;}
else{

son->sol=okunan;
son->bilgi;
son->sol=NULL;
son->sag=NULL;
scanf("%d",&(okunan->bilgi));
if(okunan->bilgi!=NULL){
son->sag=okunan;
son->bilgi;
son->sag=NULL;
son->sag=NULL;}

}
}while(okunan->bilgi!=NULL);

SIRALANAN *gecici;
gecici=ilk;

while(gecici){
printf("%d",(gecici->bilgi));
if(sol->bilgi!=NULL){
gecici=sol;
printf("%d",(gecici->bilgi));
gecici=sag;
printf("%d",(gecici->bilgi));}
else
puts("Alt agac yok");
}
}



--Kume kesisim ve birlesim uygulamasi (C)--

#include<stdio.h>
#include<conio.h>
main()
{
clrscr();
printf("A={1,2,4,6}\nB={2,3,6,8}\n\n");
int A[4]={1,2,4,6},B[4]={2,3,6,8};

/*BIRLESIM*/
int *a,*b;
int i;
int AuB[6];
a=A;/*A dizisinin baslangic adresi a isaretcisine ataniyor.*/
b=B;
for(i=0;i<=5;i++)
{if(*a<*b && *a!=0 && *b!=0) /*A nin veya B nin elemanlarindan bosluk(NULL
olan varsa deger integer oldugundan 0 d”ndrecektir*/
{AuB[i]=*a; /*a nin isaret ettigi deger AUB nin i ninci elemanina ataniyor*/
a++;} /*a nin bellek adresinin degeri bir artiriliyor.*/
else if(*a>*b && *a!=0 && *b!=0)
{AuB[i]=*b;
b++;}
else if(*a==*b && *a!=0 && *b!=0)
{AuB[i]=*b;
a++,b++;}
else if(*a==0 && *b!=0)
{AuB[i]=*b;
b++;}
else if(*b==0 && *a!=0)
{AuB[i]=*a;
a++;}
else if(*a==0 && *b==0)
continue;
}
printf("AuB={%d,%d,%d,%d,%d,%d}\n",AuB[0],AuB[1],AuB[2],AuB[3],AuB[4],AuB[5]);

/*KESISIM*/
int AnB[2]; /*Kesisimde gerekiz oldugu icin isaretci kullanilmamistir.*/
int j,k=0;
for(j=0;j<4;j++)
{for(i=0;i<4;i++)
{if (A[j]==B[i])
{AnB[k]=B[i];
k++;}
}
}

if(AnB==0)
printf("AnB={ }");
else
printf("AnB={%d,%d}",AnB[0],AnB[1]);

getch();
}



--Bir matematiksel esitlikteki parantezlerin dogrulugunu inceleyen program (C)--
--A program that examining the correctness of the usage of parantesses in a mathematical equation--

#include<stdio.h>
#include<conio.h>
#include<ctype.h>
#include<stdlib.h>
#include<dos.h>

#define N 512
char yigin[N]={0};

yiginaKoy(char);
yigindanAl(char);

char *yi=NULL;

yiginaKoy(char veri)
{int k;
yigin[k]=*yi;
if(k>=N)
puts("Yigin Dolu!");
else{
*yi=veri;
yi++;
}return NULL;
}
yigindanAl(char veri)
{
yi--;
veri=*yi;
return veri;
}

main()
{
//yigina fonksiyonun aktarilmasi
char okunan;
puts ("Bir fonksiyon giriniz:");
scanf("%c",&okunan);
if(isalnum(okunan)==0)
{if(okunan!= '+' || '-' || '*' || '/' || '(' || ')' || '[' || ']' || '{' || '}')
{puts("Veri girmediniz!");
getch();
exit(0);}}
else{
while(isalnum(okunan)!=0 && okunan=='+' || '-' || '*' || '/' || '(' || ')' || '[' || ']' || '{' || '}')
{if(okunan=='(' || ')' || '[' || ']' || '{' || '}')
{
yiginaKoy(okunan);

scanf("%c",&okunan);
}
}
}

//yigindan karakter okuma ve parantez kurallarini sorgulama
//yiginin parantez sayilarini genel olarak sorgulama
char parantez;

char *son;
int k;
yi=son;
yi--;
*yi=yigin[k];
if(k%2==0)puts("Parantez sayisi eksik!");
yi++;

//yigindaki parantez sayilarini ayrintili sorgulama

int dalgaParantez,tersdalgaParantez;
int kareParantez,terskareParantez;
int AyParantez,tersAyParantez;

while(yi>=&yigin[0]);
{
yigindanAl(parantez);

if(parantez== '}')tersdalgaParantez++;
else if(parantez== '{')dalgaParantez++;
}
if(dalgaParantez!=tersdalgaParantez)
{puts("'{' ile'}' parantez sayisi esit degil");
delay(2000);
exit(0);
}

son=yi;

while(yi>=&yigin[0]);
{
yigindanAl(parantez);

if(parantez== ']')terskareParantez++;
else if(parantez== '[')kareParantez++;
}
if(kareParantez!=terskareParantez)
{puts("'[' ile']' parantez sayisi esat degil");
delay(2000);
exit(0);
}

son=yi;

while(yi>=&yigin[0]);
{
yigindanAl(parantez);

if(parantez== ')')tersAyParantez++;
else if(parantez== '(')AyParantez++;
}
if(AyParantez!=tersAyParantez)
{puts("'(' ile')' parantez sayisi esit degil");
delay(2000);
exit(0);
}

son=yi;

getch();
}



1 2 3 4 5 6 7 8 9

 

 
 
e-mail : tahircanerb@yahoo.com / tahircanerb@gmail.com