Döngüler ve Karar Yapıları



Benzer belgeler
Yukardaki gibi sonsuz döngülü programlara Ctrl+Break tuş takımı ile müdahale edilmesi gerekir, aksi halde program sonsuz döngüye girer.

Genel Kullanılış 1: [değişken ismi] = [değişken ismi] [işlem] [sayı veya string ifade veya değişken]

Bilgisayar Programlama MATLAB

Matematiksel Operatörler

5. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ.

Her Select Case bloğu, mutlaka End Select ile bitmek zorundadır.

a,b başlangıç değerlerini 0 kabul et a sayısını verin b sayısını verin hayır hayır b< a? evet a=b a değerini ekrana yaz

UYGULAMALAR -2 Select case Yapısı: Select Case case case case case case is case Else End Select Örnek:

Uygulama 1) Aşağıdaki genel (global) değişken tanımlamalarını VB üzerinde yapınız. Süre 10 dak.

Akış Kontrol Mekanizmaları

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

Uygulama 1) Sabit olarak belirlenen sayıda tekrar eden (5 kez) Visual Basic kaynak kodlarını yazınız.

GÜZ YY. - MKT103 - GÖRSEL PROGRAMLAMA DERSİ - ARA SINAVI

4- Turbo Pascal Bilgisayar Programlamada Kullanılan Şart Yapıları

MT 373 Visual Basic Programlama Dersi

Windows Nasıl Çalışır? Pencereler (window), Hareketler (event) ve Mesajlar (message)

KONTROL YAPILARI (CONTROL STRUCTURES)

Uygulamalar 4 IsMissing Fonksiyonlar ve Alt Programlar Prosedür Parametreleri Public Function f(x,y,optional t, Optional k) End Function 1.

Bu uygulama, MSGBOX fonksiyonun ve Form nesnesinin QueryUnload olayının kullanımı ile ilgili bir uygulamadır.

ÜNİT E ÜNİTE KONTROL DEYİMLERİ KARAR YAPILARI. IF Deyimi GİRİŞ

1. PL/SQL de kontrol yapıları

Diziler İndisli Değişkenler

İŞLEM SAYISI BELLİ OLAN DÖNGÜLER

TAM SAYILARLA İŞLEMLER

PROGRAMLAMAYA GİRİŞ VE PROGRAM GELİŞTİRME

BİLGİSAYAR PROGRAMLAMA DERSİ

UYGULAMALAR. İkinci liste kutusu (List 2) Birinci liste Kutusu (List 1) Metin Kutusu

JAVA DÖNGÜ DEYİMLERİ. For Döngüsü

Bilgisayar Programlama

BİLGİSAYAR PROGRAMLAMA DERSİ

Programlama. Program, belli bir komut ve söz dizimi yapısına uygun olarak, sadece belirtilen işlemlerin yerine getirmesini belirten komut dizisidir.

if (ad == "Sabri") Console.WriteLine("Merhaba Sabri. Ne zamandır gözükmüyodun...");

-A Grubu- MKT103 Görsel Programlama 2015/2016 Güz Dönemi Final Sınavı

t sayı tabanı ve üzere, A (abcde) sayısının basamakları: ( 2013) sayısını çözümleyelim. A (abcde) sayısının, ( 30214) sayısını çözümleyelim.

MİKRO PROGRAMININ GÜNCELLENMESİ

ORACLE DA KÜRSÖRLER. Gerekli sistem değişkenleri

Okunabilir Kod Yazım Standartları: Şiir Gibi Kod Yazmak

C# Programlama Dili. İlk programımız Tür dönüşümü Yorum ekleme Operatörler

Algoritma ve Programlamaya Giriş

PROGRAMLAMA TEMELLERİ DERSİ

TEMEL BİLGİSAYAR BİLİMLERİ

BÖLÜM 4 KONTROL DEYİMLERİ

BİLGİSAYAR PROGRAMLAMAYA GİRİŞ

ALGORİTMA İ VE PROGRAMLAMA

Program Kodlamaya Geçiş

KTO KARATAY ÜNİVERSİTESİ Temel Bilgisayar 2. Hazırlayan : Erdem YAVUZ

SAB104 Bilgisayar Programlama

