Ubuntu Türkiye

Yazılım => Programlama => C/C++ => Konuyu başlatan: -DıLgEş- - 29 Temmuz 2015 - 17:23:06

Başlık: C ve C++ Örnek Kod Paylaşımı
Gönderen: -DıLgEş- - 29 Temmuz 2015 - 17:23:06
   Bu konu isteyenlerin C ve C++ dillerinde yazmış oldukları kodları paylaşması için açılmıştır. Katılan herkese çok teşekkür ediyorum. İlk birkaç kodu ben aktarıyorum...

Örnek Kod: Renkli, 4 işlem yapabilen basit bir Hesap Makinesi...

/*-----HESAP MAKİNESİ 4 İŞLEM-----*/
#include <iostream>
#include <cstdlib>
#include "unistd.h"
#include "my/getch.h" //usr/include/my
/*_.-*-._SABİT DEĞİŞKENLER_.-*-._*/
#define KALIN   "\e[01m"
#define ITALIK  "\e[03m"
#define GUMUS   "\e[02m"
#define KIRMIZI "\e[31m"
#define SARI    "\e[33m"
#define MAVI    "\e[34m"
#define MOR     "\e[35m"
#define YESIL   "\e[32m"
#define NORMAL  "\e[00m"
//std Aduzayı Kullanımı
using namespace std;
//Değişkenler
float sayi1=0, sayi2=1;
//Fonksiyon Prototipleri
void Ana_Menu();
void Toplama();
void Cikarma();
void Carpma();
void Bolme();
//Satıriçi Fonksiyon
inline void Karsilama( void )
{
    system("clear");
    cout<<KALIN<<KIRMIZI<<"\t\t\tHESAP MAKİNESİ"<<NORMAL<<endl;
    cout<<ITALIK<<"\t\t\tYükleniyor!!!"<<NORMAL<<endl;
    cout<<"\t\t\t";
    sleep(5);
    cout<<KIRMIZI<<"Yükleme Tamamlandı..."<<NORMAL<<endl;
    sleep(3);
}
//Ana Fonksiyon
int main()
{
    Ana_Menu();

    getch();
    return 0;
}
//Ana_Menu Fonksiyonun Tanımlanması
void Ana_Menu()
{
    Karsilama();
    system("clear");
    int secim=0;

    cout<<SARI<<"_H_E_S_A_P___M_A_K_İ_N_E_S_İ_"<<NORMAL<<endl;
    cout<<MAVI<<"_Toplama___________________1_"<<NORMAL<<endl;
    cout<<MOR<<"_Çıkarma___________________2_"<<NORMAL<<endl;
    cout<<YESIL<<"_Çarpma____________________3_"<<NORMAL<<endl;
    cout<<GUMUS<<"_Bölme_____________________4_"<<NORMAL<<endl;
    cout<<SARI<<"_H_E_S_A_P___M_A_K_İ_N_E_S_İ_"<<NORMAL<<endl;
    cout<<MAVI<<"_Seçiminiz: ";
    cin>>secim;
    cout<<NORMAL;

    switch(secim)
    {
        case 1:
            Toplama();
            break;
        case 2:
            Cikarma();
            break;
        case 3:
            Carpma();
            break;
        case 4:
            Bolme();
            break;
        default:
            cout<<KIRMIZI<<"Hatalı Seçim Yaptınız... Çıkış Yapılıyor!!!"<<endl;
            sleep(3);
            cout<<"________________________________________________________________________________"<<NORMAL<<endl;
    }
}
//Toplama Fonksiyonunun Tanımlanması
void Toplama()
{
    system("clear");
    int secim;

    cout<<YESIL<<"--->>> Birinci Sayıyı Giriniz: ";
    cin>>sayi1;
    cout<<NORMAL<<MOR<<"--->>> İkinci Sayıyı Giriniz: ";
    cin>>sayi2;
    cout<<NORMAL<<GUMUS<<"--->>> SONUÇ: "<<NORMAL<<KIRMIZI<<sayi1+sayi2<<endl;
    cout<<NORMAL<<ITALIK<<"\t\t\tAna Menü'ye dönmek için 1'e;"<<endl;
    cout<<"\t\t\tÇıkış Yapmak için rastgele bir tuşa basınız..."<<endl;
    cin>>secim;
    cout<<NORMAL;

    if(secim==1)
        Ana_Menu();
}
//Cikarma Fonksiyonunun Tanımlanması
void Cikarma()
{
    system("clear");
    int secim;

    cout<<YESIL<<"--->>> Birinci Sayıyı Giriniz: ";
    cin>>sayi1;
    cout<<NORMAL<<MOR<<"--->>> İkinci Sayıyı Giriniz: ";
    cin>>sayi2;
    cout<<NORMAL<<GUMUS<<"--->>> SONUÇ: "<<NORMAL<<KIRMIZI<<sayi1-sayi2<<endl;
    cout<<NORMAL<<ITALIK<<"\t\t\tAna Menü'ye dönmek için 1'e;"<<endl;
    cout<<"\t\t\tÇıkış Yapmak için rastgele bir tuşa basınız..."<<endl;
    cin>>secim;
    cout<<NORMAL;

    if(secim==1)
        Ana_Menu();
}
//Carpma Fonksiyonunun Tanımlanması
void Carpma()
{
    system("clear");
    int secim;

    cout<<YESIL<<"--->>> Birinci Sayıyı Giriniz: ";
    cin>>sayi1;
    cout<<NORMAL<<MOR<<"--->>> İkinci Sayıyı Giriniz: ";
    cin>>sayi2;
    cout<<NORMAL<<GUMUS<<"--->>> SONUÇ: "<<NORMAL<<KIRMIZI<<sayi1*sayi2<<endl;
    cout<<NORMAL<<ITALIK<<"\t\t\tAna Menü'ye dönmek için 1'e;"<<endl;
    cout<<"\t\t\tÇıkış Yapmak için rastgele bir tuşa basınız..."<<endl;
    cin>>secim;
    cout<<NORMAL;

    if(secim==1)
        Ana_Menu();
}
//Bölme Fonksiyonunun Tanımlanması
void Bolme()
{
    system("clear");
    int secim;

    cout<<YESIL<<"--->>> Birinci Sayıyı Giriniz: ";
    cin>>sayi1;
    cout<<NORMAL<<MOR<<"--->>> İkinci Sayıyı Giriniz: ";
    cin>>sayi2;
    cout<<NORMAL<<GUMUS<<"--->>> SONUÇ: "<<NORMAL<<KIRMIZI<<sayi1/sayi2<<endl;
    cout<<NORMAL<<ITALIK<<"\t\t\tAna Menü'ye dönmek için 1'e;"<<endl;
    cout<<"\t\t\tÇıkış Yapmak için rastgele bir tuşa basınız..."<<endl;
    cin>>secim;
    cout<<NORMAL;

    if(secim==1)
        Ana_Menu();
}
//Kod Sonu...


Örnek Kod: Girilen n sayının ortalamasını alan program...

/*-----Ortalama Al-----*/
#include <iostream>
#include <cstdlib>
#include "my/getch.h"
/*_.-*-._SABİT DEĞİŞKENLER_.-*-._*/
#define MAX 100
//std Aduzayı Kullanımı
using namespace std;
//Ana Fonksiyon
int main()
{
    int n=0;
    float dizi[n];
    float t=0;

    system("clear");

    cout<<"Ortalama alınacak sayı adedini giriniz: ";
    cin>>n;
    if(n>MAX)
        cout<<"Maksimum 100 adet sayının ortalaması alınmaktadır...";
    else if(n<0)
        cout<<"Negatif değer kabul edilmemektedir...";
    else
    {
        for(int i=0; i<n; i++)
        {
            cout<<i+1<<". sayıyı giriniz: ";
            cin>>dizi[i];

            t+=dizi[i];
        }
        cout<<"Girdiğiniz sayıların ortalaması: "<<float(t/n)<<endl;
    }

    getch();
    return 0;
}


Örnek Kod: 20 kişilik bir sınıfta öğrencilerin bir dersten aldığı notlar klavyeden girilecektir. Notlar klavyeden girildikten sonra, sınıfın ortalamasını, sınıftaki en yüksek ve en düşük notu bulan ve ekranda gösteren programın kodu...


#include <iostream>
#include <cstdlib>
//std Aduzayı Kullanımı
using namespace std;
//Ana Fonksiyon
int main()
{
    float dizi[20];
    float t=0, max, min;

    system("clear");

    for(int i=0; i<20; i++)
    {
        cout<<i+1<<". notu giriniz: ";
        cin>>dizi[i];

        t+=dizi[i];
        system("clear");
    }

    min=dizi[0];
    max=dizi[0];
    for(int i=0; i<20; i++)
    {
        if(dizi[i]<min)
            min=dizi[i];
        if(dizi[i]>max)
            max=dizi[i];
        else
            cout<<"Bir Hata Oluştu..."<<endl;
        system("clear");
    }
    cout<<"Derslerin Ortalaması: "<<t/20<<endl;
    cout<<"En Düşük Not: "<<min<<endl;
    cout<<"En Yüksek Not: "<<max<<endl;

    return 0;
}


   Paylaştığım kodlarda getch.h isminde kütüphane var. Bu kütüphanenin amacı getch ve getche fonksiyonlarını kullanmaktır. https://forum.ubuntu-tr.net/index.php?topic=45801.0
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: Sh4oTT - 02 Ağustos 2015 - 04:31:09
Benim gibi yeni ogrenen arkadaslar icin faydali bir konu olmus bende paylasmak isterdimde benimkiler cok basit kalir :) Paylasim icin tesekkurler
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: -DıLgEş- - 03 Ağustos 2015 - 17:27:29
Birkaç gün sonra yeni kodlar paylaşırım. Bu arada kodun basiti zoru olmaz bence... Siz paylaşmak isterseniz sorun olmaz.
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: Pozitron - 04 Ağustos 2015 - 01:54:17
Ben,kendim de C / C++ acemisi olarak birkaç kod paylaşıyim :)

Maksimum-minimum(klasik):
#include <stdio.h>
#include <stdlib.h>


int max(int x,int y,int z);
int main(){
printf("%d",max(int x,int y,int z));
}
int max(int x,int y,int z){
int max1;
if(x>y)
  max1=x;
else
  max1=y;
if(max1>z)
  return max1;
else
  return z;
}


Collatz Zinciri(C ve C++ mevcut) :
#include <stdlib.h>
#include <stdio.h>

int main(){
  int x,sum=0;
  printf("Please enter the number:\t");
  scanf("%d",&x);
  while(x!=1){
    sum++;
    if(x%2==0){
      x=x/2;
      printf("%d\n",x);
      }
    else if(x%2!=0){
      x=(3*x)+1;
      printf("%d\n",x);
      }
    if(x==1){
      printf("This chain accounts for %d number(s)\n",sum);
      break;
      }
}
}


#include <iostream>

using namespace std;

main() {
int num,counter=0;
cout << "Sayıyı giriniz:\t";
cin >> num;
while(num!=1){
  if((num%2)==0){
   num=num/2;
   counter+=1;
   cout << num<< endl ;
   }
  else {
   num=(num*3)+1;
   counter+=1;
   cout << num << endl;
   }
 
  if(num==1){
   counter+=1;
   cout << "Zincirde " << counter << " tane sayı vardır.\n";
   break;
   }
}
}


Faktoriyel(Rekürsif fonksiyon örneği,C için):
#include <stdio.h>

int fac(int i);
int main(){
int n;
printf("Bir sayı giriniz...\t");
scanf("%d",&n);
printf("%d\n",fac(n));
}

int fac(i){
if (i==0 || i==1)
  return 1;
else
  return i*fac(i-1);
}


Ve iyi çalışmayan(çok da iyi test edemedim hatam varsa söylerseniz sevinirim :) ) ikili sayıdan onluk sayıya çeviren:
#include <stdio.h>
#include <math.h>

int usAlma(int taban,int us);


int main(){
int bin=01101011;
int i,sonuc[8],kalan;

for(i=0;i<=7;i++){
  kalan=bin%10;
  bin/=10;
  if(i==0){
   sonuc[i]=1*kalan;
   printf("%d\n",sonuc[i]);
  }
  else if(i>0) {
   sonuc[i]=kalan*(usAlma(2,i));
   printf("%d\n",sonuc[i]);
  }
}
return 0;
}

int usAlma(int taban,int us){
int i;
for(i=1;i<=us;i++){
  i=i*taban;
}
return i;
}
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: Sh4oTT - 23 Ağustos 2015 - 17:02:55
Gece yazdıklarımı paylasayım sormak ıstedıgınız kısım olursa sorabılırsınız veya daha ıyısını yazıp paylasırsanız da memnun olurum.
Onerılerınız olursa da dınlerım tesekkur ederım.


//Omur Hesaplayıcısı

#include <stdio.h>
int main()
{

int Dgun=0, Day=0, Dyil=0;
int Ggun=0, Gay=0, Gyil=0, Tyil=0, Tay=0, Tgun=0;

printf("Lutfen Dogum Tarihinizi Sirasiyla Giriniz(Gun-Ay-Yil): "); //DOGUM TARIHI GIRDISI
scanf("%d", &Dgun); scanf("%d", &Day); scanf("%d", &Dyil);

printf("Lutfen Guncel Tarihi Sirasiyla Giriniz(Gun-Ay-Yil): "); //GUNCEL TARIH GIRDISI
scanf("%d", &Ggun); scanf("%d", &Gay); scanf("%d", &Gyil);

Tyil=Gyil-Dyil; //TOPLAM YILI BULMAK ICIN
Tay=Tyil*12-Day+Gay; //TOPLAM AYI BULMAK ICIN
Tgun=Tyil*365-Dgun+Ggun; //TOPLAM GUNU BULMAK ICIN

printf("%d Yil - %d Ay - %d Gun Yasamissiniz!", Tyil, Tay, Tgun);

}





//HARFLER ILE MERDIVEN YAPMAK

#include <stdio.h>

int main()
{


int i=0, j=0;


for (i=0; i<6; i++)
                   
  {
     for (j=0; j<=i; j++) //YANA DOGRU YAZDIRMAK ICIN
   
       {
         
          printf("%c", 65+j); //65=A ASCII TABOLSUNDA
       } //2.FOR


printf("\n"); //BIR SATIR ASAGI ATLAMAK ICIN

  } //1. FOR

}




//Girilen 2 Sayi Arasindaki(Girilen Sayilarda Dahil) Sayilarin Toplami Ve Girilen Sayilari Ekrana Yazdiran Prog.
#include <stdio.h>

int main()
{

int sayi1=0, sayi2=0, toplam=0, i=0, j=0;

printf("1.Sayi: "); scanf("%d", &sayi1);

printf("2.Sayi: "); scanf("%d", &sayi2);


for (i=sayi1; i<=sayi2; i++)
   
   {
     
      printf("%d", i);

toplam+=i;

        for (j=0; j<1; j++)

           {

              printf("+"); break; // Break Donguden Cıkmak Icın

           } // 2. FOR

   } // 1. FOR

printf("=%d", toplam);

}



//SATIS KONTROLU

#include <stdio.h>

int main()
{

int Dizi[20][12];
char birim=0;

int i=0, j=0, max=0;

for (i=0; i<3; i++)

   {
     for (j=0; j<3; j++)

        {
          printf("Birim%c Ekip%d: ", 65+i, j+1);
          scanf("%d", &Dizi[i][j]);

          if (Dizi[i][j]>max) // EN YUKSEK SATISI KONTROL ETME

             {
               max=Dizi[i][j]; // EN YUKSEK SATISI HAFIZADA TUTMAK
               birim=65+i;   // EN YUKSEK SATISI YAPAN BIRIMI HAFIZADA TUTMAK
             } // IF

        } //2. FOR
   } //1. FOR

printf("Birim%c Toplam: %d Satisla 1.Dir.", birim, max);

return 0;

}
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: -DıLgEş- - 25 Ağustos 2015 - 14:25:38
Biraz daha örnek paylaşayım...

Örnek Kod: Bilgisayarı Kapatan Kronometre Sayacı... Kullanıcının belirttiği süreye göre geri sayım yapar ve bilgisayarı kapatır. Maksimum girilen süre sınırı 60 saniyedir.

#include <iostream>
#include <cstdlib>
#include "unistd.h"

using namespace std;

int main()
{
unsigned int sure, i=0;

cout<<"Bilgisayar kaç saniye sonra kapatılsın: ";
cin>>sure;

if(sure>=0 && sure<=60)
{
        while(i<sure)
        {
            cout<<i<<endl;
            sleep(1);

            ++i;
        }

        cout<<"Süre Doldu... Bilgisayar Kapatılıyor..."<<endl;
        sleep(1);

        system("shutdown -h now");
}
else
{
        cout<<"Süre sınırı 0-60 saniyedir..."<<endl;
}




return 0;
}


