int etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
int etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

6 Ocak 2018 Cumartesi

Palindrom kelime kontrolü



#include  
/* 
Dışarıdan girilen bir kelimenin palindrom olup olmadığını bulan program aba, babab vs.. 
Strlen komutu fonksiyon ile yazılmıştır. 
*/ 
int strlenn(char *); 

int main(void) { 

 int i,j=0; 
 char kelime[10],harf[10]; 

 printf("Kelime: "); 

 gets(kelime); 

 int uzunluk=strlenn(kelime); 


 for(i=uzunluk-1;i > =0;i--) 
 { 
  harf[ j ]=kelime[ i ]; 
  j++; 
 } 

 int a=0; 


 for(i=0;i < uzunluk;i++) 
 { 
  if(harf[ a ]==kelime[ i ]) 
  { 
   a++; 
  } 
 } 


 if(a==uzunluk) 
  printf("Polidrom kelimedir."); 
 else 
  printf("Polidrom kelime degildir."); 


 return 0; 
} 


int strlenn(char *x) 
{ 
 int a=0; 

 while(x[a]!='\0') 
  a++; 

 return a; 
} 



1 Ocak 2015 Perşembe

C Konsol Matriks Toplama ve Çıkarma İşlemlerini Pointer ve Fonksiyon Kullanarak Yapma

KONU : C Konsol Uygulamalar - 2 matriksin kolon ve satırlarını konsol ekranında girerek bir dizide bu değerleri saklama. Saklanan değerleri kullanarak iki matriksi toplama ve çıkarma işlemlerini yapma. Pointer ve Fonksiyon kullanarak işlemleri gerçekleştirme. Referans tip kullanarak değişkenin değişen değerlerini kullanma.
ETİKETLER: konsol - matriks - pointer - array - dizi - char


#include < stdio.h >
#include < stdlib.h >
#define SIZE 2

int i,j;
int m,n;
 
char x;
 
void getMatrixSize(int *matrix,int *matrix2, int &row, int &column);
void showMatrix(int *matrix1,int row,int column);
void sum(int *matrix,int *matrix2,int*sum,int row,int column);
void subtract(int *matrix1,int *matrix2,int *result,int row, int column);

int main(void) {
  int chose;
  int Arr[10][10];
  int Arr2[10][10];
  int result[10][10];
 while(x!='e')
 {
 
  printf("\n\t 1 - Toplama\n");
  printf("\t 2 - Cikarma\n");
  printf("\t 3 - Carpma\n");
  printf("\t 4 - Determinant\n");
  printf("\t 5 - Transpoze\n");
  printf("\t 6 - Cikis\n");
  printf("\n Isteginiz: ");
  scanf("%d",&chose);
 
  int row = 0;
     int column = 0;

  switch(chose)
  {
   case 1:
   {

    getMatrixSize((int *)Arr,(int *)Arr2,row,column);
    sum((int *)Arr,(int *)Arr2, (int * )result,row,column);   
    printf("\n\n\n******************\n Sonuc:   \n\n");
    showMatrix((int * )result,row,column);
    break;
   }

   case 2:
 
    getMatrixSize((int *)Arr,(int *)Arr2,row,column);
    subtract((int *)Arr,(int *)Arr2, (int * )result,row,column);   
    printf("\n\n\n******************\n Sonuc:   \n\n");
    showMatrix((int * )result,row,column);
    break;
   case 3:
    // daha sonra yapılacak
    break;
   case 4:
    // daha sonra yapılacak
    break;
   case 5:
    // daha sonra yapılacak
    break;
   case 6:
    x ='e';
    break;
  }
 }
 return 0;
}
void getMatrixSize(int *matrix,int *matrix2, int &row, int &column)
{

 int k=0;
 while(k!=2)
 {
  printf("\n %d. Matris:\n ",k+1);
  printf("Satir sayisi: ");
  scanf("%d",&row);
  printf("Sutun sayisi: ");
  scanf("%d",&column);
 
   for(i=0;i < row;++i)
   {
    for(j=0;j < column;++j)
    {
     printf("%d.satir %d. sutun: ",i+1,j+1);
     if(k==0)
      scanf("%d",matrix++);
     else if(k==1)
      scanf("%d",matrix2++);
     
    }
   }
   printf("\n");
   if(k==0)
   {
    matrix=matrix-(row*column);
    //showMatrix(matrix,row,column);
   }
   else if(k==1)
   {
    matrix2=matrix2-(row*column);
   // showMatrix(matrix2,row,column);
   }
   k++;
 
 }
}
 
