D.ershane D Programlama Dili Dersleri

do-while: [do-while], işlemleri en az bir kere işleten döngü
for: [for], while'ın birimlerinin hepsini aynı yerde tanımlayan deyim
while: [while], ifadeleri başka bir mantıksal ifade doğru olduğu sürece işleten kapsam
... bütün sözlük

Bölümler
İngilizce Kaynaklar
Diğer



do-while Döngüsü

for döngüsü dersinde while'ın işleyiş adımlarını da görmüştük:

hazırlık

koşul denetimi
asıl işlemler
ilerletilmesi

koşul denetimi
asıl işlemler
ilerletilmesi

...

do-while'ın while'dan farkı, koşul denetiminin sonda olması ve bu sayede işlemlerin en az bir kere işletilmeleridir:

hazırlık (while'dan daha az durumda gerekir)

asıl işlemler
ilerletilmesi
koşul denetimi

asıl işlemler
ilerletilmesi
koşul denetimi

...

Örneğin, tuttuğu sayının tahmin edilmesini bekleyen bir programda do-while döngüsü daha doğal gelebilir:

import std.stdio;
import std.random;

void main()
{
    int sayı = uniform(1, 101);

    writeln("1'den 100'e kadar bir sayı tuttum!...");

    int tahmin;

    do
    {
        write("Tahmininiz nedir? ");

        readf(" %s", &tahmin);

        if (sayı < tahmin) {
            write("tuttuğum sayı daha küçük; ");

        } else if (sayı > tahmin) {
            write("tuttuğum sayı daha büyük; ");
        }

    } while (tahmin != sayı);

    writeln("Doğru!");
}

Daha doğal gelmeyebilir de... :o) Seçim sizin...

uniform, std.random modülünde bulunan bir işlevdir. Belirtilen aralıkta eşit dağılımlı rasgele sayılar üretir. Yukarıdaki kullanımında; aralığı belirleyen ikinci değer, çıkacak sayılar arasında değildir. Diğer kullanımlarını öğrenmek için std.random modülünün belgesine bakabilirsiniz.

Problem

... çözüm