Örnek Kod: Bu örnekte kullanıcı istediği kadar sayı giriyor ve bu sayıları program sıralayıp ekranda gösteriyor... İlk olarak Küçükten Büyüğe sıralama:

#include <iostream>
#include "getch.h"

using namespace std;

int main()
{
    int k, n=3;
    int dizi[n];

    cout<<"Kaç adet sayı girilecek: ";
    cin>>n;

    for(int i=0; i<n; i++)
    {
        cout<<(i+1)<<". Sayıyı Giriniz: ";
        cin>>dizi[i];
    }

    /*SIRALAMA...*/

    for(int i=0; i<n-1; i++)
    {
        for(int j=(i+1); j<n; j++)
        {
            if(dizi[i]>=dizi[j])
            {
                k=dizi[i];
                dizi[i]=dizi[j];
                dizi[j]=k;
            }
        }
    }

    cout<<"Girilen Sayıların Sıralanmış Hali;"<<endl;

    for(int i=0; i<n; i++)
        cout<<dizi[i]<<", ";

    getch();
    return 0;
}


Büyükten Küçüğe Sıralama İçin


#include <iostream>
#include "getch.h"

using namespace std;

int main()
{
    int k, n=3;
    int dizi[n];

    cout<<"Kaç adet sayı girilecek: ";
    cin>>n;

    for(int i=0; i<n; i++)
    {
        cout<<(i+1)<<". Sayıyı Giriniz: ";
        cin>>dizi[i];
    }

    /*SIRALAMA...*/

    for(int i=0; i<n-1; i++)
    {
        for(int j=(i+1); j<n; j++)
        {
            if(dizi[i]<=dizi[j])
            {
                k=dizi[i];
                dizi[i]=dizi[j];
                dizi[j]=k;
            }
        }
    }

    cout<<"Girilen Sayıların Sıralanmış Hali;"<<endl;

    for(int i=0; i<n; i++)
        cout<<dizi[i]<<", ";

    getch();
    return 0;
}


Örnek Kod: Yarıçapı Girilen Dairenin Alanını Bulan C++ Kodu

#include <iostream>

#define PI 3.14

using namespace std;

int main()
{
    int yaricap;

    cout<<"Dairenin Yarıçapını Giriniz: ";
    cin>>yaricap;

    cout<<"Dairenin Alanı: "<<yaricap*yaricap*PI<<endl;

    return 0;
}


Örnek Kod: Faktoriyel Hesaplama

#include<iostream>

using namespace std;

long int sonuc=1;

int Faktoriyel(int x)
{
    for( ; x>0; x--)
    {
        sonuc*=x;
    }
}

int main ()
{
    int sayi;

    cout<<"Faktoriyeli Alınacak Sayıyı Giriniz: ";
    cin>>sayi;

    Faktoriyel(sayi);

    cout<<"SONUÇ---------->>>"<<sonuc<<endl;

    return 0;
}


Örnek Kod: Fibonacci Serisi İlk 30 Terim

#include <iostream>

using namespace std;

int main()
{
    int a=1, b=2;

    cout<<a<<endl;
    cout<<b<<endl;

    for(int i=0; i<30; i++)
    {
        int c=a+b;

        cout<<c<<endl;

        a=b;
        b=c;
    }

    return 0;
}


Örnek Kod: İki Basamaklı 11'e Tam Bölünen Sayıları Ekrana Yazdıran Program Kodu

#include <iostream>

using namespace std;

int main()
{
    cout<<"İKİ BASAMAKLI 11'E KALANSIZ BÖLÜNEN SAYILAR"<<endl;

    for(int i=11; i<100; i++)
    {
        if((i%11)==0)
            cout<<i<<endl;
    }

    return 0;
}


Örnek Kod: Yüzde Hesaplama... Önce bir sayı giriliyor ve daha sonra belirtilen sayı ile yüzdesi hesaplanıyor...

#include <iostream>

using namespace std;

int main()
{
    int sayi, yuzde;

    cout<<"Bir sayı giriniz: ";
    cin>>sayi;

    if(sayi!=0)
    {
        cout<<sayi<<" sayısının yüzde kaçı alınsın: ";
        cin>>yuzde;

        cout<<sayi<<" sayısının %"<<yuzde<<"'i: "<<float(sayi*yuzde/100)<<endl;
    }
    else
    {
        cout<<"0 kabul edilmemektedir. Tekrar Deneyiniz..."<<endl;

        main();
    }

}
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: -DıLgEş- - 29 Ağustos 2015 - 12:48:05
Örnek Kod: Çarpım Tablosu... Kullanıcı belli bir sayı aralığı giriyor ve program ona o sayıların 10 ile çarpımına kadar olan sayıları veriyor.

/*RENKLİ...*/
#include <iostream>
#include <cstdlib>
#include "my/getch.h"

using namespace std;

int main()
{
    int ar1, ar2;

    cout<<"Gösterilecek Çarpım Tablosunun Aralığını Belirleyiniz(1 10): ";
    cin>>ar1>>ar2;

    if(((ar1<-1000000) && (ar2<-1000000)) || ((ar1>1000000) && (ar2>1000000)))  //Biraz Fazla Mı Oldu Acaba?
        cout<<"-1000000 ve 1000000 değerleri dışına çıkmayınız..."<<endl;
    else
    {
        system("clear");

        for( ; ar1<=ar2; ar1++)
        {
            for(int i=1; i<11; i++)
            {
                cout<<ar1<<"\e[31m*\e[0m"<<i<<"\e[31m=\e[0m"<<ar1*i<<endl;
            }

            cout<<"\e[35m-----------------------------------------------------\e[0m"<<endl;
        }
    }

    getch();
    return 0;
}



/*RENKSİZ...*/
#include <iostream>
#include <cstdlib>
#include "my/getch.h"

using namespace std;

int main()
{
    int ar1, ar2;

    cout<<"Gösterilecek Çarpım Tablosunun Aralığını Belirleyiniz(1 10): ";
    cin>>ar1>>ar2;

    if(((ar1<-1000000) && (ar2<-1000000)) || ((ar1>1000000) && (ar2>1000000)))  //Biraz Fazla Mı Oldu Acaba?
        cout<<"-1000000 ve 1000000 değerleri dışına çıkmayınız..."<<endl;
    else
    {
        system("clear");

        for( ; ar1<=ar2; ar1++)
        {
            for(int i=1; i<11; i++)
            {
                cout<<ar1<<"*"<<i<<"="<<ar1*i<<endl;
            }

            cout<<"-----------------------------------------------------"<<endl;
        }
    }

    getch();
    return 0;
}


Örnek Kod: Kullanıcı bir sayı dizisi giriyor ve program bu sayıları sıralayıp "dizi.txt" adlı bir dosyaya gönderiyor.

#include <iostream>
#include <fstream>

using namespace std;

int main()
{
    ofstream dosyaya_yaz;
    dosyaya_yaz.open("dizi.txt");

    int n=0, k;
    int dizi[n];

    cout<<"Kaç adet sayı girilecek: ";
    cin>>n;

    for(int i=0; i<n; i++)
    {
        cout<<(i+1)<<". Sayıyı Giriniz: ";
        cin>>dizi[i];
    }

    for(int i=0; i<n-1; i++)
    {
        for(int j=(i+1); j<n; j++)
        {
            if(dizi[i]>=dizi[j])
            {
                k=dizi[i];
                dizi[i]=dizi[j];
                dizi[j]=k;
            }
        }
    }

    for(int i=0; i<n; i++)
    {
        dosyaya_yaz<<dizi[i]<<", ";
    }

    dosyaya_yaz.close();
}


Örnek Kod: Klavyeden girilen 2 sayıdan birinci büyükse çarpan, ikinci büyükse toplayan programı yazınız...

/*-----___SORU_2___-----*/
#include <iostream>

using namespace std;

int main()
{
    int sayi1, sayi2;

    cout<<"Birinci Sayıyı Giriniz: ";
    cin>>sayi1;

    cout<<"İkinci Sayıyı Giriniz: ";
    cin>>sayi2;

    if(sayi1>sayi2)
        cout<<"Çarpım Sonucu: "<<sayi1*sayi2<<endl;
    else if(sayi1<sayi2)
        cout<<"Toplam Sonucu: "<<sayi1+sayi2<<endl;
    else
        cout<<"Girilen sayılar eşit olduğundan yapılacak işlem bulunamadı..."<<endl;

    return 0;
}


Örnek Kod: Klavyeden girilen 15 adet sayı, bir sayı dizisinde saklanacaktır. Bu sayı dizisinin ortalaması hesaplandıktan sonra ortalamanın altında kalan kaç sayı olduğunu bualn ve ekrana yazdıran programı yazınız...

/*-----___SORU_3___-----*/
#include <iostream>
#include <cstdlib>
#include "my/getch.h"
//std Aduzayı Kullanımı
using namespace std;
//Ana Fonksiyon
int main()
{
    int sayilar[14], sayac=0, t=0;
    float ortalama;

    system("clear");

    for(int i=0; i<14; i++)
    {
        cout<<i+1<<". sayıyı giriniz: ";
        cin>>sayilar[i];

        t+=sayilar[i];
        ortalama=(float)t/14;
    }

    for(int i=0; i<14; i++)
    {
        if(sayilar[i]<ortalama)
            sayac++;
        else
            continue;
    }

    system("clear");

    cout<<"Sayıların Ortalaması: "<<ortalama<<endl;
    cout<<"Ortalamadan Düşük Girdiğiniz Sayılar "<<sayac<<" Tanedir..."<<endl;

    getch();
    return 0;
}


Örnek Kod: Kullanıcı Tl miktarını girecektir. Eğer tl 50'den küçükse indirim yapılmayacaktır. 50'den büyük olduğu takdirde %10, 100 tl ve üzerinde ise %15 indirim yapılacaktır. Kullanıcının girdiği tl sayısına göre bu indirimleri yapan programı yazınız...

/*-----___SORU_4___-----*/
#include <iostream>

using namespace std;

int main()
{
    float tl, indirim;

    cout<<"Tl Miktarını Giriniz: ";
    cin>>tl;

    if(tl<50)
    {
        cout<<"İndirim: %0"<<endl;
        cout<<"Fiyat: "<<tl<<endl;
    }
    else if((tl>=50) && (tl<100))
    {
        indirim=tl*10/100;

        cout<<"İndirim: %10"<<endl;
        cout<<"Fiyat: "<<tl-indirim<<endl;
    }
    else
    {
        indirim=tl*15/100;

        cout<<"İndirim: %15"<<endl;
        cout<<"Fiyat: "<<tl-indirim<<endl;
    }

    return 0;
}


Örnek Kod: Klavyeden bir karakter girildiğinde aşağıdaki çıktıyı veren programı yazınız...
Örnek Program Çıktısı:
Hangi karakteri kullanmak istiyorsunuz: *
*
**
***
****
*****
****
***
**
*


/*-----___SORU_5___-----*/
#include <iostream>

using namespace std;

int main()
{
    char karakter;

    cout<<"Hangi karakteri kullanmak istiyorsunuz: ";
    cin>>karakter;

    for(int i=0; i<5; i++)
    {
        for(int j=0; j<i+1; j++)
        {
            cout<<karakter;
        }

        cout<<endl;
    }

    for(int i=0; i<5; i++)
    {
        for(int j=i+1; j<5; j++)
        {
            cout<<karakter;
        }

        cout<<endl;
    }

    return 0;
}


Örnek paylaşmaya devam edeceğim. Kod paylaşan herkese teşekkür ediyorum...
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: mozhan - 30 Ağustos 2015 - 02:51:37
Bir sayı palindrom mu değil mi kuyruk yapısı ile (okunuşu düz ve tersten aynı olan stringler)
#include<stdio.h>
#include<stdlib.h>
typedef struct s {
char item;
struct s *next;
} STACK;
STACK *sp = NULL;
int push(int item) {
STACK *p;
p = (STACK *) malloc(sizeof(STACK));
if (p == NULL) {
printf("Error, not enough memory\n");
return -1;
} else {
p->item = item;
p->next = sp;
sp = p;
return 0;
}
}
int pop() {
STACK *p;
int i;
if (sp == NULL) {
printf("Stack is empty\n");
return -1;
} else {
p = sp;
i = sp->item;
sp = sp->next;
free(p);
return i;
}
}
void reset() {
STACK *p;
while (sp != NULL) {
p = sp;
sp = sp->next;
free(p);
}
}
int size() {
STACK *p;
int i = 0;
p = sp;
while (p) {
i++;
p = p->next;
}
return i;
}
int checkPalindrome(char *a) {
int i = 0, j = 0, n = 0;
while (a[i] != '\0') {
n = push(a[i]);
if (n != 0) {
printf("Error, not enough memory\n");
return -1;
}
i++;
}
while (i > j) {
if (pop() == a[j])
n++;
j++;
}
reset();
if (n == j)
return 1;
return 0;
}
int main(void) {
char string[30], n;
while (1) {
printf("Enter a string:\n");
scanf("%s", string);
n = checkPalindrome(string);
if (n == 1)
printf("This string is a palindrome\n");
else if (n == 0)
printf("This string is not a palindrome\n");
else
printf("This string is NULL\n");
}
return 0;
}



Bu da bankalardaki kuyruk olayı. 3 tip müşteri var hesabı olmayan , olan ve iş adamı kuyruk bilet alış sırasını da dikkate alarak 3 iş adamı 2 hesabı olan ve 1 olmayan alıyor
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
typedef struct q {
int type;
char name[20];
struct q *next;
} customer;
customer *front0 = NULL;
customer *front1 = NULL;
customer *front2 = NULL;
customer *last0 = NULL;
customer *last1 = NULL;
customer *last2 = NULL;
int counter = 1, a;
void enqueue(customer item) {
customer *p;
p = (customer *) malloc(sizeof(customer));
if (p == NULL) {
printf("Memory is full\n");
}
switch (item.type) {
case 0:
strcpy(p->name, item.name);
p->next = NULL;
if (front0 == NULL) {
front0 = p;
last0 = p;
} else {
last0->next = p;
last0 = p;
}
break;

case 1:
strcpy(p->name, item.name);
p->next = NULL;
if (front1 == NULL) {
front1 = p;
last1 = p;
} else {
last1->next = p;
last1 = p;
}
break;

case 2:
strcpy(p->name, item.name);
p->next = NULL;
if (front2 == NULL) {
front2 = p;
last2 = p;
} else {
last2->next = p;
last2 = p;
}
break;
}

}
customer dequeue() {
customer *p, asd, empty;
if (counter < 4) {
if (front2 == NULL) {
printf("Business queue is empty\n");
goto x;
}
p = front2;
front2 = front2->next;
if (front2 == NULL) {
last2 = NULL;
}
strcpy(asd.name, p->name);
asd.type = 2;
free(p);
return asd;
}
if (counter > 3 && counter < 6) {
x: if (front1 == NULL) {
printf("Individuals queue is empty\n");
goto y;
}
p = front1;
front1 = front1->next;
if (front1 == NULL) {
last1 = NULL;
}
strcpy(asd.name, p->name);
asd.type = 1;
free(p);
return asd;
}
if (counter > 5) {
y: if (front0 == NULL) {
printf("Queue is empty\n");
}
p = front0;
front0 = front0->next;
if (front0 == NULL) {
last0 = NULL;
}
strcpy(asd.name, p->name);
asd.type = 0;
free(p);
return asd;
}
return empty;
}

int main(void) {
customer temp, aaa;
int choice, x;
while (1) {
printf("\nPlease select your operations:\n");
printf("1==>Add\n");
printf("2==>Delete\n");
printf("0==>exit\n");
printf("Your Choice:");
scanf("%d", &choice);
if (choice != 1 && choice != 2 && choice != 0)
printf("Your choice not in the list, please try again\n");
switch (choice) {
case 1:
printf("Name:");
scanf("%s", temp.name);
printf("----Priority----\n");
printf("1==>Transients\n");
printf("2==>Individuals\n");
printf("3==>Business\n");
scanf("%d", &x);
temp.type = x - 1;
enqueue(temp);
break;
case 2:
aaa = dequeue();
counter++;
if (counter > 6)
counter = counter % 6;
printf("name: %s \nPriority: %d", aaa.name, aaa.type);
break;
}
if (choice == 0)
break;
}
return 0;
}

Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: Sh4oTT - 15 Eylül 2015 - 02:29:14
Girilen dört haneli sayıları okutmak:
//SayiyiYaziylaYaz.c

#include <stdio.h>

void birlikCevirYaz(int);
void onlukCevirYaz(int);

