Çanakkale Onsekiz Mart Üniversitesi Bilgisayar Mühendisliği Bölümü yapısal programlama(C) ders notlarım.
#include <stdio.h>
#include <stdlib.h>
int main()
{
int dizi[] = {4,7,3};
int boyut = 3;
printf("\n");
int i,j;
yazdir(dizi, boyut);
printf("\n");
bubblesort(dizi,boyut);
printf("\n");
yazdir(dizi,boyut);
printf("\n");
return 0;
}
void degistirfonk(int *dizi,int i,int j)
{
int temp;
temp=dizi[i];
dizi[i]=dizi[j];
dizi[j]=temp;
}
void bubblesort(int *a,int boyut)
{
int i,temp;
int degisimvar;
do
{
degisimvar=0;
for(i=0;i<boyut;i++)
{
if(a[i]>a[i+1])
{
degistirfonk(a,i,i+1);
}
}
}
while (degisimvar==1);
}
void yazdir(int a[],int boyut)
{
int i;
for(i=0;i<boyut;i++)
{
printf(" %d",a[i]);
}
}
--------------------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
int ikiliArama(int D [],int N,int aranan) {
int ortadaki,sol=0,sag=N-1;
while(sol<=sag)
{
ortadaki=(sol+sag)/2;
if(aranan ==D[ortadaki])
return ortadaki;
else if(aranan>D[ortadaki])
sol=ortadaki+1;
else
sag=ortadaki-1;
}
return-1;
}
int main()
{
int mat[8];
int i,j;
for(i=0;i<8;i++){
printf("Lutfen %d. sayi giriniz :",i+1);
scanf("%d",mat+i);
}
for(i=0;i<8;i++){
for(j=0;j<8;j++){
if( *(mat+j+1) < *(mat+j) ){
//degistir(mat+i,mat+j);
int x = *(mat+j+1);
*(mat+j+1) = *(mat+j);
*(mat+j) = x;
}
}
}
for(i=0;i<8;i++){
printf("%d. Sayi : %d\n",i+1,*(mat+i));
}
int rr = ikiliArama(mat,8,3);
if(rr==-1){
printf("Bulunmadi.\n");
}
else{
printf("Buliundu : %d",rr);
}
return 0;
}
No comments:
Post a Comment