INPUTBOX() ile Veri Girişi

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK

İnternet Programcılığı Dersi 2.Dönem Ders Notu

INPUTBOX KULLANIMI. Komut Düğmesine uygulanan algoritma örneği

OPTION BUTTON ve ELSEIF UYGULAMALARI

k ise bir gerçek sayı olsun. Buna göre aşağıdaki işlemler Matlab da yapılabilir.

ALGORİTMA VE PROGRAMLAMA I

How to ASP Language. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU. 29 Eki. 1 Kas. 2013

AOSB 2017 EĞİTİM PROGRAMI

Ders: Konu: TEOG. Yaprak No: Copyright: MİKRO ANLATIM. Kazanım: Üslü sayılar ile ilgili kuralları hatırlar.

Javascript. 1) Notepad++ aşağıdaki kodları yazıp deneme.html olarak kaydedelim. 2) Biraz önceki sayfa sadece html kodların içeriyordu.

C Dersleri Bölüm 3 : Program akışı

Döngü (Loop) Deyimleri / Veri Belirleyicileri / Matematiksel Fonksiyonlar

Döngü yapıları, (for, do while, while),

BİLGİSAYAR MİMARİSİ. Mimariye Giriş. Özer Çelik Matematik-Bilgisayar Bölümü


İNTERNET PROGRAMCILIĞI DERSİ ÇALIŞMA SORULARI

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 2

PASCAL PROGRAMLAMA DİLİ YAPISI

idea rsbasic KOMUTLARI

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 8

Fortran da kullanılan giriş çıkış komutları PRINT, WRITE ve READ dir.

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Timer İle arka plan renk değişimi

BLGM BÖLÜM. Problem Çözme Kavramları (Algoritma ve Akış Şemaları)

Onlu Sayılandırmadan Dönüştürme

Internet Programming I. Hafta III. Elbistan Meslek Yüksek Okulu Güz Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU

Internet Programming II

ALGORİTMA VE PROGRAMLAMA I

How to ASP Language. Elbistan Meslek Yüksek Okulu Güz Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU. Hafta V

Algoritmalar ve Programlama. Algoritma

disp VEYA fprintf KOMUTLARIYLA EKRANA MESAJ YAZDIRMA

PROGRAMLAMA TEMELLERİ-ÜNİTE 2 SAYI SİSTEMLERİ, OPERATÖRLER VE İŞLEMLER

PROGRAMLAMA DİLLERİ I

b Üslü Sayılara Giriş b İşlem Önceliği b Ortak Çarpan Parantezine Alma ve Dağılma Özelliği b Doğal Sayı Problemleri b Çarpanlar ve Katlar - Kalansız

OMÜ HAVACILIK VE UZAY BİLİMLERİ FAKÜLTESİ METEOROLOJİ MÜHENDİSLİĞİ BÖLÜMÜ MET103 BİLGİSAYAR PROGRAMLAMA I BÜTÜNLEME SINAVI

for döngüsü while döngüsü Döngüler MATLAB