int main() {

int sayi=0;
int basamak1=0;
int basamak2=0;
int basamak3=0;
int basamak4=0;

while (sayi!=-1) {

printf("Dort Basamakli Bir Sayi Girin: ");
scanf("%d", &sayi);

if (sayi==-1) break;

//Basamaklari Bulalim:

basamak1= sayi % 10;             //Birler Basamagi
basamak2= (sayi % 100) / 10;    //Onlar Basamagi
basamak3= (sayi % 1000) / 100; //Yuzler Basamagi
basamak4= sayi / 1000;        //Binler Basamagi

//Ekrana Yazdiralim:

if (basamak4!=1) birlikCevirYaz(basamak4);
printf(" Bin ");

if (basamak3!=1) birlikCevirYaz(basamak3);
if (basamak3!=0) printf(" Yuz ");

onlukCevirYaz(basamak2);
printf(" ");

birlikCevirYaz(basamak1);
printf("\n\n");

}

return 0;
}



//Fonksiyonlarimizi Yazalim



void birlikCevirYaz (int a){

switch (a){

case 1:
printf("Bir");
break;

case 2:
printf("Iki");
break;

case 3:
printf("Uc");
break;

case 4:
printf("Dort");
break;

case 5:
printf("Bes");
break;

case 6:
printf("Alti");
break;

case 7:
printf("Yedi");
break;

case 8:
printf("Sekiz");
break;

case 9:
printf("Dokuz");
break;

case 10:
printf("On");
break;

}

}




void onlukCevirYaz (int a){

switch (a){

case 1:
printf("On");
break;

case 2:
printf("Yirmi");
break;

case 3:
printf("Otuz");
break;

case 4:
printf("Kirk");
break;

case 5:
printf("Elli");
break;

case 6:
printf("Altmis");
break;

case 7:
printf("Yetmis");
break;

case 8:
printf("Seksen");
break;

case 9:
printf("Doksan");
break;

default:
printf("\b");

}

}










































Girilen degerlere göre dildörtgen cizen fonksiyon:

//DongulerleDikdortgenCizimi

#include <stdio.h>

void dikdortgenciz (int enUzunluk, int boyUzunluk){

char karakter=0;
int i=0;
int j=0;

//Once Sol Ust Kose:

karakter=218; //KOSE
printf("%c", karakter);

//Ust Kenarları Cızelım:

karakter=196; //Yatay Cizgi

for (i=0; i<enUzunluk-2; i++){
printf("%c", karakter);
}

//Sag Ust Kose:

karakter=191; //KOSE
printf("%c", karakter);
printf("\n");


//Govde Kismi:

//Sol Yan Cizgiler:

for (i=0; i<boyUzunluk-2; i++){
karakter=179; //Dikey Cizgi
printf("%c", karakter);

for (j=0; j<enUzunluk-2; j++){
karakter=32; //Bosluk karakteri
printf("%c", karakter);
}
karakter=179; //Dikey Cizgi
printf("%c", karakter); //Sag Yandaki Cizgiler
printf("\n");
}

//Sol Alt Kose:

karakter=192;
printf("%c", karakter);

//Alt Kenarlar:

karakter=196; //Yatay Cizgi

for(i=0; i<enUzunluk-2; i++){
printf("%c", karakter);
}

//Sag Alt Kose:

karakter=217; //KOSE
printf("%c", karakter);


}



int main(){

int enUzunluk=0;
int boyUzunluk=0;

printf("En ve Boy Uzunluklarini Giriniz: ");
scanf("%d%d", &enUzunluk, &boyUzunluk);
printf("\n\n");

dikdortgenciz(enUzunluk, boyUzunluk);
printf("\n");
}

















Basit matematik fonksiyonları:

//MatematikFonksiyonlari.c
//12.09.2015

#include <stdio.h>


void menu();
int min (int, int);
int max (int, int);
int kare (int);
int kup (int);
int mutlak (int);



int main(){

int i=0;
int j=0;
int secim=0;

//MENU Ciz:

menu();

printf("\nSecim Yapin (1-5) : ");
scanf("%d", &secim);
printf("\n");

switch(secim){

case 1:
printf("Iki sayi girin: ");
scanf("%d%d", &i, &j);
printf("Min: %d", min(i,j));
break;

case 2:
printf("Iki sayi girin: ");
scanf("%d%d", &i, &j);
printf("Max: %d", max(i,j));
break;

case 3:
printf("Bir sayi girin: ");
scanf("%d", &i);
printf("Karesi: %d", kare(i));
break;

case 4:
printf("Bir sayi girin: ");
scanf("%d", &i);
printf("Kupu: %d", kup(i));
break;

case 5:
printf("Bir sayi girin: ");
scanf("%d", &i);
printf("Mutlak Degeri: %d", mutlak(i));
break;

default:
printf("1-5 Degerlerinden Birini Seciniz!");
}
return 0;
}

void menu(){
printf("\n\n");
printf("******************\n");
printf("*      MENU     **\n");
printf("******************\n");

printf("\n\n");
printf("Minimum Bul         => 1\n");
printf("Maximum Bul         => 2\n");
printf("Karesini Bul        => 3\n");
printf("Kupunu Bul          => 4\n");
printf("Mutlak Degerini Bul => 5\n");

}


int min(int a, int b){
if (a<b){
return a;
}
return b;
}

int max(int a, int b){
if (a<b){
return b;
}
return a;
}

int kare(int a){
return a*a;
}

int kup(int a){
return a*a*a;
}

int mutlak(int a){
if (a<0){
return a*(-1);
}
return a;
}


























Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: Reverser - 15 Eylül 2015 - 02:31:28
@ShaoTT, "MathFonks.h" nerede ? :)
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: Sh4oTT - 15 Eylül 2015 - 02:35:25
Haha :) Onu denemek icin yazmistim sonra sildim yeni baslayanların aklı karısmasın diye de orasını silmeyi unutmusum duzelteyim :)
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: ShangriLa - 15 Eylül 2015 - 02:55:01
Satırbaşları (indent) olmadan kodları okumak hayli zor. Bence elin değmişken bir de kodlama stili öğrenmeyi dene, ilerde hayli kolaylık sağlar, Google C++ kodlama stili (https://google-styleguide.googlecode.com/svn/trunk/cppguide.html) gibi.
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: Sh4oTT - 15 Eylül 2015 - 03:07:15
@ShangriLa hocam ingilizcem yok türkce kaynak varsa gosterirseniz seve seve okurum ayırıca tesekkur ederım. :)
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: -DıLgEş- - 07 Ekim 2015 - 10:48:56
@ShaoTT Dikdörtgen çizimini, iki şekilde tekrar yazdım. Kullanmak istediğiniz karakterleri bulamadığım için başka karakterler kullandım. Bu karakterleri charmap isimli uygulamadan kopyaladım. Unicode karakterleri nedense 4 bitlik char değişkenine yazdırılıyormuş. İsterseniz siz karakterleri değiştirebilirsiniz.

Örnek Kod: Dikdörtgen Çizimi 1 -> Değişkenler kullanılarak yazma...


#include "stdio.h"
#include "stdlib.h"

int Ciz(int, int);

int main()
{
    int en,boy;

    printf("Çizdirilecek dikdörtgenin enini giriniz: ");
    scanf("%d", &en);
    printf("Çizdirilecek dikdörtgenin boyunu giriniz: ");
    scanf("%d", &boy);

    return Ciz(en, boy) < 0;    //Başarılı bir şekilde Çizim yap..
}

int Ciz(int EnUzunluk, int BoyUzunluk)
{
    char a[4]="⮣";
    char b[4]="⭬";
    char c[4]="⮢";
    char d[4]="⭭";
    char e[4]="⮡";
    char f[4]="⮠";
    int i, j;

    //Ekranı Temizle
    system("clear");

    //Sol Üst Köşeyi Çiz
    printf("\n\n%s", &a);

    //Üst Kenarları Çiz
    for(i=0; i<2*(EnUzunluk-2); i++)
    {
        printf("%s", &b);
    }

    //Sağ Üst Köşeyi Çiz
    printf("%s\n", &c);

    //Sağ ve Sol Kenarları Çiz
    for(i=0; i<2*(BoyUzunluk-2); i++)
    {
        printf("%s", &d);

        for(j=0; j<2*EnUzunluk-3; j++)
        {
            printf(" ");
        }

        printf("%s\n", &d);
    }

    //Sol Alt Köşeyi Çiz
    printf("%s", &e);

    //Üst Kenarları Çiz
    for(i=0; i<2*(EnUzunluk-2); i++)
    {
        printf("%s", &b);
    }

    //Sağ Üst Köşeyi Çiz
    printf("%s\n\n\n", &f);
}


Örnek Kod: Dikdörtgen Çizimi 2 -> Unicode Kodu Kullanarak


#include "stdio.h"
#include "stdlib.h"

int Ciz(int, int);

int main()
{
    int en,boy;

    printf("Çizdirilecek dikdörtgenin enini giriniz: ");
    scanf("%d", &en);
    printf("Çizdirilecek dikdörtgenin boyunu giriniz: ");
    scanf("%d", &boy);

    return Ciz(en, boy) < 0;    //Başarılı bir şekilde Çizim yap..
}

int Ciz(int EnUzunluk, int BoyUzunluk)
{
    int i, j;

    //Ekranı Temizle
    system("clear");

    //Sol Üst Köşeyi Çiz
    printf("\n\n\u2ba3");

    //Üst Kenarları Çiz
    for(i=0; i<2*(EnUzunluk-2); i++)
    {
        printf("\u2b6c");
    }

    //Sağ Üst Köşeyi Çiz
    printf("\u2ba2\n");

    //Sağ ve Sol Kenarları Çiz
    for(i=0; i<2*(BoyUzunluk-2); i++)
    {
        printf("\u2b6d");

        for(j=0; j<2*EnUzunluk-3; j++)
        {
            printf(" ");
        }

        printf("\u2b6d\n");
    }

    //Sol Alt Köşeyi Çiz
    printf("\u2ba1");

    //Üst Kenarları Çiz
    for(i=0; i<2*(EnUzunluk-2); i++)
    {
        printf("\u2b6c");
    }

    //Sağ Üst Köşeyi Çiz
    printf("\u2ba0\n\n\n");
}


   Sormak istediğinizi sorabilirsiniz. Elimden geldiğince yardım edeceğim...
   Bu aralar D dili üzerine yoğunlaşmıştım. C ve C++ için kod aktaramadım.

Örnek Kod: Sayı Tahmin Oyunu


#include "stdio.h"
#include "stdlib.h"
#include "time.h"
#include "unistd.h"

int main()
{
    char secim;
    int tutulan_sayi, tahmini_sayi, hak=10;

    srand(time(NULL));

    tutulan_sayi=1+rand()%1000;

    printf("Merhaba... Bir sayı tuttum.\n");
    printf("Bakalım, tahmin edebilecek misin?\n");
    printf("10 tahmin hakkın var. Hazır mısın(e/h): ");
    scanf("%c", &secim);

    if(tolower(secim)=='e')
    {
        int i=1;
        system("clear");

        printf("1-1000 aralığında bir sayı tuttum...");

        while(i<=hak)
        {
            printf("Tahminin: ");
            scanf("%d", &tahmini_sayi);

            if(tutulan_sayi==tahmini_sayi)
            {
                return printf("\n\nTebrikler, %d denemede bildiniz.\n\n", i) < 0;
            }
            else if(tutulan_sayi<tahmini_sayi)
            {
                printf("\n\nİPUCU: Daha küçük bir değer girebilir misin?\nKalan Hakkın: %d\n\n", hak-i);
            }
            else
            {
                printf("\n\nİPUCU: Daha büyük bir değer girebilir misin?\nKalan Hakkın: %d\n\n", hak-i);
            }

            if((hak-i)==0)
            {
                return printf("Bugün en şanssız günündesin. Üzülme, TEKRAR DENERSİN...\n\n") < 0;
            }

            ++i;
        }
    }
    else if(tolower(secim)=='h')
    {
        system("clear");
        return printf("Hazır olduğunda tekrar gel...\n\n") < 0;
    }
    else
    {
        system("clear");
        return printf("Evet için 'e', hayır için 'h' harfine basmalısın...\n\n") < 0;
    }

    return 0;
}


Örnek Kod: Toplama, Çıkarma ve Çarpma için rastgele sayılar üretip, soru soran program...


#include "stdio.h"
#include "stdlib.h"
#include "time.h"
#include "unistd.h"
#include "assert.h"

/*...SABİT DEĞİŞKENLER...*/
#define ITALIK  "\e[03m"
#define GUMUS   "\e[02m"
#define KIRMIZI "\e[31m"
#define SARI    "\e[33m"
#define MAVI    "\e[34m"
#define MOR     "\e[35m"
#define A_MAVI  "\e[36m"
#define YESIL   "\e[32m"
#define NORMAL  "\e[00m"

char kullanici_adi[20];
int secim1, secim2, soru_sayisi, dogru_sayisi=0, yanlis_sayisi=0;

void Ana_Menu();
                               /*________________________________*/
void Toplama_Testi(int);      /*          Parametrelere         */
void Cikarma_Testi(int);     /*          Soru Sayıları         */
void Carpma_Testi(int);     /*          Gönderilmelidir.      */
                           /*________________________________*/

int main()
{
    system("clear");

    printf("%s%s\t\t\tH O Ş G E L D İ N İ Z%s\n\n", ITALIK, KIRMIZI, NORMAL);
    printf("%sKullanıcı Adınızı Giriniz: %s", SARI, NORMAL);
    scanf("%s", &kullanici_adi);
    printf("%s\n\n\t\tAna Menü'ye Yönlendiriliyorsunuz...%s\n", MAVI, NORMAL);

    sleep(5);

    Ana_Menu();

    return 0;
}

void Ana_Menu()
{
    system("clear");

    printf("%s\t\tMerhaba! %s Zorluk Seviyesi Seçebilir Misin?...%s\n\n", A_MAVI, kullanici_adi, NORMAL);
    printf("%s1. Kolay(Bir Basamaklı İşlemler)\n%s", GUMUS, NORMAL);
    printf("%s2. Orta(İki Basamaklı İşlemler)\n%s", SARI, NORMAL);
    printf("%s3. Zor(Üç Basamaklı İşlemler)\n%s", KIRMIZI, NORMAL);
    printf("%s%s Seçimin Hangisi: %s", YESIL, kullanici_adi ,NORMAL);
    scanf("%d", &secim1);

    assert(secim1>0 && secim1<4);

    system("clear");

    printf("%s\t\t%s Şimdi Bir İşlem Seçmen Gerekiyor...%s\n\n", A_MAVI, kullanici_adi, NORMAL);
    printf("%s1. Toplama İşlemi\n%s", MOR, NORMAL);
    printf("%s2. Çıkarma İşlemi\n%s", SARI, NORMAL);
    printf("%s3. Çarpma İşlemi\n%s", YESIL, NORMAL);
    printf("%s%s Seçimin Hangisi: %s", YESIL, kullanici_adi ,NORMAL);
    scanf("%d", &secim2);

    assert(secim1>0 && secim2<4);

    system("clear");

    printf("%s%s, Lütfen Soru Sayısı Gir(Min: 10, Max: 30): %s", A_MAVI, kullanici_adi, NORMAL);
    scanf("%d", &soru_sayisi);

    assert(soru_sayisi>=10 && soru_sayisi<=30);

    switch(secim2)
    {
        case 1:
            Toplama_Testi(soru_sayisi);
            break;
        case 2:
            Cikarma_Testi(soru_sayisi);
            break;
        case 3:
            Carpma_Testi(soru_sayisi);
            break;
    }
}

