Quick-Basic Kursu
Bölüm 5: Döngüler
Tekrar edilen işlemler için döngüler kullanılır. Böylece bilgisayarın sürekli yapacağı işlemler için aynı komutları bir daha yazmak zorunda kalmayız.
GOTO döngüsü
En basit döngü GOTO ile yapılan döngüdür.
basla: A = A + 1 PRINT A GOTO basla
Yukarıdaki program bir sonsuz döngü oluşturur. Durdurmak için CTRL-PAUSE tuşlarına basınız. Aşağıdaki şekilde değişiklik yaparsak döngüyü kontrol altına almış oluruz.
basla: A = A + 1 IF A>20 THEN END PRINT A GOTO basla
PROBLEM 1 : 1 den 30 a kadar olan çift sayıların karelerini ekrana yazan bir program yazın.
FOR … NEXT döngüsü
Belirli sayılarda işlemlerin tekrar etmesi için kullanılır.
FOR N = 1 TO 25 PRINT N NEXT N
1 den 25 e kadar olan sayıları yazacaktır. Her döngüde N değişkeninin değeri 1 artacaktır. Eğer ilk satırı
FOR N = 1 TO 25 STEP 4
yapacak olursak. N nin ilk değeri 1 olacak sonra her seferinde üzerine 4 eklenerek devam edecektir.
FOR N = 25 TO 1 STEP -1
yazılacak olursa 25 den 1 e doğru N nin değeri her seferinde 1 azaltılır.
NEXT in arkasına değişkeni yazmak şart değildir ama okunurluğu kolaylaştırmak için yazmakta fayda vardır.
FOR ları içi içe koyarak da kullanılabilir. İçerdeki FOR un NEXT i dışarıdakinin NEXT inden sonra gelmemesine dikkat etmelisiniz.
FOR N = 1 TO 10 FOR M = 1 TO 4 PRINT N * M , NEXT M PRINT NEXT N
FOR döngüsünden çıkma gereği olursa EXIT FOR ile çıkılabilir.
PROBLEM 2 : Problem 1 i FOR..NEXT döngüsüyle yapın
DO … LOOP döngüsü
DO PRINT A A = A +1 LOOP
Bu da sonsuz döngü oluşturacaktır. Döngüyü kırmak, kontrol altına almak için çeşitli yollar var
EXIT DO ile döngüden çıkmak:
DO IF A > 40 THEN EXIT DO PRINT A A = A +1 LOOP
WHILE kullanarak döngüyü kontrol altına almak:
'1 . program CLS DO WHILE A < 40 ' A, 40 dan küçükİKEN döngüye devam PRINT A A = A + 1 LOOP
'2 . program CLS DO PRINT A A = A + 1 LOOP WHILE A < 40 ' A, 40 dan küçükİKEN döngüye devam
Yukarıdaki iki programı denediğinizde hiçbir fark göremeyeceksiniz. Şimdi ilk satırlarına A = 45 komutunu ekleyip deneyin ve farkı anlamaya çalışın. Eğer WHILE ı LOOP un yanına koyarsak döngüde şart aranmaksızın en az 1 kere döner. DO nun yanına konulursa döngü başlamadan şart kontrol edilir, şart uygun değilse döngü gerçekleşmez..
UNTIL kullanarak döngüyü kontrol altına almak:
CLS DO UNTIL A > 40 ' şart DOĞRU olanA KADAR dön. A , 40 dan büyük olana kadar devam PRINT A A = A +1 LOOP
WHILE için verdiğim açıklamalar bunda da geçerli UNTIL i DO nun yanına yada LOOP un yanına koyabiliriz.
Kısaca WHILE, şartın DOĞRU olmasında; UNTIL, şartın YANLIŞ olmasında döngüye devam eder.
PROBLEM 3: Problem 1 i DO..LOOP döngüsüyle yapın
WHILE … WEND döngüsü
CLS WHILE A < 40 ' A , dan küçük İKEN devam A = A + 2 PRINT A WEND
WHILE…WEND, DO…LOOP un bir alternatifidir. Ama DO LOOP kadar kullanışlı değildir. Çünkü DO LOOP da karşılaştırma şartını başta veya sonda verebiliyoruz.
PROBLEM 4: Problem 1 i WHILE..WEND döngüsüyle yapın