Sayfalar

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

27 Nisan 2015 Pazartesi

Örnekler


ÖRNEKLER

Armstrong SayılarıHer basamağın, sayının basamak sayısı kadar kuvvetinin alınıp toplanmaları ile elde edilen sonuç armstrong sayılarını verir.
0 dan 999 a kadar olan armstrong sayılarını bulan programı yazalım.


int sayı1, sayı2, b, o, y, s, f;
    sayı1 = 0;
    sayı2=1000;
    for (sayı1; sayı1 <= sayı2; sayı1++)
    {
        y = sayı1 / 100;
        o = sayı1 % 100;
        s = o / 10;
        b = o % 10;
        f = (y*y*y + s*s*s + b*b*b);
        if (sayı1 == f)
        {
            cout << sayı1 << endl;
        }
    }

-------------------------------------------------------------------------------------------------------
 Asal Sayılar: 1 ve kendisinden başka pozitif tam böleni olmayan sayılara denir.

int a, c, d;
    cout << "Son değeri giriniz....:";
    cin >> a;
    for (int b = 2; b < a; b++)
    {
        d = 1;
        for (int g = 2; g <= b / 2; g++)
        {
            if (b%g == 0)
                d = 0;
        }

        if (d == 1)
            cout << b << endl;

    }

-------------------------------------------------------------------------------------------------------
 Dikdörtgen çizelim.

    int x, y,a,b;
    cout << "Cizilecek dikdörtgen boyutu" << endl;;
    cin >> x >> y;
   

    for ( a = 0; a < x;a++)
    {
        for ( b = 0; b < y;b++)
        {
            cout << "#";
        }
        cout << endl;
    }



-------------------------------------------------------------------------------------------------------
Bir cümle girilsin ve içinden bir harf istensin, istenen harfin dizideki yerlerini bulan programı yazalım.

int sayac = 0;
    char d[50], a;
    setlocale(LC_ALL, "Turkish");
    cout << "Lütfen cümle giriniz....:";
    gets_s(d);
    cout << "İstenilen harfler....:";
    cin >> a;
    for (int x = 1; x < 51; x++)
    {
        if (d[x] == a)
        {
            sayac++;
            cout << "  " << x;
        }
    }
    cout << endl;
 -------------------------------------------------------------------------------------------------------
Negatif bir sayı alınıncaya kadar girilen sayılar arasındaki en büyük sayıyı bulan programı yazalım.

 int ek, eb, temp,a;
    setlocale(LC_ALL, "TURKISH");
    cout << "Değer gir" << endl;
    cin >> ek >> eb;
    while (ek>=0 && eb>=0)
    {
        if (ek <= eb)
            cin >> ek;
        else if (ek>eb)
        {
            temp = eb;
            eb = ek;
            ek = temp;
        }
       

    }
    cout << "En Büyük....:" << eb<<endl;

-------------------------------------------------------------------------------------------------------
İki diziyi çarpan ve trasnpozunu alan programı yazalım.
int i, j, diziboyutu, sayi, dizi[10][10], dizi2[10][10], sonuc[10][10] = { 0 };
    cout << "Matrisinizin boyunu giriniz....:" << endl;
    cin >> diziboyutu;
    //Dizi elemeanlarını giriyoruz.
    for (i = 0; i < diziboyutu; i++)
    {
        for (j = 0; j < diziboyutu; j++)
        {
            cin >> dizi[i][j];
        }
        cout << endl;
    }

    for (i = 0; i<diziboyutu; i++)
    {
        for (j = 0; j<diziboyutu; j++)
        {
            cout << "  " << dizi[i][j];
        }
        cout << endl;
    }
    cout << endl << endl << endl;
//Transpoz.
    for (i = 0; i<diziboyutu; i++)
    {
        for (j = 0; j<diziboyutu; j++)
        {
            cout << "  " << dizi[j][i];
        }
        cout<< endl;
    }
    cout << endl << endl << endl;
    //Matris çarpımı.
    cout << "Carpilacak diziyi giriniz...:";
    for (i = 0; i < diziboyutu; i++)
    {
        for (j = 0; j < diziboyutu; j++)
        {
            cin >> dizi2[i][j];
        }
        cout << endl;
    }
    cout << "Carpilacak diziyi giriniz...:";
    for (i = 0; i < diziboyutu; i++)
    {
        for (j = 0; j < diziboyutu; j++)
        {
            cin >> dizi[i][j];
        }
        cout << endl;
    }

    for (int i = 0; i < diziboyutu; i++)
    {
        for (int j = 0; j < diziboyutu; j++)
        {
            for (int k = 0; k < diziboyutu; k++)
            {
                sonuc[i][j] += dizi[i][k] * dizi2[k][j];
            }
            cout << endl;
        }
    }
    for (i = 0; i < diziboyutu; i++)
    {
        for (int j = 0; j < diziboyutu; j++)
        {
            cout << sonuc[i][j] << "   ";
        }
        cout <<endl;
    }
 -------------------------------------------------------------------------------------------------------