void showMatrix(int *matrix1,int row,int column)
{
 for(i=0;i < row;++i)
 {
  for(j=0;j < column;++j)
  {
   printf("%5d",*(matrix1));
   matrix1++;
  }
  printf("\n");
 }
}
 
void sum(int *matrix1,int *matrix2,int *result,int row, int column)
{

 showMatrix(matrix1,row,column);

 showMatrix(matrix2,row,column);

 for(i=0;i < row;i++)
 {
  for(j=0;j < column;j++)
  {
   *result = *matrix1 + *matrix2;
   printf("%5d",*result);
   matrix1++;
   matrix2++;
   result++;
  }
   printf("\n");
 }

 matrix1 = matrix1 - (row*column);
 matrix2 = matrix2 - (row*column);
    result = result - (row*column);
}

void subtract(int *matrix1,int *matrix2,int *result,int row, int column)
{

 showMatrix(matrix1,row,column);

 showMatrix(matrix2,row,column);

 for(i=0;i < row;i++)
 {
  for(j=0;j < column;j++)
  {
   *result = *matrix1 - *matrix2;
   printf("%5d",*result);
   matrix1++;
   matrix2++;
   result++;
  }
   printf("\n");
 }

 matrix1 = matrix1 - (row*column);
 matrix2 = matrix2 - (row*column);
    result = result - (row*column);
}

8 Aralık 2014 Pazartesi

C Konsol Malloc Kullanarak Hafızada Veri Saklama ve Dizi ile BubbleSort Algoritması Kullanımı

KONU : C Konsol Uygulamalar - Bubble sort algoritması kullanarak konsol ekranından girilen sayıları sıralama. Konsoldan girilen sayıları int tipinde bir diziye atama. Hafızada int tipinde girilen sayıları tutmak için yer ayırma ve bu adresi pointer ile kullanma. Pointer parametre alan fonksiyon tanımlama ve kullanma


#include < stdio.h >
#include < stdlib.h >

void bubbleSort(int [],int);
void swap(int *,int *);
int main(void) {
 int *Arr;
 int i=0,n;
 while(1)
 {
  printf("Eleman sayisini girin: ");
  scanf("%d",&n);
  if(n<0)
  break;
  
  Arr=(int *)malloc(sizeof(int)*n);
  if(Arr==NULL)
  {
   printf("Basarisiz.");
   exit(1);
  }
  
  for(i=0;i < n;i++)
  {
   printf("%d.Eleman: ",i+1);
   scanf("%d",&Arr[i]); 
  }
  
  bubbleSort(Arr,n);


  printf("\n\nSonuc :\n\n");
  for(i=0;i < n;i++)
  {
   printf("%d.Eleman: %d \n",i+1,Arr[i]);
  
  }
  
  free(Arr);
 }
 
 return 0;
}

void bubbleSort(int Array[],int n)
{
 int i,j;
 for(i=0;i < n;i++)
 {
  for(j=0;j < n-1;j++)
  {
   if(Array[j] > Array[j+1])
   swap(&Array[j],&Array[j+1]);
  }
 }
}

void swap(int *ptr1, int*ptr2)
{
 int temp;
 temp=*ptr1;
 *ptr1=*ptr2;
 *ptr2=temp;
}
   

7 Aralık 2014 Pazar

