17 Ekim 2016 Pazartesi

While döngüsü

While döngüsü koşul sağlandığı sürece çalışır.

while(koşul){yapılacaklar}
eğer koşul sürekli sağlanırsa sonsuz bir döngü oluşur. Örnek verecek olursak:
int sayi=1;
while(sayi<10){
System.out.println("Sayı değeri:"+sayi);
sayi--;
}

Burda sayi değeri 1 den başlayacak ve sayi-- ile her defasında 1 eksilerek devam edecek ve koşul sürekli sağlanarak sonsuz bir döngüye girmiş olacağız. Çünkü sayi değeri 1,0,-1,-2 ... -sonsuza doğru devam edecek ve sayi sürekli 10dan küçük olacağı için döngü sonsuz döngüye girecektir.

Aşağıdaki örnekte sayi 1 den başlayıp her defasında sayi++ komutu ile 1 artırılacak sayi=10 olduğunda 10<10 koşulu yanlış olacağından döngüden çıkacaktır.

package dersler;
public class Dersler {
    public static void main(String[] args) {
        int sayi=1;
        while(sayi<10){
        System.out.println("Sayı değeri:"+sayi);
        sayi++;
        }
        }
       
    }

Program Çıktısı:

while döngüsünü en çok kullandığım alanlardan birisi de kullanıcı istediğim aralıklar dışında yanlış bir veri girdiğinde verinin tekrar istenmesi. Şöyle ki kullanıcıdan 1 ile 50 arasında bir sayı girmesini isteyelim. while ile sayıyı kontrol edelim eğer sayı 1 ile 50 arasında değilse tekrar soralım. Kullanıcı 5 defa da yanlış girse her defasında soracaktır. 

package dersler;
import java.util.Scanner;
public class Dersler {
    public static void main(String[] args) {
        Scanner giris=new Scanner(System.in);
        int sayi;
        System.out.println("Lütfen 1 ile 50 arasında bir sayı giriniz:");
        sayi=giris.nextInt();
        while(sayi<1||sayi>50){
        System.out.println("Yanlış giriş yaptınız!");
        System.out.println("Lütfen 1 ile 50 arasında bir sayı giriniz:");
        sayi=giris.nextInt();
        }
        }
        
    }

Program Çıktısı:

1 yorum:

  1. hocam 1 den 100 e kadar sayıların karesini toplayan java programını yazdım ama toplyamadım hepsini tek seferde

    YanıtlaSil