Zar atma oyunu yapalım. Bilgisayar kendisi 1000 kere zar atsın ve gelen sayıları tutsun.

 int zar()
{
    return rand () % 6 + 1;

}

 //main ekleyin
int bir=0, iki=0, uc=0, dört=0, bes=0, alti=0 ;
    for (int i = 0; i < 1000; i++)
    {
        switch (zar())
        {
        case 1: bir++; break;
        case 2: iki++; break;
        case 3: uc++; break;
        case 4: dört++; break;
        case 5: bes++; break;
        case 6: alti++; break;
        default:
            break;

        }
    }
        cout << "Bir...: " << bir << endl;
        cout << "İki...: " << iki << endl;
        cout << "Üç...: " << uc << endl;
        cout << "Dört...: " << dört << endl;
        cout << "Beş...: " << bes << endl;
        cout << "Altı...: " << alti << endl;
    
Not: rand fonksiyonu random sayılar verir ancak çalışma prensibinden dolayı her zaman aynı sayıları alırsınız. Farklı sayılar çıkması için srand(time(null)); fonksiyonunu kullanmanız lazım.


Not: Yukarıdaki bütün kodlar Visual Studio da yazılmıştır. Kodları direkt olarak kopyalayarak çalıştırabilirsiniz.

24 Nisan 2015 Cuma

Switch-case

          Swtich-case seçim aracıdır. Şöyle anlatayım; ekranda bir yazı belirdi ".... işlemini gerçekleştirmek için a'ya basınız, .... işlemi için b'ye basınız." yada ".... işlemini gerçekleştirmek için 1'e basınız, .... işlemi için 2'ye basınız." gibi bir ifade çıktı seçiminizi yaptıktan sonra bu yapımızla kolaylıkla seçme işlemini yapacağız. Kod üstünde gösterince daha rahat anlayacaksınız.

#include "iostream"
using namespace std;

int main()
{
    int a,b,c,sonuc=0;
    cout<<"1-Toplama\n2-Cikarma\n3-Carpma\n4-Bolme\n";
    cin>>a;
    if(a==1)
    {
    cout<<"Toplanacak sayilari giriniz"<<endl;
    cin>>b>>c;
    sonuc=b+c;
    cout<<"Sonucunuz...:"<<sonuc<<endl;
    }
    if(a==2)
    {
    cout<<"Cikarilacak sayilari giriniz"<<endl;
    cin>>b>>c;
   
    sonuc=b-c;
    cout<<"Sonucunuz...:"<<sonuc<<endl;
    }
    if(a==3)
    {
    cout<<"Carpilacak sayilari giriniz"<<endl;
    cin>>b>>c;
    sonuc=b*c;
    cout<<"Sonucunuz...:"<<sonuc<<endl;
    }
    if(a==4)
    {
    cout<<"Bolunecek sayilari giriniz"<<endl;
    cin>>b>>c;
    sonuc=b/c;
    cout<<"Sonucunuz...:"<<sonuc<<endl;
    }
   
    system("pause");
    return 0;
   
}
                                       

Bu kodda swtich-case çalışma mantığını analamanız için if kullandık switch-case kullanarak ise şöyle yapılır:

#include "iostream"
using namespace std;

int main()
{
    int a,b,c,sonuc=0;
    cout<<"1-Toplama\n2-Cikarma\n3-Carpma\n4-Bolme\n";
    cin>>a;
    switch(a) //Değer burada okunuyor. İlgili yere gönderiliyor.
{
    case 1: //Seçim bu ise buradaki kodu uyguluyor.
    {
    cout<<"Toplanacak sayilari giriniz"<<endl;
    cin>>b>>c;
    sonuc=b+c;
    cout<<"Sonucunuz...:"<<sonuc<<endl;
    }
    break;
    case 2:  //Seçim bu ise buradaki kodu uyguluyor.
    {
    cout<<"Cikarilacak sayilari giriniz"<<endl;
    cin>>b>>c;
   
    sonuc=b-c;
    cout<<"Sonucunuz...:"<<sonuc<<endl;
    }
    break;
    case 3:  //Seçim bu ise buradaki kodu uyguluyor.
    {
    cout<<"Carpilacak sayilari giriniz"<<endl;
    cin>>b>>c;
    sonuc=b*c;
    cout<<"Sonucunuz...:"<<sonuc<<endl;
    }
    break;
    case 4:  //Seçim bu ise buradaki kodu uyguluyor.
    {
    cout<<"Bolunecek sayilari giriniz"<<endl;
    cin>>b>>c;
    sonuc=b/c;
    cout<<"Sonucunuz...:"<<sonuc<<endl;
    }
    break;
    default:
    /* verilen değer dışında bir değer
    girilirse swtich buradaki işlemi yapar*/
    break; //En içteki fonksiyondan çıkmayı sağlar.
               //break dışında birde continue fonksiyonu var. Bu fonskiyonda devam etmeyi sağlar.
}
    system("pause");
    return 0;
   
}

 Not: Kodlar DevC++ da yazılmıştır. Kodu direkt kopyalayıp çalıştırabilirsiniz.
Basitce kullanımını görmüş olduk.