void Toplama_Testi(int sayi)
{
    int i=0;

    system("clear");

    srand(time(NULL));

    if(secim1==1)
    {
        while(i<sayi)
        {
            ++i;

            int sayi1, sayi2, sonuc;

            sayi1=rand()%10;
            sayi2=rand()%10;

            printf("\n\n\n");
            printf("\t\t\t%s%d%s %s+%s %s%d%s %s=%s ", SARI, sayi1, NORMAL, KIRMIZI, NORMAL, MAVI, sayi2, NORMAL, KIRMIZI, NORMAL);
            scanf("%d", &sonuc);

            if(sonuc==(sayi1+sayi2))
                ++dogru_sayisi;
            else
                ++yanlis_sayisi;

            system("clear");
        }

        printf("%s Test Bitti...\n", kullanici_adi);
        printf("%sDoğru Sayısı: %s%s%d%s\n", YESIL, NORMAL, SARI, dogru_sayisi, NORMAL);
        printf("%sYanlış Sayısı: %s%s%d%s\n\n\n", KIRMIZI, NORMAL, SARI, yanlis_sayisi, NORMAL);
    }
    else if(secim1==2)
    {
        while(i<sayi)
        {
            ++i;

            int sayi1, sayi2, sonuc;

            sayi1=10+rand()%90;
            sayi2=10+rand()%90;

            printf("\n\n\n");
            printf("\t\t\t%s%d%s %s+%s %s%d%s %s=%s ", SARI, sayi1, NORMAL, KIRMIZI, NORMAL, MAVI, sayi2, NORMAL, KIRMIZI, NORMAL);
            scanf("%d", &sonuc);

            if(sonuc==(sayi1+sayi2))
                ++dogru_sayisi;
            else
                ++yanlis_sayisi;

            system("clear");
        }

        printf("%s Test Bitti...\n", kullanici_adi);
        printf("%sDoğru Sayısı: %s%s%d%s\n", YESIL, NORMAL, SARI, dogru_sayisi, NORMAL);
        printf("%sYanlış Sayısı: %s%s%d%s\n\n\n", KIRMIZI, NORMAL, SARI, yanlis_sayisi, NORMAL);
    }
    else if(secim1==3)
    {
        while(i<sayi)
        {
            ++i;

            int sayi1, sayi2, sonuc;

            sayi1=100+rand()%900;
            sayi2=10+rand()%900;

            printf("\n\n\n");
            printf("\t\t\t%s%d%s %s+%s %s%d%s %s=%s ", SARI, sayi1, NORMAL, KIRMIZI, NORMAL, MAVI, sayi2, NORMAL, KIRMIZI, NORMAL);
            scanf("%d", &sonuc);

            if(sonuc==(sayi1+sayi2))
                ++dogru_sayisi;
            else
                ++yanlis_sayisi;

            system("clear");
        }

        printf("%s Test Bitti...\n", kullanici_adi);
        printf("%sDoğru Sayısı: %s%s%d%s\n", YESIL, NORMAL, SARI, dogru_sayisi, NORMAL);
        printf("%sYanlış Sayısı: %s%s%d%s\n\n\n", KIRMIZI, NORMAL, SARI, dogru_sayisi, NORMAL);
    }
}

void Cikarma_Testi(int sayi)
{
    int i=0;

    system("clear");

    srand(time(NULL));

    if(secim1==1)
    {
        while(i<sayi)
        {
            ++i;

            int sayi1, sayi2, sonuc;

            sayi1=rand()%10;
            sayi2=rand()%10;

            printf("\n\n\n");
            printf("\t\t\t%s%d%s %s-%s %s%d%s %s=%s ", SARI, sayi1, NORMAL, KIRMIZI, NORMAL, MAVI, sayi2, NORMAL, KIRMIZI, NORMAL);
            scanf("%d", &sonuc);

            if(sonuc==(sayi1-sayi2))
                ++dogru_sayisi;
            else
                ++yanlis_sayisi;

            system("clear");
        }

        printf("%s Test Bitti...\n", kullanici_adi);
        printf("%sDoğru Sayısı: %s%s%d%s\n", YESIL, NORMAL, SARI, dogru_sayisi, NORMAL);
        printf("%sYanlış Sayısı: %s%s%d%s\n\n\n", KIRMIZI, NORMAL, SARI, yanlis_sayisi, NORMAL);
    }
    else if(secim1==2)
    {
        while(i<sayi)
        {
            ++i;

            int sayi1, sayi2, sonuc;

            sayi1=10+rand()%90;
            sayi2=10+rand()%90;

            printf("\n\n\n");
            printf("\t\t\t%s%d%s %s-%s %s%d%s %s=%s ", SARI, sayi1, NORMAL, KIRMIZI, NORMAL, MAVI, sayi2, NORMAL, KIRMIZI, NORMAL);
            scanf("%d", &sonuc);

            if(sonuc==(sayi1-sayi2))
                ++dogru_sayisi;
            else
                ++yanlis_sayisi;

            system("clear");
        }

        printf("%s Test Bitti...\n", kullanici_adi);
        printf("%sDoğru Sayısı: %s%s%d%s\n", YESIL, NORMAL, SARI, dogru_sayisi, NORMAL);
        printf("%sYanlış Sayısı: %s%s%d%s\n\n\n", KIRMIZI, NORMAL, SARI, yanlis_sayisi, NORMAL);
    }
    else if(secim1==3)
    {
        while(i<sayi)
        {
            ++i;

            int sayi1, sayi2, sonuc;

            sayi1=100+rand()%900;
            sayi2=10+rand()%900;

            printf("\n\n\n");
            printf("\t\t\t%s%d%s %s-%s %s%d%s %s=%s ", SARI, sayi1, NORMAL, KIRMIZI, NORMAL, MAVI, sayi2, NORMAL, KIRMIZI, NORMAL);
            scanf("%d", &sonuc);

            if(sonuc==(sayi1-sayi2))
                ++dogru_sayisi;
            else
                ++yanlis_sayisi;

            system("clear");
        }

        printf("%s Test Bitti...\n", kullanici_adi);
        printf("%sDoğru Sayısı: %s%s%d%s\n", YESIL, NORMAL, SARI, dogru_sayisi, NORMAL);
        printf("%sYanlış Sayısı: %s%s%d%s\n\n\n", KIRMIZI, NORMAL, SARI, yanlis_sayisi, NORMAL);
    }
}

void Carpma_Testi(int sayi)
{
    int i=0;

    system("clear");

    srand(time(NULL));

    if(secim1==1)
    {
        while(i<sayi)
        {
            ++i;

            int sayi1, sayi2, sonuc;

            sayi1=rand()%10;
            sayi2=rand()%10;

            printf("\n\n\n");
            printf("\t\t\t%s%d%s %s*%s %s%d%s %s=%s ", SARI, sayi1, NORMAL, KIRMIZI, NORMAL, MAVI, sayi2, NORMAL, KIRMIZI, NORMAL);
            scanf("%d", &sonuc);

            if(sonuc==(sayi1*sayi2))
                ++dogru_sayisi;
            else
                ++yanlis_sayisi;

            system("clear");
        }

        printf("%s Test Bitti...\n", kullanici_adi);
        printf("%sDoğru Sayısı: %s%s%d%s\n", YESIL, NORMAL, SARI, dogru_sayisi, NORMAL);
        printf("%sYanlış Sayısı: %s%s%d%s\n\n\n", KIRMIZI, NORMAL, SARI, yanlis_sayisi, NORMAL);
    }
    else if(secim1==2)
    {
        while(i<sayi)
        {
            ++i;

            int sayi1, sayi2, sonuc;

            sayi1=10+rand()%90;
            sayi2=10+rand()%90;

            printf("\n\n\n");
            printf("\t\t\t%s%d%s %s*%s %s%d%s %s=%s ", SARI, sayi1, NORMAL, KIRMIZI, NORMAL, MAVI, sayi2, NORMAL, KIRMIZI, NORMAL);
            scanf("%d", &sonuc);

            if(sonuc==(sayi1*sayi2))
                ++dogru_sayisi;
            else
                ++yanlis_sayisi;

            system("clear");
        }

        printf("%s Test Bitti...\n", kullanici_adi);
        printf("%sDoğru Sayısı: %s%s%d%s\n", YESIL, NORMAL, SARI, dogru_sayisi, NORMAL);
        printf("%sYanlış Sayısı: %s%s%d%s\n\n\n", KIRMIZI, NORMAL, SARI, yanlis_sayisi, NORMAL);
    }
    else if(secim1==3)
    {
        while(i<sayi)
        {
            ++i;

            int sayi1, sayi2, sonuc;

            sayi1=100+rand()%900;
            sayi2=10+rand()%900;

            printf("\n\n\n");
            printf("\t\t\t%s%d%s %s*%s %s%d%s %s=%s ", SARI, sayi1, NORMAL, KIRMIZI, NORMAL, MAVI, sayi2, NORMAL, KIRMIZI, NORMAL);
            scanf("%d", &sonuc);

            if(sonuc==(sayi1*sayi2))
                ++dogru_sayisi;
            else
                ++yanlis_sayisi;

            system("clear");
        }

        printf("%s Test Bitti...\n", kullanici_adi);
        printf("%sDoğru Sayısı: %s%s%d%s\n", YESIL, NORMAL, SARI, dogru_sayisi, NORMAL);
        printf("%sYanlış Sayısı: %s%s%d%s\n\n\n", KIRMIZI, NORMAL, SARI, yanlis_sayisi, NORMAL);
    }
}


Örnek Kod: Girilien Aralıktaki Çift ve Tek Sayıların Toplamını Bulan Program


#include "stdio.h"

int main()
{
   int sayi1, sayi2, tek=0, cift=0;

   printf("Bir tamsayı aralığı giriniz(x - y): ");
   scanf("%d - %d", &sayi1, &sayi2);

   while(sayi1<=sayi2)
   {
      if((sayi1%2)==0)
         cift+=sayi1;
      else
         tek+=sayi1;

      ++sayi1;
   }

   printf("\nGirdiğiniz aralıktaki tek sayıların toplamı: %d\n", tek);
   printf("Girdiğiniz aralıktaki çift sayıların toplamı: %d\n\n", cift);

   return 0;
}


   Şimdilik bu kadarını düzenledim. Vakit bulursam diğer kodlarımı düzenleyip paylaşırım.
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: Sh4oTT - 10 Ekim 2015 - 22:05:16
@nurullahisrgan hocam şu satırı acıklayabılırmısınız?

return Ciz(en, boy) < 0;    //Başarılı bir şekilde Çizim yap..
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: -DıLgEş- - 14 Ekim 2015 - 17:04:45
Alıntı yapılan: ShaoTT@nurullahisrgan hocam şu satırı acıklayabılırmısınız?

Kod: [Seç]return Ciz(en, boy) < 0;    //Başarılı bir şekilde Çizim yap..
O satır çıkışı başarılı bir şekilde yazdırır. Mesela, normal bir merhaba dünya programında printf ile normal gönderdiğimiz yazı, bazı durumlarda hatalı yazılabilir ve çıkış başarılı olmayabilir. Bu satır kullanıldığında ise, hem fonksiyonu başarılı bir şekilde çağırır hem de çıkışı başarılı bir şekilde yapar. Kısacası, C dili hatayı göz ardı eder.


#include "stdio.h"

int main()
{
    printf("Merhaba...");

    return 0;
}


Böyle bir durumda çıkış başarılı olmayabilir ve aşağıdaki satırla hatayı gözardı etmesini engelleyebiliriz:


return printf("Merhaba...") <0;


Dikdörtgene dönecek olursak da bazı sistemler UTF'yi desteklemeyebilir. Bu durumda programın ekrana hiçbir şey basmaması lazım.
Bu arada hocam demenize gerek yok. İsmimle hitap edebilirsiniz.

Bunu tespit ettiğim kaynak ise: http://ddili.org/makale/neden_d.html
Burada C ve C++ dilinin hatayı gizlemesini engelleyebiliriz.
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: Sh4oTT - 14 Ekim 2015 - 21:21:47
@nurullahisrgn ben burda ki mantıgı anlamadım tamam hatayı gormezden gelıp yazdırıyor ama bız bu kodda return printf("Merhaba...") <0;

Sıfırdan kucuk degılde sıfırdan buyuk olarak yazarsak sonuc ne olur yanı neden sıfırdan kucuk olarak yazıyoruz?
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: -DıLgEş- - 16 Ekim 2015 - 15:15:01
Alıntı yapılan: ShaoTT@nurullahisrgn ben burda ki mantıgı anlamadım tamam hatayı gormezden gelıp yazdırıyor ama bız bu kodda Kod: [Seç]return printf("Merhaba...") <0;
Sıfırdan kucuk degılde sıfırdan buyuk olarak yazarsak sonuc ne olur yanı neden sıfırdan kucuk olarak yazıyoruz?
Hiç > işareti ile denememiştim. Eve gidince ben bir de öyle deneyim. Pazar günü sonucunu aktarırım.


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 17 Ekim 2015 - 14:36:12

@ShaoTT Tüm konuyu kısaca şu şekilde anlatabilirim:

   Bizim, standart C için kullandığımız hazır fonksiyonlar ve kendi tanımladığımız fonksiyonlar bazen arka planda hatalı çıktı üretebiliyor. Bu durum ise, bazen programın yanlış işlere yol açabilmesini sağlar. Aşağıdaki gibi kullanımlar sağlandığında:


return Ciz(int boy, int en) < 0;
return printf("Merhaba Dünya..\n");


   Bu fonksiyonları kullanan bir programı Terminal üzerinden çalıştırın ve aşağıdaki çıktının vereceği değere bakın:


echo $?


   Bu çıktı, kendisinden önce kullanılan programın dönüş değerini ekrana bastırır. Dönüş değerleri ise aşağıdaki gibi sıralayabiliriz:

0 -> Başarılı Çıkış.
1 -> Hatalı Çıkış.

Diğer -> 0 ve 1 dışında çıktı vermesi mümkün olmaması lazımdır. Eğer başka bir değer var ise bu programı yapanın sorunudur. Örneğin aşağıdaki örnek kodu inceleyelim:


#include "stdio.h"

int main()
{
    printf("Merhaba...\n");
    return 111;
}


   Bu kodda çıkış değeri 111 olarak gönderilecektir. Hata bu şekilde gizlenmiştir. Printf fonksiyonun dönüş değerine de bakmak lazım.

@ShaoTT Önce printf fonksiyonunun döndürdüğü değeri bilmemiz gerek. return komutu test eder. Printf fonksiyonunun döndürdüğü değeri -1 olarak kabul edersek;


return -1 < 0;
return -1 > 0;


   İlk kullanım biçiminde değer doğru(0), ikinci kullanım biçiminde ise değer yanlış(1) olarak döndürecektir. İstersen deneyebilirsin. Bu komut çıkış koduna bakarak çalışıyor.
   Ciz fonksiyonunda ise biz bir değer döndürmedik. C dili kendisine uygun bir değer döndürdü ve çıkışı bastırdı. Tabii, bu ne kadar doğru bilmiyorum.
   Bir de fonksiyon eğer 0 döndürdüğünde, yanılgıya düşmeyelim. Çünkü C diline göre 0 < 0 ifadesi doğru olarak sayılıyormuş...
   Bu konuyu bu kadar kurcalamadım. Bu bilgileri de nereden bulduğumu da bilmiyorum. 3-4 ay önce bulduğum bilgileri paylaştım. Yalnız, ne kadar doğrudur bilmiyorum...
   Bir ekleme daha yapayım... Aşağıdaki kodu derlediğimde değer 13 oluyormuş... Ubuntuda denedim.


#include <stdio.h>
int main()
{
  printf("hello, world\n");
}


   Peki acaba bu 13 değeri printf ifadesinin dönüş değeri olabilir mi? Bence olabilir... Çünkü aşağıdaki kodda ise değer 160 gönderdi:


int main(){ }


   İşte C dilinin ürkünç bir durumu... Ya bu sayıları kafasına göre veriyor. Yada bu sayılar;

13 -> Printf dönüş değeri
160 -> Main dönüş değeri

   olabilir... Ben 0 ve 1 dışında değer döndürmeyeceğini sanırdım. Yukarıyı da buna göre yazdım. Biraz daha kurcalayacağım. Bakalım neler çıkacak C dilinden... Mesela, C++ böyle değil... Başarılıysa 0, değilse 1... Oh ne rahat... Yukarıda 13 ve 160 değeri gönderilen kodlar, C++ ta 0 olarak döndürülüyor.
   Dediğim gibi, bu durumu biraz daha araştıracağım. C dilinin incilerini ortaya dökeceğim.
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: Sh4oTT - 07 Aralık 2015 - 02:00:18
Basit mayın tarlası oyunu vize sınav sorusu :)



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


int main() {

int tarla[10][10], dizi[10][10], i=0, j=0, k=0, l=0, skor=0;

srand(time(NULL)); // FARKLI SAYILAR URETMEK ICIN


printf("MAYIN TARLASI OYUNU...\n\n");

for(k=0; k<10; k++) {

for (l=0; l<10; l++) {

tarla[k][l]=0; // TARLAYI 0 ILE DOLDURUYORUZ MAYINSIZ TARLA
}
}

// BOS TARLA GORUNTUSU

for(k=0; k<10; k++) {

for (l=0; l<10; l++) {

printf("%d\t", tarla[k][l]);
}
printf("\n\n\n");
}


printf("----------------------------------------\n\n");

for(k=0; k<2; k++) {

for (l=0; l<5; l++) {

i=rand()%9; // TARLANIN HERHANGI BIR BOLGESINI SECMEK ICIN
j=rand()%9; // TARLANIN HERHANGI BIR BOLGESINI SECMEK ICIN
tarla[i][j]=1; //SECILEN BOLGEYE MAYIN YERLESTIRMEK 0=MAYIN YOK 1=MAYIN VAR


}
}

// MAYIN YERLESTIRILMIS TARLA GORUNTUSU

for(k=0; k<10; k++) {

for (l=0; l<10; l++) {

printf("%d\t", tarla[k][l]);
}
printf("\n\n");
}

// OYUNCUDAN ISARETLEMESI ICIN MAYIN BOLGESI SECIYORUZ

for (k=0; k<10; k++) {

for (l=0; l<10; l++) {

printf("Lutfen bolge secin tarla[i][j]: i> "); scanf("%d", &i);

printf("Lutfen bolge secin tarla[i][j]: j> "); scanf("%d", &j);

dizi[i][j]=1;

//SECILEN BOLGEDE MAYIN VARSA OYUNU BITIRIYORUZ

if (dizi[i][j]==tarla[i][j]) {
printf("Oyun bitti...");
break; }

skor++;
}
if (dizi[i][j]==tarla[i][j]) {
break; }
}

printf("Skorunuz: %d\n", skor);



}