C Konsol İki Boyutlu Diziler Kullanarak Konsoldan Data Alma ve Matriks Şeklinde Konsola Yazdırma

KONU : C Konsol Uygulamalar - iki boyutlu dizilerin kullanımı ve tanımlanması. Bir fonksiyona parametre olarak iki boyutlu bir dizi verme. İki boyutlu diziyi konsoldan girilen sayılar ile doldurma. İki boyutlu bir diziyi pointer olarak gösterip konsol ekranına dizi içeriğini makriks şeklinde yazdırma.
ETİKETLER: c matrix - c matriks- c diziler - c array - c iki boyutlu dizi - c pointer


#include < stdio.h > 
#include < stdlib.h > 
#include < string.h >
#include < conio.h > 

int Matrix1[2][2]={0}; 
int Matrix2[2][2]={0}; 
 

void ShowMatrix(int *); 
void GetMatrixElement(int Matrix[][2],int no) ;

int main(void)
{ 


 //int i,j; 
 //printf("1.Matris:\n\n"); 
 //for(i=0;i<2;i++) 
 //{ 
 // for(j=0;j<2;j++) 
 // { 
 //  printf("%d satir %d sutun=",i+1,j+1); 
 //  scanf("%d",&Matrix1[i][j]); 
 // } 
 //} 


 GetMatrixElement(Matrix1,1);

 ShowMatrix((int *)Matrix1); 

    GetMatrixElement(Matrix2,2);

 ShowMatrix((int *)Matrix2); 

 getch();
 return 0; 
} 


void ShowMatrix(int *ptrMatrix ) 
{ 
 int i,j; 
 for(i=0;i < 2;i++) 
 { 
  for(j=0;j < 2;j++) 
  { 
   printf("%5d",*ptrMatrix); 
   ptrMatrix++; 
  } 
  printf("\n"); 
 } 
} 


void GetMatrixElement(int Matriks[][2], int no) 
{ 
 //Bu alanda 2ye2lik 2 matrisin satir ve sutun sayılarını isteyecek. 
 //Daha sonra ShowMatrix fonksiyonu kullanılarak ekrna gösterilecek. 
 //Nasıl yapabilirim? 

 int i,j; 

 printf("%d. Matriks:\n\n",no); 

 { 
  for(i=0;i < 2;i++) 
  { 
   for(j=0;j < 2;j++) 
   { 
    printf("%d satir %d sutun=",i+1,j+1); 
    scanf("%d", &Matriks[i][j]); 
   } 
  } 

 } 
}
 

29 Kasım 2014 Cumartesi

C Konsol Girilen 5 Sayının Farklı Olmasını Sağlama

KONU : C Konsol Uygulamalar - Klavyeden girilen 5 adet sayının birbirlerinden farklı girilmesini sağlamaktadır. Aynı sayı girilmiş ise kaçıncı sayı ile aynı olduğunu söylemekte ve tekrardan sayı girmesini istemektedir. Bütün sayılar farklı olduğu hesaplandıktan sonra program girilen 5 farklı sayıyı konsol ekranına yazdıracak. Bu işlemden sonra kullanıcıdan prgorama devam edip edilmeyeceğini soran bir yazı konsol ekranına yazdırılacak. Kullanıcı devam seçeneğini seçtikten sonra program kullanıcıdan yeni farklı 5 sayı girilmesini isteyecek.
ETİKETLER: c konsol - c sayılar - c döngüler - c while - c for


//KONU : Klavyeden girilen 5 adet sayının birbirlerinden farklı girilmesini sağlamaktadır.
//Aynı sayı girilmiş ise kaçıncı sayı ile aynı olduğunu söylemekte ve tekrardan sayı girmesini istemektedir. 
 
#include < stdio.h >
#include < stdlib.h >

