C ve C++ Örnek Kod Paylaşımı

Başlatan -DıLgEş-, 29 Temmuz 2015 - 17:23:06

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

-DıLgEş-

   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
Aşkın; gözü kör, kulağı sağır, dili tutuk, aklı kıttır..! Hayır yani bu halde nasıl herkesi madara ediyor onu çözemedim..

Sh4oTT

Benim gibi yeni ogrenen arkadaslar icin faydali bir konu olmus bende paylasmak isterdimde benimkiler cok basit kalir :) Paylasim icin tesekkurler

-DıLgEş-

Birkaç gün sonra yeni kodlar paylaşırım. Bu arada kodun basiti zoru olmaz bence... Siz paylaşmak isterseniz sorun olmaz.
Aşkın; gözü kör, kulağı sağır, dili tutuk, aklı kıttır..! Hayır yani bu halde nasıl herkesi madara ediyor onu çözemedim..

Pozitron

#3
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;
}
To follow the path,look to the master,follow the master,walk with the master,see through the master,become the master.

Sh4oTT

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;

}

-DıLgEş-

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();
    }

}
Aşkın; gözü kör, kulağı sağır, dili tutuk, aklı kıttır..! Hayır yani bu halde nasıl herkesi madara ediyor onu çözemedim..

-DıLgEş-

Ö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...
Aşkın; gözü kör, kulağı sağır, dili tutuk, aklı kıttır..! Hayır yani bu halde nasıl herkesi madara ediyor onu çözemedim..

mozhan

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;
}

When we ride on our enemies..

https://github.com/mustafaozhan

Sh4oTT

#8
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;
}



























Reverser


XFCE ROCKS !
Powered by Thunar & XFWM4



Sh4oTT

Haha :) Onu denemek icin yazmistim sonra sildim yeni baslayanların aklı karısmasın diye de orasını silmeyi unutmusum duzelteyim :)

ShangriLa

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 gibi.
Ubuntu Mate Trusty

Sh4oTT

@ShangriLa hocam ingilizcem yok türkce kaynak varsa gosterirseniz seve seve okurum ayırıca tesekkur ederım. :)

-DıLgEş-

@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.
Aşkın; gözü kör, kulağı sağır, dili tutuk, aklı kıttır..! Hayır yani bu halde nasıl herkesi madara ediyor onu çözemedim..

Sh4oTT

@nurullahisrgan hocam şu satırı acıklayabılırmısınız?

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

-DıLgEş-

#15
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.
Aşkın; gözü kör, kulağı sağır, dili tutuk, aklı kıttır..! Hayır yani bu halde nasıl herkesi madara ediyor onu çözemedim..

Sh4oTT

@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?

-DıLgEş-

#17
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.
Aşkın; gözü kör, kulağı sağır, dili tutuk, aklı kıttır..! Hayır yani bu halde nasıl herkesi madara ediyor onu çözemedim..

Sh4oTT

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);


}

Sh4oTT

#19
// 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;

}


igmmurat

#20
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);
}
}

Reverser

@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

XFCE ROCKS !
Powered by Thunar & XFWM4



igmmurat

o son satırlardaki çizgiler nasıl çıktı ben de bilmiyorum. Pek forumlarda yazan biri değilim bundan sonra dikkat ederim...

Sh4oTT

@igmmurat 17 sene oncemı yazdınız :O Hocam baya tecrubelısınızdır o zaman C konusunda :)

-DıLgEş-

Benim paylaşımlar durdu ne yazık ki! Windows yüzünden.. Sadece D diline kodlar var elimde istek olursa aktarırırm. :)
Aşkın; gözü kör, kulağı sağır, dili tutuk, aklı kıttır..! Hayır yani bu halde nasıl herkesi madara ediyor onu çözemedim..