Bölme isareti kullanmadan bolum ve kalanı bulan program ör: 9/4 => bolum=2 kalan=1 :

// BOLME ISARETI KULLANMADAN BOLEN BOLUM KALAN DEGERLERINI BULMAK
// OR: 9/4=> BOLEN=4 BOLUM=2 KALAN=1


#include <stdio.h>


int main() {


int bolunen=0, bolen=0, bolum=0, kalan=0, n=0;

printf("Bolunen: "); scanf("%d", &bolunen);
printf("Bolen: "); scanf("%d", &bolen);



while (n<bolunen) {

n+=bolen;
bolum++;

}
bolum--;
n-=bolen;

kalan=bolunen-n;

printf("Bolum: %d\nKalan: %d\n",bolum,kalan);

}




Basit bir oyun:

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







//PROTOTIPLER

/*
void enerjileriYazdir();
void gandalfSaldir();
void sarumanSaldir();
*/


int oran=0;
int buyuNo=0;


int sarumanEnerji=100; //BASLANGIC ENERJISI
int sarumanOranlar[3]={45,40,15}; //BUYU ORANLARI
int sarumanBuyuler[3]={5,7,13}; //BUYU HASARLARI

int gandalfEnerji=100; //BASLANGIC ENERJISI
int gandalfOranlar[3]={45,20,35}; //BUYU ORANLARI
int gandalfBuyuler[3]={3,9,10}; //BUYU HASARLARI


void enerjileriYazdir() {

printf("Gandalf: %d vs. Saruman: %d", gandalfEnerji, sarumanEnerji);



}


void gandalfSaldir() {

oran=1+rand()%100; // 1 ile 100 arasi bir sayi uret

if ( oran<=gandalfOranlar[0]) {

printf("Gandalf \"Su\" Buyusu Yapti!\n"); // BUYUYU YAZDIR
buyuNo=0; //ENERJIDEN DUSULECEK HASAR DEGERI ICIN

}

else if ( oran>gandalfOranlar[0] && oran<=gandalfOranlar[0]+gandalfOranlar[1] ) {

printf("Gandalf \"Toprak\" Buyusu Yapti!\n"); // BUYUYU YAZDIR
buyuNo=1;
}

else {

printf("Gandalf \"İyi Ruh\" Buyusu Yapti!\n"); // BUYUYU YAZDIR
buyuNo=2;
}

sarumanEnerji-=gandalfBuyuler[buyuNo]; // HASARI SARUMANIN ENERJISINDEN DUSUR
enerjileriYazdir(); // YENI ENERJILERI YAZDIR

}

void sarumanSaldir() {

oran=1+rand()%100; // 1 ile 100 arasi bir sayı uret

if (oran<=sarumanOranlar[0]) {

printf("Saruman \"Isik\" Buyusu Yapti!\n");
buyuNo=0;
}

else if (oran>sarumanOranlar[0] && oran<=sarumanOranlar[0]+sarumanOranlar[1] ) {

printf("Saruman \"Ates\" Buyusu Yapti!\n");
buyuNo=1;
}

else {

printf("Saruman \"Kotu Ruh\" Buyusu Yapti!\n");
buyuNo=2;

}

gandalfEnerji-=sarumanBuyuler[buyuNo]; // HASARI GANDALFIN ENERJISINDEN DUSUR
enerjileriYazdir(); // YENI ENERJILERI YAZDIR

}





int main() {

srand(time(NULL));
printf(" ###############< | >############### \n");
printf("\t   Oyun Basliyor!!!\n");
printf(" ###############< | >############### \n");
sleep(3);
system("clear");




do {

gandalfSaldir();
printf("\n\n");
sleep(1);
sarumanSaldir();
printf("\n\n");
sleep(1);
} while (gandalfEnerji>0 && sarumanEnerji>0);

// MUCADELE BITTI ENERJILERI VE KAZANANI EKRANA YAZDIR

printf(" ###############< | >############### \n");
printf("\t      Oyun Bitti!!!\n");
printf(" ###############< | >############### \n");

enerjileriYazdir();
printf("\nSonuc: ");

if (gandalfEnerji<=0 && sarumanEnerji<=0 ) {

printf("Berabere!!!\n\n");
}

else {
if (gandalfEnerji>0) {
printf("Gandalf Kazandi!!!\n\n");
}
else {
printf("Saruman Kazandi!!!\n\n");
}
}
return 0;
}




Sayi tahmini oyunu:
//Sayi Tahmini Oyunu
//BOL SANS! :)


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

int main(){


int tutulansayi=0;
int tahmin=0;
int puan=100;
int tahminsayisi=0;

srand(time(NULL));

tutulansayi=1+rand()%100; // 1 ile 100 arasinda sayi icin

printf("\n\n1 ile 100 Arasinda Bir Sayi Tuttuk Bakalim Bulabilecekmisin? :)\n");
printf("\n\n***************************");
printf("\n********** BASLA **********\n");
printf("***************************\n\n\n\n\n");

while(tahmin!=-1) {

printf("Tahminin(1-100): ");
scanf("%d", &tahmin);

if (tahmin==-1) break;

if (tahmin<1 || tahmin>100) {

printf("1-100 Arasi Bir Sayi Girmelisin!\n");

continue;
}

tahminsayisi++;

if (tahmin==tutulansayi) {

printf("Tebrikler %d Seferde Buldun Helal Olsun :)\n", tahminsayisi);
break;
}

else {

if (tahmin>tutulansayi) {

printf("Daha Kucuk Bir Sayi Gir\n");

puan-=10;
}

if (tahmin<tutulansayi) {

printf("Daha Buyuk Bir Sayi Gir\n");
puan-=10;
}
} // If Sonu
} // While Dongusu Sonu

printf("\nUmarim Eglenmissinizdir. ;)\n");
printf("Puaniniz 100 Uzerinden %d! :)\n", puan<0 ? 0: puan);


}
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: Sh4oTT - 16 Aralık 2015 - 02:30:54
// 1+4+9+ ... +100= değerini hesaplayan programı yazınız.

// 1+4+9+16+25+36+49+64+81+100 artıs mıktarı 3-5-7-9-11-13-15-17-19 seklındeymıs

#include <stdio.h>




int main() {

int i=1;
int j=3;
int toplam=0;
for(i=1; i<=100; ){
toplam+=i;


i+=j;
j+=2;
}

printf("Toplam: %d\n", toplam);

}




// Klavyeden girilen 10 elemanlı bir diziyi büyükten küçüğe doğru sıralayan bir program yazınız.

#include <stdio.h>


int main() {


int dizi[10];
int i=0, j=0,gecicibellek=0;

for (i=0; i<10; i++) {  // DIZIYI DOLDURUYORUZ

printf("%d. elamani giriniz: ",i+1); scanf("%d", &dizi[i]);

}

for (i=0; i<10; i++) {  // DIZININ SIRALANMAMIS HALINI EKRANA YAZDIRIYORUZ
printf("%d ", dizi[i]);
}
printf("\n\n");
for (i=0; i<10; i++) {  // BUYUKTEN KUCUGE SIRALIYORUZ
for (j=0; j<10-i; j++) {

if (dizi[j]<dizi[j+1]) {
gecicibellek=dizi[j];
dizi[j]=dizi[j+1];
dizi[j+1]=gecicibellek;
}
}
}

for (i=0; i<10; i++) { // SIRALANMIS HALINI EKRANA YAZDIRIYORUZ
printf("%d ", dizi[i]);
}


printf("\n\n");


}






// Klavyeden girilen sayıya kadar olan sayıların toplamını hesaplayan programı yazınız

#include <stdio.h>


int main() {

int sayi=0, toplam=0, i=0;

printf("Bir sayi giriniz: "); scanf("%d", &sayi);

for (i=1; i<=sayi; i++) {

toplam+=i;
}

printf("Toplam: %d\n", toplam);

}



// Verilen dizide aranılan bir elemanın kaç defa tekrar ettiğini bulan bir program yazınız.

#include <stdio.h>


int main() {

int dizi[50]={1,5,6,9,23,5,44,1,66,45,34,23,6,9,34,23,11,32,76,99,34,2,6,7,8,91,3,45,6,7,3,32,45,6,7,2,5,3,2,4,23,1,6,62,34,23,4,3,5,2};
int sayac=0, i=0, eleman=0;

printf("Aranacak elamani giriniz(0-100): "); scanf("%d", &eleman);

for (i=0; ; i++) {
if (dizi[i]==) break;
if (dizi[i]==eleman) sayac++;
}
printf("Tarama bitti, aranan eleman %d defa vardir.\n", sayac);
}



// Klavyeden girilen bir sayının asal sayı olup olmadığını test eden bir fonksiyon yazınız



#include <stdio.h>

int main() {

int sayi=0, i=0;

printf("Kontrol edilecek sayiyi giriniz: "); scanf("%d", &sayi);

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

if (sayi%i==0) {
printf("%d sayisi asal degildir.\n",sayi);
break;
}
}

if (i==sayi) { printf("%d sayisi asaldir.\n", sayi);

}

}





// Dışardan girilen N adet tamsayının aritmetik ortalamasını alıp ekrana yazdıran programı C dilinde kodlayınız.

#include <stdio.h>

int main() {

float aktifsayi=0.0;
float ortalama=0.0;
int i=0;

do{
printf("Sayi giriniz(bitirmek icin -1 giriniz): "); scanf("%f", &aktifsayi);
if (aktifsayi==-1) break;
ortalama+=aktifsayi;
i++;
} while (aktifsayi!=-1);
ortalama=ortalama/i;
printf("Girilen sayilarin ortalamasi: %.2f dir.\n",ortalama);
}




// Klavyeden rastgele girilen 10 sayıyı okuyup bu sayıları tersten yazdıran bir C programı yazınız?

#include <stdio.h>


int main() {

int dizi[10], i=0;

for(i=0; i<10; i++) {          //SAYILARI ALIYORUZ

printf("Sayi giriniz: "); scanf("%d", &dizi[i]);

}

for(i=0; i<10; i++) {         //DIZININ DUZ HALI
printf("%d ", dizi[i]);
}

printf("\n\n\n");

for(i=9; i>=0; i--) {        //DIZININ TERSTEN YAZILMASI
printf("%d ", dizi[i]);
}
printf("\n");
}



// RASTGELE DEGERLERLE MATRIS OLUSTURUP BU MATRISIN EN BUYUK ELEMANINI BULMAK
#include <stdio.h>
#include <stdlib.h>
#include <time.h>


void mat_olustur (int sat, int sut, int mat[][50]) { // RASTGELE SAYILARLA BIR MATRIS OLUSTUR

srand(time(NULL));
int i,j;

for (i=0; i<sat; i++) {
for (j=0; j<sut; j++) {
mat[i][j]=rand()%100;
}
}
}

void mat_yaz (int sat, int sut, int mat[][50]) { // MATRISI EKRANA YAZDIR

int i,j;
for (i=0; i<sat; i++) {
for (j=0; j<sut; j++) {
printf("%d    ", mat[i][j]);
}
printf("\n\n");
}
}

void mat_enbuyuk (int sat, int sut, int mat[][50]) { // MATRISIN EN BUYUK ELEMANINI BUL

int i,j, buyuk=0;

for (i=0; i<sat; i++) {
for (j=0; j<sut; j++) {
if (mat[i][j]>buyuk) buyuk=mat[i][j];
}
}
printf("Dizinin en buyuk elemani: %d\n", buyuk);
}











int main() {

int matrix[50][50];
int sat=0, sut=0;
printf("Olusturulacak matrisin satir sayisini giriniz: "); scanf("%d", &sat);
printf("Olusturulacak matrisin sutun sayisini giriniz: "); scanf("%d", &sut);

mat_olustur(sat, sut, matrix);
mat_yaz(sat, sut, matrix);
mat_enbuyuk(sat, sut, matrix);










}




// DIZILERDE DOGRUSAL SIRALAMA (LINEAR SORT)

#include <stdio.h>


// PROTOTIPLER

void sirala();
void diziyiYazdir();

int sayilar[15]={23,42,11,5,6,0,34,66,3,421,13,24,52,15,22};

void sirala() {
int i=0, j=0, yedek=0;

for (i=0; i<15; i++) {

for (j=i+1; j<15; j++) {

if ( sayilar[j] < sayilar[i] ) {

yedek=sayilar[i];
sayilar[i]=sayilar[j];
sayilar[j]=yedek;

} // if sonu

} // j sonu

} // i sonu
} // fonksiyon sonu

void diziyiYazdir() {
int i=0;
for (i=0; i<15; i++) {
printf("%d, ", sayilar[i]);

}
printf("\n");
}

int main() {

printf("Dizi siralanmadan once:\n");
diziyiYazdir();
printf("\nDizi siralaniyor....\n");
sirala();
printf("\nDizi siralandiktan sonra:\n");
diziyiYazdir();

}





















// NOT TAKIP PROGRAMI

#include <stdio.h>

// PROTOTIPLER

void notYazdir( int, int );
void tumNotlariYazdir ();
double sinavOrtalamasiBul ( int );
int enYuksekNotuBul ( int );
int enDusukNotuBul ( int );

int edebiyatNotlari[15][4] = {
//NO 1. 2. 3. SINAV
{112,24,55,77}, //1. Ogrenci
{113,55,77,45},
{114,65,34,99},
{115,55,76,25},
{116,66,55,80},
{117,25,55,75},
{118,35,35,65},
{119,90,100,25},
{120,64,67,42},
{121,48,46,75},
{122,36,83,96},
{123,23,98,47},
{124,65,26,28},
{125,74,55,69},
{126,93,82,74}  // 15. Ogrenci
};

void notYazdir ( int ogrenciNo, int hangiNot) {

// Girilen Ogrenci Numarasini Dizi İcerisinde Ara

int i=0, j=0;

for (i=0; i<15; i++) {
if (edebiyatNotlari[i][0]==ogrenciNo) {

printf("\nNumarasi: %d\t", edebiyatNotlari[i][0]);

if (hangiNot>0 && hangiNot<4) {

printf("%d. Notu: %d\n", hangiNot, edebiyatNotlari[i][hangiNot]);
}
else {

printf("Notlari:  ");

for(j=1; j<4; j++) {
printf("%d  ", edebiyatNotlari[i][j]);
}
printf("Aradiginiz kayit bulunamadi!\n");
}
}
}

}



void tumNotlariYazdir () {

int i=0, j=0;

printf("No\ts1\ts2\ts3\n");

printf("--\t--\t--\t--\n\n");

for (i=0; i<15; i++) {

printf("%d\t", edebiyatNotlari[i][0]);

for (j=1; j<4; j++) {

printf("%d\t",edebiyatNotlari[i][j]);
}
printf("\n");
}
printf("\n");
}


double sinavOrtalamasiBul(int hangiSinav) {
int i=0;
int toplam=0;
double ort=0.0;

// PARAMETREI KONTOL EDELIM

if (hangiSinav<1 || hangiSinav>3) {

printf("1-3 arasinda bir deger girmelisiniz!\n");
return -1;
}

// TUM OGRENCILERIN SINAV NOTLARINI TOPLAYALIM
// VE SINIFIN ORTALAMASINI BULALIM

for (i=0; i<15; i++) {

toplam+=edebiyatNotlari[i][hangiSinav];
}

ort=toplam/15;

return ort;
}



int enYuksekNotuBul(int hangiSinav) {

int i=0;
int max=0;

if (hangiSinav<1 || hangiSinav>3) {

printf("1-3 arasinda bir deger girmelisiniz!\n");
return -1;
}

for (i=0; i<15; i++) {

if (edebiyatNotlari[i][hangiSinav]>max) max=edebiyatNotlari[i][hangiSinav];

}

return max;
}


int enDusukNotuBul(int hangiSinav) {

int i=0;
int min=100;

if (hangiSinav<1 || hangiSinav>3) {

printf("1-3 arasinda bir deger girmelisiniz!\n");
return (-1);
}

for (i=0; i<15; i++) {

if (edebiyatNotlari[i][hangiSinav]<min) min=edebiyatNotlari[i][hangiSinav];

}

return min;
}


