Sayfalar

rand etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
rand 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.