C Do While

0 296

Döngüler, programlamada belli bir kodu yada kod bloğunu birden fazla kez tekrarlamak için kullanılır. Bu makalemizde Do While döngüsünü beraber inceleyeceğiz. Do While’in yanı sıra yalnızca Whilenin de kullanıldığı durumlar vardır. Yani ikisi arasında pek bir fark yoksa da bazı durumlarda bir diğerine ihtiyaç duyulabiliyor.

While Döngüsü

while (testExpression) 
{
    //kodlar
}

While Döngüsü Nasıl Çalışır?

While Döngüsü öncelikle test ifadesini kontrol eder eğer ifade doğruysa (sıfır değil), döngü gövdesinde ki kodlar çalışır ve ardından tekrar test ifadesi kontrol edilir. Bu işlem ifade yanlış (sıfır) olana kadar devam eder. Bu döngüde test ifadesi gövdedeki kodlardan önce olduğu için gövdedeki kodlar hiç çalışmadan da döngü sonlanabilir.

While Döngüsü Akış Şeması

Örnek 1: While Döngüsü

#include <stdio.h>
int main()
{
    int number;
    long long factorial;

    printf("Bir tamsayı girin: ");
    scanf("%d",&number);

    factorial = 1;

    // Döngü, sayı 0'dan küçük veya ona eşit olduğunda sona erer. Sayı 0'dan büyükse çalışır.
    while (number > 0)
    {
        factorial *= number;  // factorial = factorial*number;
        --number;
    }

    printf("Faktöriyel = %lld", factorial);

    return 0;
}

Çıktısı :

Bir tamsayı girin: u
Faktöriyel = 720

Do While Döngüsü

Do…While Döngüsü, While döngüsü ile neredeyse bire bir aynı aradaki tek fark Do While Döngüsünde test ifadesi kontrol edilmeden önce gövdede ki kodlar birkez çalışır. Yani bu döngü en az bir kez çalışmak zorundadır.

do
{
   // kodlar
}
while (testExpression);

Do While Döngüsü Nasıl Çalışır?

Öncelikle döngünün gövdesinde ki kod bir kez çalışır ve ardından test ifadesi kontrol edilir. Test ifadesi doğruysa, döngünün gövdesinde ki kodlar tekrar çalışır. Bu döngü test ifadesi yanlış (sıfır) olana kadar devam eder. While’nin aksine bu döngüde gövde kodları test ifadesinden önce gelmektedir. Durum böyle olunca gövde her türlü çalışmak zorundadır yani en az bir kez çalışacaktır.

Do While Döngüsünün Akış Şeması

Örnek 2 : Do While Döngüsü

#include <stdio.h>
int main()
{
    double number, sum = 0;

    // döngü gövdesi en az bir kez yürütülür
    do
    {
        printf("bir sayı giriniz: ");
        scanf("%lf", &number);
        sum += number;
    }
    while(number != 0.0);

    printf("Toplam = %.2lf",sum);

    return 0;
}

Çıktısı :

bir sayı giriniz: 2.6
bir sayı giriniz: 3.9
bir sayı giriniz: -2.5
bir sayı giriniz: 6.1
bir sayı giriniz: 0
Toplam = 10.1

Cevap bırakın

E-posta hesabınız yayımlanmayacak.