int main () {

// TUM NOTLARI EKRANA YAZDIRALIM

tumNotlariYazdir();

// 123. NOLU OGRENCININ 2. SINAV NOTUNU YAZDIRALIM

notYazdir(123,2);

// 1. SINAVIN ORTALAMASINI YAZDIRALIM

printf("1. sinav ortalamasi: %.2lf\n", sinavOrtalamasiBul(1));

// 3. SINAVIN EN YUKSEK NOTUNU BULALIM

printf("3. Sinavin en yuksek notu: %d\n", enYuksekNotuBul(3));

// 2. SINAVIN EN DUSUK NOTUNU BULALIM

printf("2. Sinavin en dusuk notu: %d\n", enDusukNotuBul(2));

return 0;

}

Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: igmmurat - 17 Aralık 2015 - 23:05:53
Bir tane de benden. Bunu yaklaşık 17 yıl önce yazmıştım. Satrançtaki Atın hamlelerini hesaplayan program. 4 hamle için. Kaç hamlede ve kaç farklı yoldan gider. Programı derleyip çalıştırdığınız da; Program sizden girdi bekleyecek. İKİ AYNI RENKLİ KARE İSTEYECEK.(Satranç bilmeyenler için not; Satranç tahtasındaki kareler-dama tahtası sütun(a,b,c,d,e,f,g,h) ve satırların(1,2,3,4,5,6,7,8) birlikte yazılmasyla ifade edilir yani  herhangi bir  kare  e4, f6, c2...)Şimdi Çalıştırdığınız da İKİ AYNI RENKLİ KARE, İKİSİDE YA SİYAH YA BEYAZ OLMALILAR ÇÜNKA AT 4 HAMLEDE GENE AYNI RENKLİ KAREYE VARIR. ÇALIŞTIRIP örneğin: h1c8 veya f3f7 veya  b2e5 şeklinde 4 hamlede ulaşabileceği Girdiler yazın ve Enterlayın. h1'den c8 karesine veya f3'den f7 karesine veya b2 karesinden e5 karesine 4 hamlede kaç farklı yoldan ulaşılır gösterecek. Sonuçları inceleyebilmeniz için sizden sürekli  her satırdan sonra onay(ENTER) isteyecek. Çıkan sonuçlar nedir??? Başlangıç karesinden (h1,f3,b2) ilk hamleleri hesaplar sonra çıkan sonuçları sırasıyla tekrar hesaplar ve her hamleden sonra size satranç tahtası çizer en sonda da hangi yolu-güzergahı-manevrayı takip etmelisiniz 4 hamle için numaralandırarak verir. Programı incelemek isteyenler için bassat-sut= BAŞLANGIÇ  SATIRI-SÜTUNU gecsat-sut= GEÇİCİ SATIR-SÜTUNU ifade ediyor. Programı 3 tam günde yazdım ve o zaman POİNTER' ları bilmiyordum, şimdi programı geliştirmek için tekrar ele alıyorum. Satrançla ilgilenenlerin hoşlanabileceğini düşünüyorum, iyi eğlenceler...


#include <stdio.h>
void main(void)
{
char z; /* bekleme de�i�keni */
int  i,j,k,r,c,s,u2,l,n,v2,m,g,y2,h,q1,q2,q3,w1,w2,w3,t;
char bassut,bulsut,u1,v1,y1;
int  bassat,bulsat;
char gecsut1[8],gecsut2[64],gecsut3[512],gecsut4[4096];
int  gecsat1[8],gecsat2[64],gecsat3[512],gecsat4[4096];
clrscr();
REPEAT:
scanf("%c%d%c%d",&bassut,&bassat,&bulsut,&bulsat);
if ((bassut < 'a' || bassut > 'h') || (bassat < 1 || bassat > 8))
goto REPEAT;
printf("\n");
i=0;
printf("At�n Birinci Hamleleri\n");
gecsut1[i] = bassut + 1 , gecsat1[i] = bassat + 2;
if ((gecsut1[i] >= 'a' && gecsut1[i] <= 'h') && (gecsat1[i] >= 1 && gecsat1[i] <= 8))
printf("%c%d\n",gecsut1[i],gecsat1[i]);
gecsut1[i+1] = bassut + 2 , gecsat1[i+1] = bassat + 1;
if ((gecsut1[i+1] >= 'a' && gecsut1[i+1] <= 'h') && (gecsat1[i+1] >= 1 && gecsat1[i+1] <= 8))
printf("%c%d\n",gecsut1[i+1],gecsat1[i+1]);
gecsut1[i+2] = bassut + 2 , gecsat1[i+2] = bassat - 1;
if ((gecsut1[i+2] >= 'a' && gecsut1[i+2] <= 'h') && (gecsat1[i+2] >= 1 && gecsat1[i+2] <= 8))
printf("%c%d\n",gecsut1[i+2],gecsat1[i+2]);
gecsut1[i+3] = bassut + 1 , gecsat1[i+3] = bassat - 2;
if ((gecsut1[i+3] >= 'a' && gecsut1[i+3] <= 'h') && (gecsat1[i+3] >= 1 && gecsat1[i+3] <= 8))
printf("%c%d\n",gecsut1[i+3],gecsat1[i+3]);
gecsut1[i+4] = bassut - 1 , gecsat1[i+4] = bassat - 2;
if ((gecsut1[i+4] >= 'a' && gecsut1[i+4] <= 'h') && (gecsat1[i+4] >= 1 && gecsat1[i+4] <= 8))
printf("%c%d\n",gecsut1[i+4],gecsat1[i+4]);
gecsut1[i+5] = bassut - 2 , gecsat1[i+5] = bassat - 1;
if ((gecsut1[i+5] >= 'a' && gecsut1[i+5] <= 'h') && (gecsat1[i+5] >= 1 && gecsat1[i+5] <= 8))
printf("%c%d\n",gecsut1[i+5],gecsat1[i+5]);
gecsut1[i+6] = bassut - 2 , gecsat1[i+6] = bassat + 1;
if ((gecsut1[i+6] >= 'a' && gecsut1[i+6] <= 'h') && (gecsat1[i+6] >= 1 && gecsat1[i+6] <= 8))
printf("%c%d\n",gecsut1[i+6],gecsat1[i+6]);
gecsut1[i+7] = bassut - 1 , gecsat1[i+7] = bassat + 2;
if ((gecsut1[i+7] >= 'a' && gecsut1[i+7] <= 'h') && (gecsat1[i+7] >= 1 && gecsat1[i+7] <= 8))
printf("%c%d\n",gecsut1[i+7],gecsat1[i+7]);
scanf("%c",&z);
printf("\n\a");
printf("At�n �kinci Hamleleri\n");
for (j=0; j<8; ++j)
if ((gecsut1[j] >= 'a' && gecsut1[j] <= 'h') && (gecsat1[j] >= 1 && gecsat1[j] <= 8))
{
gecsut2[8*j+0] = gecsut1[j] + 1 , gecsat2[8*j+0] = gecsat1[j] + 2;
if ((gecsut2[8*j+0] >= 'a' && gecsut2[8*j+0] <= 'h') && (gecsat2[8*j+0] >= 1 && gecsat2[8*j+0] <= 8))
printf("%c%d,",gecsut2[8*j+0],gecsat2[8*j+0]);
gecsut2[8*j+1] = gecsut1[j] + 2 , gecsat2[8*j+1] = gecsat1[j] + 1;
if ((gecsut2[8*j+1] >= 'a' && gecsut2[8*j+1] <= 'h') && (gecsat2[8*j+1] >= 1 && gecsat2[8*j+1] <= 8))
printf("%c%d,",gecsut2[8*j+1],gecsat2[8*j+1]);
gecsut2[8*j+2] = gecsut1[j] + 2 , gecsat2[8*j+2] = gecsat1[j] - 1;
if ((gecsut2[8*j+2] >= 'a' && gecsut2[8*j+2] <= 'h') && (gecsat2[8*j+2] >= 1 && gecsat2[8*j+2] <= 8))
printf("%c%d,",gecsut2[8*j+2],gecsat2[8*j+2]);
gecsut2[8*j+3] = gecsut1[j] + 1 , gecsat2[8*j+3] = gecsat1[j] - 2;
if ((gecsut2[8*j+3] >= 'a' && gecsut2[8*j+3] <= 'h') && (gecsat2[8*j+3] >= 1 && gecsat2[8*j+3] <= 8))
printf("%c%d,",gecsut2[8*j+3],gecsat2[8*j+3]);
gecsut2[8*j+4] = gecsut1[j] - 1 , gecsat2[8*j+4] = gecsat1[j] - 2;
if ((gecsut2[8*j+4] >= 'a' && gecsut2[8*j+4] <= 'h') && (gecsat2[8*j+4] >= 1 && gecsat2[8*j+4] <= 8))
printf("%c%d,",gecsut2[8*j+4],gecsat2[8*j+4]);
gecsut2[8*j+5] = gecsut1[j] - 2 , gecsat2[8*j+5] = gecsat1[j] - 1;
if ((gecsut2[8*j+5] >= 'a' && gecsut2[8*j+5] <= 'h') && (gecsat2[8*j+5] >= 1 && gecsat2[8*j+5] <= 8))
printf("%c%d,",gecsut2[8*j+5],gecsat2[8*j+5]);
gecsut2[8*j+6] = gecsut1[j] - 2 , gecsat2[8*j+6] = gecsat1[j] + 1;
if ((gecsut2[8*j+6] >= 'a' && gecsut2[8*j+6] <= 'h') && (gecsat2[8*j+6] >= 1 && gecsat2[8*j+6] <= 8))
printf("%c%d,",gecsut2[8*j+6],gecsat2[8*j+6]);
gecsut2[8*j+7] = gecsut1[j] - 1 , gecsat2[8*j+7] = gecsat1[j] + 2;
if ((gecsut2[8*j+7] >= 'a' && gecsut2[8*j+7] <= 'h') && (gecsat2[8*j+7] >= 1 && gecsat2[8*j+7] <= 8))
printf("%c%d,",gecsut2[8*j+7],gecsat2[8*j+7]);
scanf("%c",&z);
}
else
{
gecsut2[8*j+0] = 'x' , gecsat2[8*j+0] = 10;
gecsut2[8*j+1] = 'x' , gecsat2[8*j+1] = 10;
gecsut2[8*j+2] = 'x' , gecsat2[8*j+2] = 10;
gecsut2[8*j+3] = 'x' , gecsat2[8*j+3] = 10;
gecsut2[8*j+4] = 'x' , gecsat2[8*j+4] = 10;
gecsut2[8*j+5] = 'x' , gecsat2[8*j+5] = 10;
gecsut2[8*j+6] = 'x' , gecsat2[8*j+6] = 10;
gecsut2[8*j+7] = 'x' , gecsat2[8*j+7] = 10;
}
printf("\n\a");
scanf("%c\a",&z);
for (v2=8; v2>0; --v2)
{
scanf("%c",&z);
        for (v1=97; v1<105; ++v1)
{
m=0;
for (n=0; n<64; ++n)
{
if (gecsut2[n] == v1 && gecsat2[n] == v2)
++m;
else
;
}
printf("%c%d = %d\t",v1,v2,m);
}
}
printf("\n\n\a");
printf("At�n ���nc� Hamleleri\n");
for (k=0; k<64; ++k)
if ((gecsut2[k] >= 'a' && gecsut2[k] <= 'h') && (gecsat2[k] >= 1 && gecsat2[k] <= 8))
{
gecsut3[8*k+0] = gecsut2[k] + 1 , gecsat3[8*k+0] = gecsat2[k] + 2;
if ((gecsut3[8*k+0] >= 'a' && gecsut3[8*k+0] <= 'h') && (gecsat3[8*k+0] >= 1 && gecsat3[8*k+0] <= 8))
printf("%c%d,",gecsut3[8*k+0],gecsat3[8*k+0]);
gecsut3[8*k+1] = gecsut2[k] + 2 , gecsat3[8*k+1] = gecsat2[k] + 1;
if ((gecsut3[8*k+1] >= 'a' && gecsut3[8*k+1] <= 'h') && (gecsat3[8*k+1] >= 1 && gecsat3[8*k+1] <= 8))
printf("%c%d,",gecsut3[8*k+1],gecsat3[8*k+1]);
gecsut3[8*k+2] = gecsut2[k] + 2 , gecsat3[8*k+2] = gecsat2[k] - 1;
if ((gecsut3[8*k+2] >= 'a' && gecsut3[8*k+2] <= 'h') && (gecsat3[8*k+2] >= 1 && gecsat3[8*k+2] <= 8))
printf("%c%d,",gecsut3[8*k+2],gecsat3[8*k+2]);
gecsut3[8*k+3] = gecsut2[k] + 1 , gecsat3[8*k+3] = gecsat2[k] - 2;
if ((gecsut3[8*k+3] >= 'a' && gecsut3[8*k+3] <= 'h') && (gecsat3[8*k+3] >= 1 && gecsat3[8*k+3] <= 8))
printf("%c%d,",gecsut3[8*k+3],gecsat3[8*k+3]);
gecsut3[8*k+4] = gecsut2[k] - 1 , gecsat3[8*k+4] = gecsat2[k] - 2;
if ((gecsut3[8*k+4] >= 'a' && gecsut3[8*k+4] <= 'h') && (gecsat3[8*k+4] >= 1 && gecsat3[8*k+4] <= 8))
printf("%c%d,",gecsut3[8*k+4],gecsat3[8*k+4]);
gecsut3[8*k+5] = gecsut2[k] - 2 , gecsat3[8*k+5] = gecsat2[k] - 1;
if ((gecsut3[8*k+5] >= 'a' && gecsut3[8*k+5] <= 'h') && (gecsat3[8*k+5] >= 1 && gecsat3[8*k+5] <= 8))
printf("%c%d,",gecsut3[8*k+5],gecsat3[8*k+5]);
gecsut3[8*k+6] = gecsut2[k] - 2 , gecsat3[8*k+6] = gecsat2[k] + 1;
if ((gecsut3[8*k+6] >= 'a' && gecsut3[8*k+6] <= 'h') && (gecsat3[8*k+6] >= 1 && gecsat3[8*k+6] <= 8))
printf("%c%d,",gecsut3[8*k+6],gecsat3[8*k+6]);
gecsut3[8*k+7] = gecsut2[k] - 1 , gecsat3[8*k+7] = gecsat2[k] + 2;
if ((gecsut3[8*k+7] >= 'a' && gecsut3[8*k+7] <= 'h') && (gecsat3[8*k+7] >= 1 && gecsat3[8*k+7] <= 8))
printf("%c%d,",gecsut3[8*k+7],gecsat3[8*k+7]);
scanf("%c",&z);
}
else
{
gecsut3[8*k+0] = 'x' , gecsat3[8*k+0] = 10;
gecsut3[8*k+1] = 'x' , gecsat3[8*k+1] = 10;
gecsut3[8*k+2] = 'x' , gecsat3[8*k+2] = 10;
gecsut3[8*k+3] = 'x' , gecsat3[8*k+3] = 10;
gecsut3[8*k+4] = 'x' , gecsat3[8*k+4] = 10;
gecsut3[8*k+5] = 'x' , gecsat3[8*k+5] = 10;
gecsut3[8*k+6] = 'x' , gecsat3[8*k+6] = 10;
gecsut3[8*k+7] = 'x' , gecsat3[8*k+7] = 10;
}
printf("\n\a");
scanf("%c\a",&z);
for (y2=8; y2>0; --y2)
{
scanf("%c",&z);
        for (y1=97; y1<105; ++y1)
{
h=0;
for (g=0; g<512; ++g)
{
if (gecsut3[g] == y1 && gecsat3[g] == y2)
++h;
else
;
}
printf("%c%d = %d\t",y1,y2,h);
}
}
printf("\n\n\a");
printf("At�n D�rd�nc� Hamleleri\n");
for (r=0; r<512; ++r)
if ((gecsut3[r] >= 'a' && gecsut3[r] <= 'h') && (gecsat3[r] >= 1 && gecsat3[r] <= 8))
{
gecsut4[8*r+0] = gecsut3[r] + 1 , gecsat4[8*r+0] = gecsat3[r] + 2;
if ((gecsut4[8*r+0] >= 'a' && gecsut4[8*r+0] <= 'h') && (gecsat4[8*r+0] >= 1 && gecsat4[8*r+0] <= 8))
printf("%c%d,",gecsut4[8*r+0],gecsat4[8*r+0]);
gecsut4[8*r+1] = gecsut3[r] + 2 , gecsat4[8*r+1] = gecsat3[r] + 1;
if ((gecsut4[8*r+1] >= 'a' && gecsut4[8*r+1] <= 'h') && (gecsat4[8*r+1] >= 1 && gecsat4[8*r+1] <= 8))
printf("%c%d,",gecsut4[8*r+1],gecsat4[8*r+1]);
gecsut4[8*r+2] = gecsut3[r] + 2 , gecsat4[8*r+2] = gecsat3[r] - 1;
if ((gecsut4[8*r+2] >= 'a' && gecsut4[8*r+2] <= 'h') && (gecsat4[8*r+2] >= 1 && gecsat4[8*r+2] <= 8))
printf("%c%d,",gecsut4[8*r+2],gecsat4[8*r+2]);
gecsut4[8*r+3] = gecsut3[r] + 1 , gecsat4[8*r+3] = gecsat3[r] - 2;
if ((gecsut4[8*r+3] >= 'a' && gecsut4[8*r+3] <= 'h') && (gecsat4[8*r+3] >= 1 && gecsat4[8*r+3] <= 8))
printf("%c%d,",gecsut4[8*r+3],gecsat4[8*r+3]);
gecsut4[8*r+4] = gecsut3[r] - 1 , gecsat4[8*r+4] = gecsat3[r] - 2;
if ((gecsut4[8*r+4] >= 'a' && gecsut4[8*r+4] <= 'h') && (gecsat4[8*r+4] >= 1 && gecsat4[8*r+4] <= 8))
printf("%c%d,",gecsut4[8*r+4],gecsat4[8*r+4]);
gecsut4[8*r+5] = gecsut3[r] - 2 , gecsat4[8*r+5] = gecsat3[r] - 1;
if ((gecsut4[8*r+5] >= 'a' && gecsut4[8*r+5] <= 'h') && (gecsat4[8*r+5] >= 1 && gecsat4[8*r+5] <= 8))
printf("%c%d,",gecsut4[8*r+5],gecsat4[8*r+5]);
gecsut4[8*r+6] = gecsut3[r] - 2 , gecsat4[8*r+6] = gecsat3[r] + 1;
if ((gecsut4[8*r+6] >= 'a' && gecsut4[8*r+6] <= 'h') && (gecsat4[8*r+6] >= 1 && gecsat4[8*r+6] <= 8))
printf("%c%d,",gecsut4[8*r+6],gecsat4[8*r+6]);
gecsut4[8*r+7] = gecsut3[r] - 1 , gecsat4[8*r+7] = gecsat3[r] + 2;
if ((gecsut4[8*r+7] >= 'a' && gecsut4[8*r+7] <= 'h') && (gecsat4[8*r+7] >= 1 && gecsat4[8*r+7] <= 8))
printf("%c%d,",gecsut4[8*r+7],gecsat4[8*r+7]);
scanf("%c",&z);
}
else
{
gecsut4[8*r+0] = 'x' , gecsat4[8*r+0] = 10;
gecsut4[8*r+1] = 'x' , gecsat4[8*r+1] = 10;
gecsut4[8*r+2] = 'x' , gecsat4[8*r+2] = 10;
gecsut4[8*r+3] = 'x' , gecsat4[8*r+3] = 10;
gecsut4[8*r+4] = 'x' , gecsat4[8*r+4] = 10;
gecsut4[8*r+5] = 'x' , gecsat4[8*r+5] = 10;
gecsut4[8*r+6] = 'x' , gecsat4[8*r+6] = 10;
gecsut4[8*r+7] = 'x' , gecsat4[8*r+7] = 10;
}
printf("\n\a");
scanf("%c\a",&z);
for (u2=8; u2>0; --u2)
{
scanf("%c",&z);
        for (u1=97; u1<105; ++u1)
{
l=0;
for (s=0; s<4096; ++s)
{
if (gecsut4[s] == u1 && gecsat4[s] == u2)
++l;
else
;
}
printf("%c%d = %d\t",u1,u2,l);
}
}

printf("\n\n\a");
t=0;
for (c=0; c<4096; ++c)
if (gecsut4[c] == bulsut && gecsat4[c] == bulsat)
{
++t;
q3 = c % 8 , w3 = (c - q3) / 8 ;
q2 = w3 % 8 , w2 = (w3 - q2) / 8;
q1 = w2 % 8 , w1 = (w2 - q1) / 8;
printf("\a%c%d,%c%d,%c%d,%c%d,%c%d,%d\n",bassut,bassat,gecsut1[w1],gecsat1[w1],gecsut2[w2],gecsat2[w2],gecsut3[w3],gecsat3[w3],bulsut,bulsat,t);
scanf("%c",&z);
}
}
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: Reverser - 17 Aralık 2015 - 23:22:16
@igmmurat, şu şekilde bir uygulamamız var [1] ben düzeltiyorum fakat aklında bulunsun. Bu arada, kodların sonundaki kısım (üstü çizik olan) nedir ?
[1] kodetiketi
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: igmmurat - 17 Aralık 2015 - 23:30:34
o son satırlardaki çizgiler nasıl çıktı ben de bilmiyorum. Pek forumlarda yazan biri değilim bundan sonra dikkat ederim...
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: Sh4oTT - 18 Aralık 2015 - 01:52:47
@igmmurat 17 sene oncemı yazdınız :O Hocam baya tecrubelısınızdır o zaman C konusunda :)
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: -DıLgEş- - 19 Aralık 2015 - 13:45:03
Benim paylaşımlar durdu ne yazık ki! Windows yüzünden.. Sadece D diline kodlar var elimde istek olursa aktarırırm. :)
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: Sh4oTT - 20 Aralık 2015 - 04:23:17
// 3 BOYUTLU DIZI ORNEGI   -> dizi[1][2][3] <-