KONTROL YAPILARI JAVADA UC TURLU KONTROL YAPISI VARDIR BUNLAR İF ELSE İF ELSE İF SWİTCH YAPILARIDIR. IF ELSE YAPISI if (deger) { }else {

MTK467 Nesneye Yönelik Programlama. Hafta 4 - Döngüler Zümra Kavafoğlu

Window Script Host. Message Box Kullanımı. Pupup(Acilir)Message Kullanımı. Arslan ACAR

TOPLAMADA KISAYOLLAR

ALGORİTMALAR. Turbo C Bilgisayarda Problem Çözme Adımları. Bilgisayarda Problem Çözme Adımları.

UZAKTAN EĞİTİM SİSTEMİNDE ONLINE SINAVA KATILMAK İÇİN YAPILMASI GEREKENLER

Toplama işlemi için bir ikili operatör olan artı işareti aynı zamanda tekli operatör olarak da kullanılabilir.

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 5. Bölüm Karar ve Çevrim Kontrol Yapıları

Karabük Üniversitesi, Mühendislik Fakültesi... WEB TEKNOLOJİLERİ

BİLGİSAYAR BİLİMİ DERSİ (KUR 1) PYTHON PROGRAMLAMA DİLİ ÇALIŞMA KÂĞIDI - 1

Visual Basic Uygulamaları-4. Dİ Zİ LER (ARRAYS) ve Nesne Kü meleri

matematik sayısal akıl yürütme mantıksal akıl yürütme

SAYILAR TEORİSİ - PROBLEMLER

ÜNİT E ÜNİTE GİRİŞ. Algoritma Mantığı. Algoritma Özellikleri PROGRAMLAMA TEMELLERİ ÜNİTE 3 ALGORİTMA

De iflken = InputBox Görüntülenecek Metin Bafllık. InputBox tan gelecek cevap, bir de iflkene aktarılmalıdır. End Sub B R SAYI TUT

BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ

Transkript:

Döngüler ve Karar Yapıları Karşılaştırma İşaretleri ve Matematiksel İşaretler Visual Basic te karşılaştırma işaretleri iki ifadeyi büyüklük, küçüklük veya eşitlik gibi kriterlerde karşılaştırmayı sağlar. İşaret Anlamı = Eşit <> Eşit Değil > Büyük < Küçük >= Büyük veya Eşit <= Küçük veya Eşit Bu işaretlerle karşılaştırılacak değişkenlerin sonucu karar yapılarında kullanılacaktır. Örneğin programda, Tutar değişkeninin içeriği Para değişkeninin içerdiğinden büyük ise Paranız yetmedi şeklinde mesaj vermek için karar yapılarıyla karşılaştırma ifadelerini kullanmamız gerekilidir. Karşılaştırma işaretlerinin kullanımını örnekleyelim: A=B A<>B A>B A<B A>=B A<=B * A değişkeninin içeriği B değişkeninin içeriğine eşit * A değişkeninin içeriği B değişkeninin içeriğine eşit değildir. * A değişkeninin içeriği B değişkeninin içeriğinden büyük * A değişkeninin içeriği B değişkeninin içeriğinden küçük * A değişkeninin içeriği B değişkeninin içeriğinden büyük ya da eşit * A değişkeninin içeriği B değişkeninin içeriğinden küçük ya da eşit Matematiksel işaretler ise, sayılar veya sayı türünde veri bulunduran değişkenler arasında matematiksel işlem yapılmasını sağlar. İşaret Anlamı + Toplama - Çıkarma / Bölme * Çarpma ^ Üst Alma Birden fazla matematiksel işlemler hesaplanırken işlem sırasına tabi tutulur. Önce parantez içlerindeki ifadeler, üstlü ifadeler, çarpa ve bölme daha sonra çıkarma ve toplama işlemleri gerçekleştirilir. Örneğin; Dim A As Currency A=(3535^2)/(54*321+5) Şeklindeki matematiksel ifade önce 3532 sayısının karesi alınır daha sonra 54 ile 321 çarpılarak 5 ile toplanır ve 3535 sayısının karesine bölünür. İşlem sırası düşünülmeden yazılan denklem ya da işlemlerde, işlem sırası sonuca etki edeceğinden hata oranı yüksek olur.

If-Then-Else Karar Yapısı ve Kullanımı Bir koşul verilerek bu koşulun doğru olması ya da olmaması halinde işlem yapmak için bu yapı kullanılır. Çeşitli kullanım seçenekleri vardır. If koşul Then End If Örnek: Koşul sağlandığında işlenecek komutlar If a>=b Then End If MsgBox A sayısı b sayısından büyüktür veya eşittir. Bu kod satırlarıyla, eğer A sayısı B sayısında büyükse veya eşitse A sayısı b sayısından büyüktür veya eşittir. şeklinde bir mesaj gösterimi sağlanmaktadır. If koşul Then End If Örnek: Koşul sağlandığında işlenecek komutlar Else Koşul sağlanmadığında işlenecek komutlar If a<5 Then MsgBox A sayısı 5 ten küçüktür. Else MsgBox A sayısı 5 ten büyüktür. End If Bu kod parçasıyla a sayısı 5 ten küçükse A sayısı 5 ten küçüktür., değilse A sayısı 5 ten büyüktür. mesajı verilecektir. If yapısında gerçekleşecek komut örneklerdeki gibi tek satır ise, End If ibaresinin yazımına gerek yoktur ve komutlar Then ibaresinden sonra yazılır. If a<5 Then MsgBox A sayısı 5 ten küçüktür. Else Msgbox A sayısı 5 ten büyüktür. If Koşul1 Then

Koşul1 in sağlandığında işlenecek komutlar Else If Koşul2 Then Koşul2 nin sağlandığında işlenecek komutlar Else If Koşul3 Then Else End If Koşul3 ün sağlandığında işlenecek komutlar Bu koşulların sağlanmadığında işlenecek komutlar Bu yapıda Koşul1 kontrol edilir, koşul sağlanıyorsa altındaki komutlar işlenir ve if yapısından çıkılır. Koşul sağlanmıyorsa Koşul2 kontrol edilir, sağlanıyorsa Koşul2 deki komutlar işlenir ve if yapısından çıkılır. Sağlanmıyorsa bir sonraki koşula geçer ve bu işlemler yine yapılır. Tüm şartlar sağlanmadığı takdirde eğer varsa Else ibaresinden sonraki komutlar çalıştırılır ve karar yapısından çıkılır.

Mantıksal Operatörler Mantıksal operatörler, programlama dillerinde karar yapılarında birden fazla koşul gerektiğinde kullanılır. Başka bir deyişle birden fazla koşulun birbirine başlanmasını sağlarlar. Bu operatörlerden kullanacaklarımız: * AND * OR * XOR * EQV olmak üzere 4 tanedir. Örnekleri inceleyelim. If a= 5 And b= 8 Then MsgBox a sayısı 5 e eşittir, b sayısı 8 e eşittir. Bu komut satırıyla, a değişkeninin içeriğinin 5 ve b içeriğinin içeriği 8 olduğunda a sayısı 5 e eşittir, b sayısı 8 e eşittir. şeklinde mesaj verilmesi sağlanır. If a= 5 Or b= 8 Then MsgBox a sayısı 5 e eşit veya b sayısı 8 e eşittir. Bu komut, a değişkeni 5 veya b değişkeni 8 olduğunda ilgili mesajı verecektir. If a= 5 XOR b= 8 Then MsgBox a sayısı 5 e eşittir veya b sayısı 8 e eşittir. XOR operatörü OR operatörü görevini görmektedir. Tek farkı, verilen ifadelerin tümü doğruysa komut satırı çalışmaz. Yani bu örnekte a= 5 ve b= 8 olursa mesaj gösterilmeyecektir. Aynı şekilde, Or operatörü gibi iki ibareden biri doğru olduğunda da çalışacaktır. If a= 5 EQV b=8 Then MsgBox a sayısı 5 e, b sayısı 8 e eşittir ya da a sayısı 5 e eşit değildir ve b sayısı da 8 e eşit değildir. Biraz karmaşık gibi görünen EQV operatörü, verilen ifadelerden hepsi doğru ya da hepsi yanlış olduğunda denklemi True olarak döndürür ve if yapısı içerisindeki komutlar çalışır. Örnekte a= 5 ve b= 8 ya da a değişkeni 5 ten farklı, b değişkeni 8 den farklı olduğunda mesaj verecektir. If yapısı verilen koşul veya koşulların sağlanması halinde çalışır. Koşul sağlandığında if yapısına true değerini döndürür. Eğer koşul sağlanmazsa bu dönen değer False olacaktır. If yapısı bu dönen değere göre işlem görür.

Select Case Karar Yapısı Bu karar yapısı, bir değişkenin alabileceği değerlere göre işlenecek komutları uygular. If yapısından farklı olarak bu yapı içerisinde birden fazla durumu kontrol edebilme olanağı vardır. Select Case Değişken Case İçerik1 Değişkenin içeriği İçerik1 ise işlenecek komutlar Case İçerik2 Değişkenin içeriği İçerik2 ise işlenecek komutlar Case İçerik3 Değişkenin içeriği İçerik3 ise işlenecek komutlar Case İçerik4 Değişkenin içeriği İçerik4 ise işlenecek komutlar End Select Select Case yapısı görüldüğü gibi, Select Case ve End Select komut satırlarından ve bu satırların arasında bulunan Case ifadelerinden oluşur. Select Case satırında belirtilen değişken Case ile belirtilen içeriği aldığında ilgili komutlar işlenir ve Select Case yapısı terk edilir. Select Case yapısında belirtilen değişken, case ile belirlenen içeriklere eşit olmadığında bir takım komut satırları işlenmek istenirse Case Else ifadesi kullanılır. Select Case Değişken Case İçerik1 Değişkenin içeriği İçerik1 ise işlenecek komutlar Case İçerik2 Değişkenin içeriği İçerik2 ise işlenecek komutlar Case İçerik3 Değişkenin içeriği İçerik3 ise işlenecek komutlar Case Else Değişkenin içeriği yukarıdaki tüm içeriklere eşit değilse işlenecek komutlar End Select Eğer içerik sağlandığında yapılacak işlem bir satırsa case ifadesinin altına yazılması gerekmez, case ile aynı satırda yazılabilir. Select Case Değişken Case İçerik1:Değişkenin içeriği İçerik1 ise işlenecek komutlar Case İçerik2:Değişkenin içeriği İçerik2 ise işlenecek komutlar Case İçerik3:Değişkenin içeriği İçerik3 ise işlenecek komutlar

End Selct Case İçerik4:Değişkenin içeriği İçerik4 ise işlenecek komutlar Case Else: Değişkenin içeriği yukarıdaki tüm içeriklere eşit değilse işlenecek komutlar Case satırında birden fazla değişken içeriği aralarına virgül konularak yazılabilir. Böyle bir durumda bu satırda bulunan içeriklerden biri sağlandığında ilgili komutlar çalışır. Select Case Değişken Case İçerik1, İçerik2: Değişkenin içeriği İçerik1 veya İçerik2 ise işlenecek komut Case İçerik3, İçerik4, İçerik5:Değişkenin içeriği İçerik3, İçerik4 veya İçerik5 ise işlenecek komutlar Case Else: Değişkenin içeriği yukarıdaki tüm içeriklere eşit değilse işlenecek komut End select Case ifadesi ile direkt olarak içerik yazılabildiği gibi belirli sınırlarda ya da büyüklük küçüklük gibi kıstaslardan oluşan koşullarda verilebilir. Select Case Değişken Case İçerik1 To İçerik2: Değişkenin içeriği İçerik1 ile İçerik2 arasında ise işlenecek komut Case is < İçerik4: Değişkenin içeriği İçerik4 ten küçük ise işlenecek komut Case is >İçerik5: Değişkenin içeriği İçerik5 ten büyük ise işlenecek komut Case Else : Değişkenin içeriği yukarıdaki tüm içeriklere eşit değilse işlenecek komut End Select

For-Next Döngüsü Bazen program yazımında bir komutu ya da komut grubunu bir çok defa çalıştırmak gerekir. Bu işlemler için döngüler kullanılır. For sayaç değişkeni = başlangıç değeri To bitiş değeri İşenecek komutlar Next değişken For döngüsü, belirleyeceğiniz sayaç değişkeninin başlangıç değerinden başlar bitiş değerine kadar komutları çalıştırır. Sayaç değişkenine ilk olarak başlangıç değişkeni nin içeriği atanır ve komutlar bir kez çalıştırılıp for döngüsünün başına dönülür. Sayaç değişkeni 1 arttırılır ve komutalar yeniden çalıştırılır. Başa dönülür sayaç değişkeni yine 1 arttırılır ve komutlar yine işlenir. Bu döngü, sayaç değişkeni Bitiş Değeri ne eşit oluncaya kadar devam eder. For i =1 to 100 Print Merhaba Next i Bu örnekte sayaç değişkeni i, başlangıç değeri 1, bitiş değeri ise 100 olarak belirlenmiştir. Döngü içerisine Print Merhaba ifadesi eklenmiştir. Bu döngü ile formun üzerine 100 kere Merhaba yazılması sağlanır. Mantığı inceleyecek olursak; i sayaç değişkenimiz, 1 değerini alacak ve merhaba yazılacak, tekrar başa dönülecek. i sayaç değişkenimiz 2 değerini alacak ve yine merhaba yazacak. i değişkenimiz en son 100 değerini alıp merhaba yazdırıldıktan sonra döngü terk edilecektir. For döngüsündeki sayaç değişkenimiz daima 1 artarak tekrar eder. Bu artış miktarını Step ifadesiyle kontrol edebiliriz. For sayaç değişkeni= başlangıç değeri To bitiş değeri Step artış miktarı İşlenecek komutlar Next değişken For döngüsünde sayaç değişkenimize her tekrarda Step ifadesiyle vereceğimiz artış miktarı eklenecek ve bitiş değerine ulaşınca döngü son bulacaktır. For i =1 to 100 Step 5 Next i Print merhaba Bu döngüyle forma 20 defa merhaba yazılır.

Sayaç değişkeni her zaman artmak zorunda değildir. Step ifadesiyla sayacımızı her seferinde azaltabiliriz. For i = 100 to 1 Step -5 Next i Print merhaba Print i Bu döngüde sayacımız 100 den başlayarak 1 e kadar 5 er 5 er düşecek ve bitiş değeri olan 1 e ulaşınca döngü son bulacak. Forma 20 kez merhaba ve değişkenin o anki değerini yazacaktır. Dikkat edilecek nokta geri sayımlarda step ifadesinde negatif sayı kullanılmaktır. Buna ilave olarak başlangıç değeri bitiş değerinden büyük olmalıdır. For döngüsünden döngü bitmeden çıkmak için Exit for deyimi kullanılır. Bu deyim işlendiği an döngü terk edilir. For i = 100 to 1 Step -5 Next i Print merhaba Print i Exit for Bu örnekte forma merhaba ve i değişkeninin içeriği yazdırılır ve exit for deyimi sayesinde döngü terk edilir.

Do Loop Döngüsü Do-Loop şartlı döngüdür. Şart sağlanıncaya kadar ya da şart sağlandığında çalışacak bir döngüdür. Başka bir deyişle Do-Loop yapısında koşul belirtilmelidir. Koşullar, While (olduğunda) veya Until (olana kadar) ifadeleriyle belirtilir. Amaca göre 4 farklı kullanım tarzı vardır. Do While koşul Loop Koşul sağlandığında işlenecek komutlar Bu yapıda koşul sağlandığında ilgili komutlar döngüye girer. Koşul sağlandığı sürece döngü devam eder. Koşul sağlanmadığında döngü terk edilir. Dim a As Integer a = 10 Do While a<100 Loop a=a+1 Print a Bu örnekte a adına integer tipinde bir değişken tanımlanıyor ve 10 değeri atanıyor. Do-Loop döngüsüyle a değişkeninin içeriği 100 den küçük olduğu sürece a değişkeni 1 arttırılıyor ve forma o anki içeriği yazdırılıyor. a değişkeni 100 e eşit veya 100 den büyük olduğunda döngü son buluyor. Bu kodda geçen a = a+1 ifadesiyle for yapısındaki gibi döngünün her tekrarında artan bir sayaç değişkeni meydana getirmiş olduk. Do Until koşul Loop Koşul sağlanana kadar işlenecek komutlar Until ifadesiyle bu döngü koşul sağlanana kadar devam edecektir. Koşul sağlandığında döngü terk edilir. Dim a As Integer a=120 Do Until a<100 a=a-1 Print a Loop

Bu kodla a adında bir değişken tanımlanıp 120 değeri atanıyor. Daha sonra döngüye giriliyor ve her defasında a değişkeninin değeri 1 eksiltilip forma yazılıyor. Bu işlem a değişkeni 100 den küçük olana kadar devam edilip döngüden çıkılıyor. Do Koşul sağlandığında işlenecek komutlar Loop While koşul Bu döngüyle koşul sağlandığında ilgili komutlar işlenir. Bu döngüde farklı olan, While ifadesiyle belirtilen koşulun Loop deyiminde yer almasıdır. Yani koşul, döngünün başında değil sonunda kontrol edilir. Böylece kodlar en az bir defa çalışır. Dim a As Integer a = 10 Do a = a+1 Print a Loop While a>100 Bu döngüde, a değişkeninin içeriği 100 den büyük olduğu sürece devam etmesi amaçlanmıştır. Fakat a değişkeni 10 olduğundan döngü bir defa çalışır ve koşul satırında a değişkeninin foyası ortaya çıkar. Döngü terk edilir. Do Koşul sağlanana kadar işlenecek komutlar Loop Until koşul Bu döngüyle koşul sağlanıncaya kadar ilgili komutlar işlenir. Kontrol satırı komutlardan sonra olduğundan komutlar en az bir kere çalışır. Dim a As Integer a=120 Do a = a-1 Print a Loop Until a>100 Bu örnekte a değişkeni 100 den büyük olana kadar 1 eksilmesi ve içeriğin forma yazılması amaçlanmıştır. Fakat a değişkeni 120 olduğundan komutlar bir kez işlenir ve kontrol satırından sonra döngü terk edilir.

UYGULAMALAR 1) Bir ilkokul öğrencisi, programımıza ilk dönem karnesindeki matematik dersinin notunu girsin. Biz ise aldığı nota göre onu uyaralım veya tebrik edelim. Bu programda ilk olarak öğrencinin notunu girmesi gerekmektedir. Daha sonra bu notun If karar yapısıyla ele alınıp sonucun öğrenciye verilmesi gerekir. Kullanıcıdan bilgi girişi için InputBox komutu kullanılır. Bu komut ileriki bölümlerde ayrıntıyla işlenecektir. Şimdi sadece işimize yarayacak şekliyle kullanımını görelim. Dim Cevap As String Cevap= InputBox ( Adınız Nedir? ) Bu satırlar ile kullanıcının karşısına Adınız nedir? şeklinde soru soran bir kutucuk çıkar ve bu kutucukta cevabın yazılabileceği bir alan bulunur. Kullanıcı cevabı yazıp Tamam tuşuna bastığında bu alana yazılan metin veya sayı Cevap değişkenine aktarılır. InputBox komutu mutlaka bir değişkene aktarılmalıdır. Aksi takdirde kullanım doğru olmaz ve hatayla karşılaşırsınız. Yeni bir proje açın. Formun Load olayına aşağıdaki kodları yazın. Private Sub Form_Load() Dim Matematik As Integer Matematik= InputBox( Matematik dersinizin notunu girin ) If matematik < 0 Then MsgBox "Yanlış not girişi" ElseIf matematik > 5 Then MsgBox "Yalancı" ElseIf matematik = 1 Then MsgBox "Hiç yakıştıramadım." ElseIf matematik = 2 Then MsgBox "Paçayı zor yırtmışsın" ElseIf matematik = 3 Then MsgBox "Daha az çizgifilm izlemelisin" ElseIf matematik = 4 Then MsgBox "iyi bir not almışsın ama yeterli değil" ElseIf matematik = 5 Then MsgBox "notuna güvenip 2.dönem çalışmayı bırakma" End If End Sub