int main()
{
 int kenarUzunlugu,i,k,secim;

 bool devamEtsinMi=true; //programdan çıkılmak istendiğinde false değerini alacak

 while(devamEtsinMi)
 {
  int girilenSayilar[5];
  int girilenSayiSayisi = 0;
  int girilenSayi = 0;
  int guncellenecekSayi = -1;

  printf("\n 5 tane farkli  sayi giriniz : \n");
  int devamMi = 1;
  bool islemTamam = 1;

  while (true)
  {

   // 5 tane farklı sayı girilmesini bekliyecek
   while (true)
   {
    scanf("%d",&girilenSayi);

    if (girilenSayiSayisi < 5)
    {
     girilenSayilar[girilenSayiSayisi++] = girilenSayi;

     //Yeni sayı girmeye devam ediyorum. 

    }
    else if(islemTamam == 0)
    {
     girilenSayilar[guncellenecekSayi] = girilenSayi;
    }



    if (girilenSayiSayisi == 5)
    {
     islemTamam = 1;
     for (int i = 0; i < girilenSayiSayisi; i++)
     {
      for (int j = i+1; j < girilenSayiSayisi; j++)
      {
       if ( girilenSayilar[i] == girilenSayilar[j])
       {
        printf("\n %d . sayi ile %d. sayi ayni girilmiştir\n ", i+1, j+1);
        printf("\n %d . sayiyi tekra giriniz\n ", j+1);
        guncellenecekSayi = j;
        i = girilenSayiSayisi;
        j = girilenSayiSayisi;
        islemTamam = 0;
       }
       
      }
     }

    }

    if(islemTamam ==1 && girilenSayiSayisi == 5)
    {
     break;
    }
   }

   
      
 
   printf("\n5 sayi girilmiştir. Bunlar: \n ");
   for (int i = 0; i < girilenSayiSayisi; i++)
   {
     printf(" %d  - ",girilenSayilar[i] );
   }

   


   //Kullanıcı yeni 10 sayı girmek isteyip istemediğini soralım

   printf("\n\n\nYeni 5 sayi girmek icin->1, programdan cikmak icin ->0 giriniz");

   scanf("%d",&devamMi); 


   //Eğer kullanıcı programdan çıkmak istiyorsa döngüden break komutu ile çıkalım.

   if (devamMi == 0)
    break;

   girilenSayiSayisi = 0;
  }

  return 0;
 }
}


21 Kasım 2014 Cuma

C Konsol MasterMind Sayı Tahmin Etme Oyunu

KONU : C Konsol Uygulamalar - rastgele 4 basamaklı sayı oluşturma. 4 basamaklı sayıyı basamaklarına ayırma. 4 basamaklı sayı tahmin etme oyunu. Mastermind oyun uygulaması oluşturma. Sonsuz döngü kullanımı ve break komutu kullanımı.
ETİKETLER: c - konsol - mastermind - basamak - matematik - random - rastgele - sayı - for - while


#include  < stdio.h >
#include < string.h >
#include < stdlib.h > 

void main()
{

 char estimatedNumber[4];

 int  i, length;

 //int tipine dönüştüreceğimiz sayı
  int digitOk = 0;
  int digitNotOk = 0;

 //basamak değeri: abcd girilen sayımız d -> digitValue[3] olarak temsil edecek
 int digitValue[4];

 int targetNumber[4];

 //tahmin edilecek sayının basamaklarını oluşturalım
 for(i=0; i<4; i++)
    {
  targetNumber[i] = (rand() + rand())%10; // rand() fonksiyonu ile 0 - 10 arasında bir sayı oluşturuyorum
 }

 while(true)//sonsuz döngü, çıkılmak istenilene kadar devam edecek bir döngü oluşturuyorum.
 {
  digitOk = 0;
  digitNotOk = 0;

  //konsoldan bir sayı giriniz.
  printf("\n\nEnter a number: ");

  //konsoldan girilen sayıyı oku
  gets(estimatedNumber);

  //sayının uzunluğunu kontrol et
  length = strlen(estimatedNumber);

  //okunan dört basamaklı sayıyı int tipine dönüştür
  for(i=0; i < length; i++)
  {
   digitValue[i] = estimatedNumber[i] - '0';


   bool digitAvailable = false;

   for(int j=0; j<4; j++)
   {
    if(digitValue[i] == targetNumber[j])
    {
     digitAvailable = true;
     break;
    }
   }
   
   if(digitAvailable == true)
   {
    if(digitValue[i] == targetNumber[i])
    {
     digitOk++;
    }
    else
    {
     digitNotOk++;
    }
   }
   
  }

  printf(" Information =  +%d  -%d ", digitOk, digitNotOk);

  if(digitOk == 4)
  {
   break;
  }
 }

 printf("\n ****Game Over**** ");
 printf("\n ****Game Over**** ");
 scanf("%d",&i);
}