#include <stdio.h>

// PROTOTIPLER

void satislariEkranaYaz ();
void satislariOku();
void teknikUniToplam();
void psikoKirtasiyeToplam();
void enCokSatanEl();
void enAzSatanEl();
void teknikKitapEnCok();
void toplamKazanc();

int satislar[6][2][2]; // GLOBAL DIZIMIZ

void satislariOku () {

int i=0, j=0, k=0;

// HER SATIS TEMSILCISININ KAC KITAP SATTIGINI
// KULLANICIDAN OKUYALIM VE DIZIYE YAZALIM

for (i=0; i<6; i++) { // 6 SATIS TEMSILCISI ICIN

printf("%d. satis temsilcisi\n", i+1);

    for (j=0; j<2; j++) { // 2 KITAP TURU TEKNIK VE PSIKOLOJI KITAPLARI
   
    if ( j==0 ) printf("\tTeknik Kitabi\n");
   
    else printf("\tPsikoloji Kitabi\n");
   
        for (k=0; k<2; k++) { // 2 FARKILI YER UNI VE KIRTASIYE
       
        if (k==0) printf("\t\tUniversiteye  ");
       
        else printf("\t\tKirtasiyeye  ");
       
        printf("kac adet satti: "); scanf("%d", &satislar[i][j][k]);
       
        }
        }
        printf("\n");
        }
        }
       
void satislariEkranaYaz () {

int i=0, j=0, k=0;
int uniToplam=0;
int kirtasiyeToplam=0;
int teknikKitapToplam=0;
int psiKitapToplam=0;

for (i=0; i<6; i++) {
   
    for (j=0; j<2; j++) {
   
    uniToplam+=satislar[i][j][0];
    kirtasiyeToplam+=satislar[i][j][1];
    }
   
        for (j=0; j<2; j++) {
       
        teknikKitapToplam+=satislar[i][0][j];
        psiKitapToplam+=satislar[i][1][j];
       
        }
       
        }
       
        // SATISLARI YAZALIM
       
printf("\nUni. toplam %d kitap satildi.\n", uniToplam);
printf("Kirtasiyeye toplam %d kitap satildi.\n", kirtasiyeToplam);
printf("\nToplam %d teknik kitap satildi.\n", teknikKitapToplam);
printf("Toplam %d psikolojik kitap satildi.\n", psiKitapToplam);

}

// satislar[calısanlar][kıtapturu][universitekirtasiye]


void teknikUniToplam () {

int toplam=0;
int i=0, j=0, k=0;

for (i=0; i<6; i++) {

    for (j=0; j<1; j++) {
   
        for (k=0; k<1; k++) {
       
toplam+=satislar[i][j][k];
}
}
}
printf("Teknik kitaplardan Universitelere %d tane satilmistir.\n", toplam);
}


// satislar[calısanlar][kıtapturu][universitekirtasiye]


void psikoKirtasiyeToplam () {

int toplam=0;
int i=0, j=0, k=0;

for (i=0; i<6; i++) {

    for (j=1; j<2; j++) {
   
        for (k=1; k<2; k++) {
       
toplam+=satislar[i][j][k];
}
}
}
printf("Psikoloji kitaplardan Kirtasiyelere %d tane satilmistir.\n", toplam);
}



void enCokSatanEl () {

int top=0;
int kisi=0;
int toplam=0;
int i=0, j=0, k=0;

for (i=0; i<6; i++) {
   
    for (j=0; j<2; j++) {
   
        for (k=0; k<2; k++) {
       
        toplam+=satislar[i][j][k];
        }
        }
        if (toplam>top) {
        top=toplam;
        kisi=i+1;
        }
        toplam=0;
        }
       printf("En cok satis yapan eleman %d satisiyla %d. elemandir.\n", top, kisi);
       }
       
       
       
void enAzSatanEl () {

int bot=999999;
int kisi=0;
int toplam=0;
int i=0, j=0, k=0;

for (i=0; i<6; i++) {
   
    for (j=0; j<2; j++) {
   
        for (k=0; k<2; k++) {
       
        toplam+=satislar[i][j][k];
        }
        }
        if (toplam<bot) {
        bot=toplam;
        kisi=i+1;
        }
        toplam=0;
        }
       printf("En az satis yapan eleman %d satisiyla %d. elemandir.\n", bot, kisi);
       }       





void teknikKitapEnCok () {
int top=0;
int kisi=0;
int toplam=0;
int i=0, j=0, k=0;

for (i=0; i<6; i++) {

    for (j=0; j<1; j++) {
   
        for (k=0; k<2; k++) {
       
toplam+=satislar[i][j][k];
}
}
if (toplam>top) {
top=toplam;
kisi=i+1;
}
toplam=0;
}
printf("En cok teknik kitap satan eleman %d satisiyla %d. elemandir.\n", top, kisi);
}

void toplamKazanc() {

int genelToplam=0;
int i=0, j=0, k=0;
int tutoplam=0, tktoplam=0, putoplam=0, pktoplam=0;

for (i=0; i<6; j++) {

   for (j=0; j<2; j++) {
   
       for (k=0; k<2; k++) {
       
            if (j==0 && k==0) {
                 
                  tutoplam+=satislar[i][j][k];
                 
                  }
                 
            else if (j==0 && k==1) {
         
            tktoplam+=satislar[i][j][k];
           
           }
           
           else if (j==1 && k==0) {
         
            putoplam+=satislar[i][j][k];
           
           }
     
           else if (j==1 && k==1) {
         
            pktoplam+=satislar[i][j][k];
           
           }
           }
           }
           }
           genelToplam=( (tutoplam*4) + (tktoplam*6) + (putoplam*1) + (pktoplam*2) );
           printf("Toplam kazanc: %d Milyondur.\n", genelToplam);
           
           
           
           
           }



int main() {

satislariOku();
satislariEkranaYaz();
teknikUniToplam();
psikoKirtasiyeToplam();
enCokSatanEl();
enAzSatanEl();
teknikKitapEnCok();
toplamKazanc();

return 0;
}
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       


// GERIYE ADRES DONDUREN FONKSIYONLAR --> FONKSIYONLAR VE GOSTERICILER //
// KAREKOK ALMA //
#include <stdio.h>
#include <math.h>

float * karekokAl(float *); // PROTOTIP



float * karekokAl (float *fPt) {

*fPt=sqrt(*fPt);

return fPt;
}


int main() {


float sayi=0;
float * pt;

printf("Karekoku alinacak sayiyi giriniz: "); scanf("%f", &sayi);

// FONKSIYONUMUZU CAGIRALIM

pt=karekokAl(&sayi);

printf("Karekok: %.2f\n", *pt);

}


// GOSTERICILERLE YER DEGISTIRME(SWAP) //

#include <stdio.h>





void  *swap (int *, int *); // FONKSIYON PROTOTIPI


void  *swap (int * ptr01, int * ptr02) {

int temp=0;

temp=*ptr01;
*ptr01=*ptr02;
*ptr02=temp;

}

int main() {

int sayi01=0, sayi02=0;

// KULLANICIDAN 2 SAYI ALALIM

printf("2 tane sayi giriniz: "); scanf("%d%d", &sayi01, &sayi02);

// SAYI1 ve SAYI2 EKRANA YAZALIM

printf("Sayi01: %d\n", sayi01);
printf("Sayi02: %d\n\n", sayi02);

// FONKSIYONUMUZU CAGIRALIM

swap(&sayi01, &sayi02);


// SAYI1 ve SAYI2 DEGERLERININ SON HALINI EKRANA YAZDIRALIM


printf("Sayi01: %d\n", sayi01);
printf("Sayi02: %d\n", sayi02);

return 0;
}
// GOSTERICILERI FONKSIYONLARLA KULLANARAK OBEB OKEK BULMAK //

#include <stdio.h>


int okekBul (int *, int *); // PROTOTIP1
int obebBul (int *, int *, int *); // PROTOTIP2


int okekBul (int *ptr01, int *ptr02) {

int okek=0, buyukSayi=0;

// GONDERILEN 2 DEGISKENDEN HANGISININ DAHA BUYUK OLDUGUNU BULALIM

if (*ptr01>*ptr02) buyukSayi=*ptr01;

else buyukSayi=*ptr02;

okek=buyukSayi;

// OKEKI BULALIM

while ( okek % *ptr01!=0 || okek % *ptr02!=0 ) {

okek+=buyukSayi;

}

return okek;

}

int obebBul (int *ptr01, int *ptr02, int *okekptr) {


return ( (*ptr01) * (*ptr02) / *okekptr ); // OKEK(a,b)= a * b / OBEB(a,b) FORMULU

}

int main () {


int sayi01=0;
int sayi02=0;
int okek=0, obeb=0;

// SAYILARI ALALIM

printf("2 tane sayi giriniz: "); scanf("%d%d", &sayi01, &sayi02);

okek=okekBul(&sayi01, &sayi02); // OKEK FONKSIYONU

obeb=obebBul(&sayi01, &sayi02, &okek); // OBEB FONKSIYONU

// OKEK VE OBEBI EKRANA YAZDIRALIM

printf("OKEK: %d\n", okek);

printf("OBEB: %d\n", obeb);

return 0;

}


// KARAKTERLERI KAYDIRARAK YAZDIRMA //

#include <stdio.h>


void karakterKaydir(char *, int); // PROTOTIP

void karakterKaydir(char *ptr, int diziBoyu) {


int i=0, j=0;

for (i=0; i<=diziBoyu; i++) {

    for (j=i; j<diziBoyu; j++) {
   
   
        printf("%c", *(ptr+j));
        }
       
        for (j=0; j<i; j++) {
       
        printf("%c", *(ptr+j));
        }
       
        printf("\n");
        }
        }
       
       
int main() {

char karakterler[10]={'b','i','l','g','i','s','a','y','a','r'};
       
        int boy=10; // DIZININ BOYU
       
        karakterKaydir(karakterler, boy);
       

}
// GIRILEN KARAKTER ILE SEKIL CIZIMI //

#include <stdio.h>


void ciz (int , char); // PROTOTIP

void ciz (int n, char c) {

int i=0, j=0, k=0;


for (i=1; i<=n; i++) {

for (j=0; j<n-i; j++) {

printf(" ");

}

for (k=0; k<i; k++) {

printf("%c", c);
}
printf("\n");

}

for (i=1; i<n; i++) {
for (j=n-i; j>0; j--) {

printf("%c", c);
}
printf("\n");
}
}


int main () {
int n=0;
char c=0;

printf("Karakter giriniz: "); scanf("%c", &c);
printf("Sayi giriniz: "); scanf("%d", &n);

ciz(n,c);

}

// GIRILEN KARAKTER ILE SEKIL CIZIMI 2//

#include <stdio.h>

void ciz (int , char); // PROTOTIP

void ciz (int n, char c) {

int i=0, j=0, k=1;

if(n%2==0) n++;

for (i=1; i<=(n+1)/2; i++) { // SATIR KONTROLU

for (j=i; j<=(n-1)/2; j++) { // BOSLUK KONTROLU

printf(" ");
}

for (j=0; j<k; j++) { // KARAKTER KONTROLU
printf("%c", c);

}


k+=2;
printf("\n");
}

k=n;

for (i=1; i<=(n-1)/2; i++) { // SATIR KONTORLU
for (j=0; j<i; j++) { // BOSLUK KONTROLU
printf(" ");
}
for (j=0; j<(k-2); j++) { // KARAKTER KONTROLU
printf("%c", c);
}
k-=2;
printf("\n");
}
}