2) Ekrandan, InputBox ile programı çalıştırmak için 100 sayısının girilmesini isteyen bir program yazalım. Yeni bir proje açın. Formun Load olayına aşağıdaki kodları girin ve programı çalıştırın. Private Sub Form_Load() Do a = InputBox("100 yazdığınızda program başlayacak") If a <> 100 Then MsgBox "Programı çalıştırma için 100 yazmalıydınız" Loop Until a = 100 End Sub

3) For Next dögüsüne örnek. Form üzerine bir komut butonu yerleştiriniz. Komut butonunun Caption özelliğini TOPLAM yapınız. Komut butonunun kod penceresine aşağıdaki kodu giriniz: Private Sub Command1_Click() n= Val(InputBox( sayı miktarı )) s=0 For i=1 To n sayi=val(inputbox(str(i) + nci sayıyı giriniz )) s= s + sayi Next i MsgBox Str(s),, GENEL TOPLAM End Sub Run/Start ı seçiniz. TOPLAM adlı komut butonunu tıklatınız. Aşağıdaki pencere gelecektir:

Burada sayı miktarını 3 olarak girerek OK butonunu seçiniz. Daha sonra gelen ekranlarda sırası ile 30, 20, 300 sayılarını giriniz. Program sonuçta aşağıdaki gibi, bu sayıların toplamını bulacak ve listeleyecektir. Anlaşıldığı gibi bu program, bilgisayara önceden miktarı bildirilen sayıları tek tek isteyerek bunların toplamını hesaplayan bir programdır.