20 Kasım 2014 Perşembe

C konsolda konsol ekranına girilen kelimeleri tersine çevirip konsol ekranına yazdırma

KONU : C Konsol Uygulamalar - konsol ekranında girilen kelimeleri tersine çevirip konsol ekranına yazdırma uygulaması.
ETİKETLER: dizi - c - c konsol - string - char - int - ters- for döngüsü


#include < stdio.h >
#include < string.h >

void TersiniYaz(char str[]);

int main()
{
 char yazi[100];

 printf(" Tersini yazdirmak istediginiz yaziyi giriniz ");
 
 scanf("%s", yazi);
 
 TersiniYaz(yazi);
 
 printf("Tersine yazilimi : ");
 
 printf("%s",yazi);

 int c;
 scanf("%d", &c);
 
 return 0;
}

void TersiniYaz(char yazi[])
{
 int i,j;

 char tersyazi[100];

 j=0;

 for(i=strlen(yazi)-1; i != -1; i--)
 {
  tersyazi[j]=yazi[i]; 
  j++;  // bir sonraki karaktere geç
 }

 tersyazi[j]='\0';

 strcpy(yazi,tersyazi);
}
   

17 Kasım 2014 Pazartesi

C Konsol bir dizideki elemanların asal mı olup olmadıklarını fonksiyon kullanarak bulma

KONU : C Konsol Uygulamalar - C Konsol bir dizideki elemanların asal mı olup olmadıklarını fonksiyon kullanarak bulma. Asal olan sayıları konsol ekranına yazdırma.
ETİKETLER: c konsol - asal sayı - asal - döngü - if else - for döngüsü


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

int asalmi(int sayi);

int main(void)
{

 int diziElemanSayisi = 10;
 int sayilar[] = {2,4,5,6,7,4,3,5,6,7,9,11};
 int deger  = 0;

 for(int i = 0; i < diziElemanSayisi; i++)
 {
  int asal = 1;

  deger = asalmi(sayilar[i]);
  if(deger == 1) 
  {
   printf("%d  ", sayilar[i]);
  }
 }

 getch();
}

int asalmi(int sayi)
{
 int asal = 1;

 for (int i = 2; i < sayi; i++)
 {

  if(sayi < 2)
  {
   asal =0;
  }
  else if(sayi == 2)
  {
   asal =1;
  }
  else if(sayi > 2)
  {
   for (int j = 2; j < sayi; j++)
   {

    if (sayi % j == 0)
     asal = 0;

   }

  }

 }

 // sayı asal ise fonksiyon true dönecek
 return asal;
}

Etiketler

Array (9) bool (3) break (1) BubbleSort (1) C (23) char (4) Char Sınıfı (1) conio.h (5) Console (4) Dizi (1) Diziler (11) Döngüler (24) File Sınıfı (1) Fonksiyon (3) For (12) Function (2) Game (1) Getch (1) gets (1) if-else (6) if-else örnekleri (15) int (8) Konsol (16) Konsol Okuma (16) Konsol Yazdırma (17) Matematik (14) Oyun (1) Pointer (2) printf (9) scanf (8) Sort (1) stdio.h (10) stdlib.h (8) strcpy (1) String (1) string.h (2) Swap (1) Switch Case (3) time.h (1) while (5)