int main() {

int n=0;
char c=0;

printf("Karakter giriniz: "); scanf("%c", &c);
printf("Sayi giriniz: "); scanf("%d", &n);

ciz(n,c);

}

// FARKLI ORNEKLER //

#include <stdio.h>


void ciz ( int ); // PROTOTIP

void ciz (int n) {

int i=1, a=1, j=0;

while (i!=n+1) {

for (j=i; j<a+i; j++) {

printf("%d ", j);
}

a++;
printf("\n");
i++;
}

}







int main() {

int n=0;

printf("Sayi giriniz: "); scanf("%d", &n);
ciz(n);

}

// GOSTERICILER ILE DIZIYI TERSINE CEVIRMEK //

#include <stdio.h>



void diziyiTersCevir (int *, int); // PROTOTIP


void diziyiTersCevir (int * dizi, int boy) {

int i=0, temp=0;

for (i=0; i<boy/2; i++) {

temp=*(dizi+i);
*(dizi+i)=*(dizi+boy-1-i);
*(dizi+boy-1-i)=temp;

}

}









int main() {

int dizi[5]={'a','b','c','d','e'};
int i=0, boy=5;



// DIZININ ILK HALI

for (i=0; i<boy; i++) {

printf("%c ", dizi[i]);
}
printf("\n\n");

diziyiTersCevir(dizi,boy);


// DIZININ SON HALI


for (i=0; i<boy; i++) {

printf("%c ", dizi[i]);

}

printf("\n\n");


return 0;



}
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: -DıLgEş- - 20 Aralık 2015 - 12:58:57
Haydi bakalım, Kaynak Kod Arşivi..

http://www.csystem.org/kaynak-kod-arsivi
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: -DıLgEş- - 22 Aralık 2015 - 09:18:40
İngilizceniz varsa mutlaka izleyin:

Writing Fast Code I: https://www.youtube.com/watch?v=ph7FP0LnmcA
Writing Fast Code II: https://www.youtube.com/watch?v=3_FXy3cT5C8

Daha fazla bilgi için: http://ddili.org/forum/thread/1538
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: ekremsenturk - 22 Aralık 2015 - 12:11:29
Burada üyeler kendi yazdıkları kodları paylaşıyorlar. Sen bulduklarını paylaşmışsın. Konu içeriğini yanlış anlamışsın.
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: -DıLgEş- - 22 Aralık 2015 - 12:14:09
Alıntı yapılan: ekremsenturkBurada üyeler kendi yazdıkları kodları paylaşıyorlar. Sen bulduklarını paylaşmışsın. Konu içeriğini yanlış anlamışsın.
Sadece bilgi amaçlı aktarmıştım.. 
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: AmigaMan - 22 Aralık 2015 - 21:57:42
Üstadlar bide şu pointer kavramından bahsedemisiniz
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: Reverser - 22 Aralık 2015 - 23:14:32
@ekremsenturk, sıkıntı yok.
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: Sh4oTT - 23 Aralık 2015 - 00:05:02
Alıntı yapılan: AmigaManÜstadlar bide şu pointer kavramından bahsedemisiniz
Göstericiler bir C klasiğidir. C'yi  C yapan en buyuk etkenlerin basında gelir. Dusuk sevıyelı programlamaya en ıyı ornektır.
Pekı nedır gosterıcı? Gosterıcı, bir degiskendir. Icınde, baska bır degıskenın bellek adresını tutar. Yanı gosterıcı, icinde baska degıskenlerın adreslerını tutan bır degıskendır.

Alıntıdır.

Eger yenı basladıysanız C programlamaya sımdılık bu yeterlı kafanızı fazla karsıtırmayın zamanla ılerledıkce ogreneceksınızdır. :)
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: Sh4oTT - 28 Aralık 2015 - 12:22:04
// GIRILEN CUMLEYI SIFRELEMEK // -- STRINGLER --


/*
*****************************************************************************
*           | x | a | b | c | d | e | f | g | h | i |  j  |  k  |           *
*            ---------------------------------------------------            *
*           | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10  | 11 |            *
*                                                                           *
*                                                                           *
* |  l  |  m  |  n  |  o  |  p  |  r  |  s  |  t  |  u  |  v  |  y  |  z  | *
*  -----------------------------------------------------------------------  *
* |  12 |  13 |  14 |  15 |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 | *
*                                                                           *
*            f(x)= ( 5x+4 ) mod 24 fonksiyonuna göre sifreleme              *
*                                                                           *
*   Or: l harfinin sifrelenmesi=>  ( 5(12)+4 ) % 24 =>  16 => 'p' olur      *
*****************************************************************************
*\

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


void sifrele ( char * ); // PROTOTIP


char sifre[24]={'x','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','r','s','t','u','v','y','z'};


void sifrele ( char * ptr ) {



int i=0, j=0;

int uzunluk=strlen(ptr);



for (i=0; i<uzunluk; i++) {

for (j=0; j<24; j++) {

if ( ( *(ptr+i) >= 65 && *(ptr+i) <= 90 ) || ( *(ptr+i) >= 97 && *(ptr+i) <= 122 ) ) { // GIRILEN KARAKTER HARFMI DEGILMI KONTROL EDELIM

if ( *(ptr+i) >= 65 && *(ptr+i) <= 90 ) { // GIRILEN HARF BUYUK HARF ISE KUCUK HARFE CEVIRELIM

*(ptr+i)=tolower( *(ptr+i) );

}



if ( *(ptr+i)==sifre[j] ) { // GIRILEN HARFIN NUMARASINI BULALIM



putchar(sifre[ (5*j+4) %24 ] ); // HARFIN SIFRELENMIS HALINI BULUP YAZDIRALIM
}

}

else {

putchar( *(ptr+i) ); // GIRILEN KARAKTER HARF DEGIL ISE AYNEN YAZDIRALIM

break;

} // ELSE SONU

} // j FOR SONU

} // i FOR SONU
} // FONK. SONU


int main() {

char dizi[100];

puts("Cumle girin:");

gets(dizi); // GIRILEN HARFLERI DIZIMIZE KAYDEDELIM

sifrele(dizi); // FONKSIYONUMUZU CAGIRALIM

getchar();


}


// SIFRELENEN CUMLENUN COZULMESI // --STRINGLER--

#include <stdio.h>
#include <ctype.h>




void sifreCoz(); // PROTOTIP

void sifreCoz() {

int karakter=0;

while (karakter!=10) { // ENTER TUSUNA BASILANA KADAR DEVAM ET

karakter=getchar();


if ( karakter >= 65 && karakter <= 90 ) {  // GIRILEN HARF BUYUK HARF ISE KUCUK HARFE DONUSTURELIM

karakter=tolower( karakter );

}

switch(karakter) { // GIRILEN HARFE GORE KARSILIGINI YAZDIRALIM


case 'a' : putchar('i'); break;
case 'b' : putchar('n'); break;
case 'c' : putchar('t'); break;
case 'd' : putchar('x'); break;
case 'e' : putchar('e'); break;
case 'f' : putchar('j'); break;
case 'g' : putchar('o'); break;
case 'h' : putchar('u'); break;
case 'i' : putchar('a'); break;
case 'j' : putchar('f'); break;
case 'k' : putchar('k'); break;
case 'l' : putchar('p'); break;
case 'm' : putchar('v'); break;
case 'n' : putchar('b'); break;
case 'o' : putchar('g'); break;
case 'p' : putchar('l'); break;
case 'r' : putchar('r'); break;
case 's' : putchar('y'); break;
case 't' : putchar('c'); break;
case 'u' : putchar('h'); break;
case 'v' : putchar('m'); break;
case 'x' : putchar('d'); break;
case 'y' : putchar('s'); break;
case 'z' : putchar('z'); break;


default  : putchar(karakter);  // GIRILEN KARAKTER HARF DEGIL ISE AYNEN YAZDIRALIM
}

}
}

int main() {

sifreCoz();
getchar();

}


// GIRILEN BIR CUMLENIN UZUNLUGUNUN BULUNMASI // -- STRINGLER --

#include <stdio.h>


int uzunlukBul(char *); // PROTOTIP

int uzunlukBul ( char * ptr) {

int i=0;

while (*(ptr+i)!='\0') {
i++;
}

return i;

}








int main() {
char dizi[100];

gets(dizi); // DIZIYE KARAKTERLER ALIYORUZ

puts(dizi); // DIZIYI EKRANA YAZDIRIYORUZ

printf("Uzunluk: %d", uzunlukBul(dizi)); // UZUNLUGU BULUP EKRANA YAZDIRIYORUZ






}

// GIRILEN BIR CUMLENIN KAC KELIMEDEN OLUSTUGUNUN BULUNMASI // -- STRINGLER --

#include <stdio.h>


int kelimeSayisi ( char * ); // PROTOTIP

int kelimeSayisi ( char * ptr ) {

int i=0, sayac=1;

while (*(ptr+i)!='\0' ) {

if (*(ptr+i)==' ') sayac++;
i++;
}

return sayac;
}







int main() {


char dizi[100];

puts("Cumleyi giriniz:");
gets(dizi);                // DIZIYE CUMLEYI GIRIYORUZ

puts("Girilen cumle:");
puts(dizi);               // GIRILEN CUMLEYI YAZDIRIYORUZ

printf("Kelime sayisi: %d\n", kelimeSayisi(dizi));  // KELIME SAYISINI BULUP EKRANA YAZDIRIYORUZ


getchar();
}
// GIRILEN CUMLEDEKI KUCUK HARFLERIN BUYUK HARFE, BUYUK HARFLERIN KUCUK HARFE CEVRILMESI // -- STRINGLER --

#include <stdio.h>


void cevir ( char * ); // PROTOTIP


void cevir ( char * ptr ) {

while (*ptr!='\0') {

if ( *ptr>='a' && *ptr<='z' ) putchar( *ptr-32 );

else if ( *ptr>='A' && *ptr<='Z' ) putchar( *ptr+32 );

else putchar ( *ptr );

ptr++;

}

}







int main() {

char dizi[100];

puts("Cumle giriniz:");

gets(dizi); // CUMLEYI DIZIYE AKTARIYORUZ


cevir(dizi); // HARFLERI BUYUK KUCUK YAPIYORUZ

getchar();

}


// GIRILEN CUMLENIN ILK HARFLERINI ALARAK CUMLENIN KISALTILMASI // -- STRINGLER --

#include <stdio.h>


void kisalt ( char * ); // PROTOTIP


void kisalt ( char * ptr ) {

printf("%c", *ptr);

while (*ptr!='\0') {

if ( *ptr==' ' ) putchar(*(ptr+1));  // BOSLUK KARAKTERINE GELDIGI ZAMAN BIR SONRAKI HARFI EKRANA YAZDIR
ptr++;

}

}











int main() {

char dizi[100];


puts("Cumle giriniz:");

gets(dizi); // CUMLEYI DIZIYE AKTARIYORUZ

kisalt(dizi); // FONKSIYONUMUZU CAGIRIYORUZ

getchar();

}


// GIRILEN CUMLEYI TERSTEN YAZMAK // -- STRINGLER --

#include <stdio.h>
#include <string.h> // strlen fonksiyonu kutuphanesi

void terstenYaz ( char * ); // PROTOTIP


void terstenYaz ( char * ptr ) {

int i=0;



for (i=strlen(ptr)-1; i>=0; i--) { // CUMLENIN UZUNLUGUNU BULUP, SONDAN BASA DOGRU YAZDIRIYORUZ

putchar(*(ptr+i));

}

}









int main() {

char dizi[100];

puts("Cumle giriniz:");

gets(dizi);

terstenYaz(dizi);

getchar();


}


// GIRILEN KELIMEDEKI HARF SAYISINI CIFT YAPMAK // -- STRINGLER --

#include <stdio.h>

void ciftYap ( char * ); // PROTOTIP


void ciftYap ( char * ptr ) {

while (*ptr!='\0') {

putchar(*ptr);
putchar(*ptr);

ptr++;
}
}









int main() {

char dizi[100];


puts("Cumle Girin:");

gets(dizi);

ciftYap(dizi);

getchar();

}


// GIRILEN CUMLEDEKI KELIMELERI TERS SIRADA YAZMAK // -- STRINGLER --

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


void tersYaz ( char * ); // PROTOTIP

void tersYaz ( char * ptr ) {

int uzunluk=strlen(ptr);
int basla=uzunluk-1, bitir=uzunluk-1;
int i=0, j=0;

for ( i=uzunluk; i>=0; i--) {

   if ( *(ptr+i) == ' ' || i == 0 ) { // BOSLUK KARAKTERINE VEYA CUMLE BASINA GELINDIGINI KONTROL ET

        basla=(i!=0) ? i+1 : i ;

// BOSLUKTAN KELIME SONUNA KADAR OLAN KELIMEYI YAZDIRALIM

for ( j=basla; j<=bitir; j++) {

   putchar(*(ptr+j));

} // J FOR

bitir=basla-2;

if (i!=0) putchar(' '); // KELIMELERIN ARASINA BOSLUK YERLESTIRELIM

} // IF SONU

} // i FOR

} // FONK. SONU

int main() {

char dizi[100];

puts("Cumle giriniz:");

gets(dizi);

tersYaz(dizi);

getchar();



}


// GIRILEN CUMLENIN PALINDROM OLUP OLMADIGINI BULMAK // -- STRINGLER --

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


int testPalindrom ( char * ); // PROTOTIP

int testPalindrom ( char* ptr ) {

int uzunluk=strlen(ptr), i=0;

char *bas, *son;

bas=ptr;
son=ptr+uzunluk-1;


// BAS GOSTERICISI SON GOSTERICISINI GECENE KADAR BAKALIM

while (bas+i <= son ) {

// SADECE ASCII 97-122 ve 65-90 ARALIGINI
// (BUYUK-KUCUK HARFLERI) DIKKATE ALIYORUZ

while (tolower( *(bas+i) ) <97 || tolower( *(bas+i) ) >122 ) bas++;

while (tolower( *(son-i) ) <97 || tolower( *(son-i) ) >122 ) son--;


if ( tolower ( *(bas+i) )!= tolower ( *(son-i) ) ) { // PALINDROM DEGIL

return 0;

} // IF SONU

i++;

} // WHILE SONU

return 1;

} // FONK. SONU

int main() {

char dizi[200];

puts("Cumle giriniz:");

gets(dizi);

if (testPalindrom(dizi))
printf("Palindrom!!!\n");

else
printf("Palindrom Degil!!!\n");

getchar();




}


// GIRILEN CUMLENIN HARFLERI ARASINDA BIRER BOSLUK BIRAKARAK YAZMAK // -- STRINGLER --

#include <stdio.h>


void birBosluk ( char * ); // PROTOTIP


void birBosluk ( char * ptr ) {

while (*ptr!='\0') {

printf("%c ", *ptr);

ptr++;

}
}

int main() {

char dizi[100];

puts("Cumle giriniz:");

gets(dizi);

birBosluk(dizi);

getchar();

}
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: betseg - 25 Ocak 2016 - 11:57:02
// 10000'den küçük mükemmel sayıları bulan program
#include <stdio.h>

int main(void){
    int i, j, k, l=10000;

    for (i=2; i<l; ++i) {
        k=0;

        for (j=1; j<i; ++j) {

            if (i%j == 0) {
                k += j;
            }

        }

        if (k == i) {
            printf("%i\n", i);
        }

    }

    return 0;
}
Başlık: Ynt: C ve C++ Örnek Kod Paylaşımı
Gönderen: Erdem - 06 Şubat 2016 - 09:44:34
Girişten gelen kelimeleri sayan program. Biraz gereksiz yere karışık sürümü  ;)


#include <iostream>
#include <map>
#include <string>
#include <iterator>

using namespace std;

typedef map <string, unsigned int> Kelimeler;
typedef pair <string, unsigned int> Sayac;

class KelimeArttirici : public iterator <output_iterator_tag,
                                         void, void, void, void>
{
public:

    explicit KelimeArttirici (Kelimeler & kelimeler)
        : kelimeler_ (kelimeler)
    {}

    KelimeArttirici & operator= (const string & kelime)
    {
        ++kelimeler_ [kelime];
        return *this;
    }

    KelimeArttirici & operator* ()     { return *this; }
    KelimeArttirici & operator++ ()    { return *this; }
    KelimeArttirici & operator++ (int) { return *this; }

private:
    Kelimeler & kelimeler_;
};

namespace std
{
    ostream & operator<< (ostream & cikis, const Sayac & sayac)
    {
        return cikis << sayac.first << '\t' << sayac.second;
    }
}

int main ()
{
    Kelimeler kelimeler;
    copy (istream_iterator<string> (cin),
          istream_iterator<string> (),
          KelimeArttirici (kelimeler));

    copy (kelimeler.begin (), kelimeler.end (),
          ostream_iterator<Sayac> (cout, "\n"));
    return 0;
}