Ders Notu-4

Transkript

Ders Notu-4
PROGRAMLAMAYA GĐRĐŞ I
Algoritma:
Bir problemin çözümü için izlenecek yol anlamına gelmektedir. Problemi çözebilmek için
geliştirilmiş açık, yürütülebilir, sıralı, basit tekrar edebilen adımlardan oluşan yöntem algoritma
olarak tanımlanmaktadır.
Algoritmanın Özellikleri;
Basitlik
Yürütülebilirlik
Sıralı olma
Bilgisayar ortamında problem çözümü için kullanılan adımlar şunlardır:
1- Problemi (sorunu) anlaşılması: Çözülecek soru tam olarak ortaya konulmalıdır. Sorunun
tam olarak anlaşılması çözümün doğru olmasını sağlayacaktır.
2- Çözümü basamaklara ayırma (Algoritma oluşturma): Sorunun tanımını bitirildikten
sonra, çözüm için kullanılacak yollar belirlenir. Bu aşamada sorunun çözümü birden fazla
yol ile sağlanabileceği unutulmamalıdır. Çözüm yollarından basit ve kolay olan seçilmelidir.
Sorun karmaşık ise çözüm sırasında alt çözüm yolları kullanılmamlıdır. Burada dikkat
edilmesi gereken nokta alt çözüm yollarının ana çözüm yolu ile bağlantısı daima takip
edilmelidir.
3- Akış şemasını çizme: Problemin çözümünü içeren algoritma geliştirildikten sonra,
anlaşılabilirliğini ve programlama dillerine kolay aktarımı için akış şeması (flow chart)
çizilir. Böylece çözüm basamaklarının birbirleri ile ilişkileri ve bilgi akışı görülecektir.
4- Program kodunu yazma. Akış şeması çizildikten sonra, çözüme uygun bir programlama
dili kullanılarak kod yazımı yapılmalıdır.
5- Çalıştırma (Uygulama). Programın kodlaması tamamlandıktan sonra, sonuçları bilinen
veriler girilerek programın çalıştırılır.
6- Test etme ve hataları düzeltme: Program çalıştırıldıktan sonra varsa yazım yada mantık
hataları giderilip test edilir.
Program; Problemin çözümünü adım adım gerçekleştirecek kod yazımına program
denilmektedir. Başka bir deyişle belirli bir komut takımı ile kullanılarak çözümün elde edilmesidir.
Komut takımını kullanma ve yazımına ilişkin koşulları belirleyen kurallara kısaca programlama
dili denilmektedir.
BASIC(Beginner’s All purpose Symbolic Instruction Code) : 1964' te New Hampshire' deki
(USA) Dartmouth kolejinde John G. Kemeney (1926-93) ile Thomas E. Kurtz (1928-) tarafından
geliştirilen bir programlama dilidir.
C :Dennis Richie tarafından 1972 yılında Bell Laboratuarında geliştirilmiş ve ilk olarak UNIX
işletim sisteminde kullanılmıştır.
PASCAL:1970 Yılında Wirth tarafından öğrencilerine programlama öğretmek maamcıyla
geliştirilmiş bir programlama dilidir. Bu dilin kullanım alanı ve özellikleri dolayısıyla ünlü Fransız
Matematikçi Blaise Pascal anısına PASCAL adı verilmiştir.
FORTRAN(Formula Translater): 1954-1957 yılında IBM tarafından matematiksel ve bilimsel
alanlarda kullanılmak üzere tasarlanmış bir programlama dilidir.
COBOL(Comman Business Oriented Language):1959 yılında ticari amaçlar ile geliştirilmiştir
bir programlama dildir.
Derleyici (Compiler)
Yorumlayıcı (Interpreter)
Derleyici (Compiler):
Programlama dili kullanılarak yazılmış bir programı makine dili ile yazılmış amaç programa
çevirirler.
Đnput A,B
Topla= A- B
Print Topla
Yazım Hataları
Mantık Hataları
Yorumlayıcı (Interpreter) : Programlama dili ile oluşturulan program kodlarının (kaynak kodlar)
ilk satırından son satırına kadar satır satır belirtilmiş komut ve işlemleri inceleyerek kaynak
programın hatalarının düzeltilmesine imkan veren ve çalıştıran programlardır.
Kaynak (Source) Program : Bir programlama dili ile yazılmış programlar.
Amaç (Object) Program
elde edilen program.
: Bir programlama dilinde yazılmış kaynak programın derlenmesi ile
Derleyici ile Yorumlayıcının farkı:
Derleyici programın tamamını kontrol eder bir satırında hata varsa program satırları bittikten
sonra hatayı gösterir.
Yorumlayıcı ise programın bir yerinde hata varsa çalışırken hatalı satıra geldiğinde durur ve hata
mesajı verir.
TEMEL KAVRAMLAR
KOMUT (Command): Bilgisayarın herhangi bir işlemin nasıl yapılacağını belirten emirlerdir. Her
programlama dilinin kendine ait bir komut takımı bulunduğundan programcılar kullandıklara dile
ait komutların belli başlıcalarını bilmek zorundadır. Programlama bir işin nasıl yapılacağının adım
adım tarif edilmesidir. Komutlar basit ve anlaşılır kısa kelimelerden oluşmaktadır.
Örneğin;
Yaz “Bilgisayar” gibi bir ifade düşünülecek olursa,
Basic/Visul Basic
C
Pascal
Print “Bilgisayar”
Printf “Bilgisayar”
Write ‘Bilgisayar’
olarak ifade edilmektedir.
DEĞĐŞKENLER (Variables): Bellekte bilginin saklandığı, ismini ve tipini belirlediğimiz
alanlardır. Böylece bellek adresleriyle uğraşmak yerine programlama sırasında simgesel isimler
verilmektedir. Verilen değerler bellekte verilen sembolik ad ve tiplerde saklanırken, nerede
saklayacağını (adres bilgisi) ise sistem tarafından belirlenir.
Diğer önemli kavram ise sabitler ve operatörlerdir. Sabitler (constant), programda değeri
değiştirilmeyen simgesel isimlerdir.
2
Operatörler ise aritmetik işlemlerde ve kontrol deyimlerinde kullanılan, işlem değeri olan
karakterlerdir.
Genel olarak değişkenleri ikiye ayırabiliriz;
1) Đçerisinde sayısal değerleri sakladığımız değişkenlere sayısal veya nümerik değişken
denlmektedir.
2) Sayısal değerler dışında (ad, yer, adres, vb.) saklanan değişkenlere de alfa sayısal veya string
değişkenler denilmektedir.
Programlama dillerinde değişkenlerin tanımlanması birbirine benzemekle birlikte her dilin kendine
özgü farklılıkları bulunacağı unutulmamalıdır.
Genel olarak değişken tanımlama kuralları için şunlar söylenebilir:
1) Bir değişkenin ilk karakteri mutlaka harf olmalıdır.
2) Değişken isimlerinin içerisinde _ karakteri hariç, boşluk veya özel karakterler
bulunmamalıdır (.,@ ? * : ; ! -)
3) Değişken isimlerinde Türkçe karakter kullanmamaya özen gösterilmelidir.
4) Değişken isimleri kullanılan programlama diline ait komutları içermemelidir.
5) Değişken isimleri için anlamlı ifadeler kullanılmalıdır.
HATALI TANIMLAMALAR
14BOLU
adi Soyadi
sa:at
DOĞRU TANIMLAMALAR
Girne15
Al23
DOGUM_YERI
Değişkenlere değer Aktarma( = ) :
Bir aritmetik yada string ifadeyi değişkene aktarmak için “ = “ parametresi kullanılır. { a = 5 , b =
“ABC” gibi…}
Burada eşitliğin sağ tarafındaki ifadenin sonucu sol taraftaki değişkene aktarılır.
Örnek 1 : Aşağıdaki program akışı sırasındaki değişken değerleri
A=3
B=3*A
A=B+5
B=B+1
A
3
14
14
B
9
9
10
Visual Basic ‘de Değişkenlerin Tanımlanması:
Bir değişken kullanılmadan önce tanımlanmalıdır. Bu tanımlama genellikle Dim (Boyut Aç)
komutu ile program kodunun başında yapılmaktadır:
Yapısı : Dim Değişken_adı As tip
Tip ; Değişken in alabileceği veri türünü
,double,single,long,string,boolean,currency gibi ]
3
tanımlar.
[Bunlar;
integer,
byte,
long
Eğer değişken tanımlanmaz veya tanımlanırken tip belirtilmezse, VB bu değişkeni Variant veri
tipinde algılar. Variant bir değişken herhangi bir tip veriyi içerebilir. Variant tipli değişken
kullanmanın dezavantaları şunlardır:
•
•
Daha fazla bellek kullanımı
Variant veri tipi bazı veri işlem fonksiyonları için geçersiz olabilir.
Veri Tipleri :
Bildiri Deyimi
String
Integer
Long
Single
Double
Currency
Byte
Boolean
Date
Variant
Veri Tipi
Bellek Alanı
Karaktersel
1 karakter 1 bayt
Tamsayı
2 bayt
uzun tamsayı
4 bayt
tek duyarlı sayısal
4 bayt
çift duyarlı sayısal 8 bayt
para-çok büyük Sayı 8 bayt
tamsayı
1 bayt
doğru/yanlış
2 bayt
tarih
8 bayt
16 bayt + her karakter için 1 byte
Değer Aralığı
65.535
-32.768 to 32.767
2.147.483.647
3.4x10^38
1,7x10^308
922.337.203.685.447
0 to 255
True / False
1/1/100 to 12/31/9999
String değişkenler; aralarına “+” veya “&” sembolü konarak birbirlerine eklenebilirler.
SABĐTLER (Constant): Program içerisinde değeri değişmeyen ifadelere sabit denir. Tırnak “ “
işaretleri arasında yazılan her türlü bilgi string sabittir. Özellikle bilinen değerlerin kullanımını
sağlar. Kodlamayı ve kodun okunabilirliğini kolaylaştırır.
VB de sabit ifadeler program kodunun başında Const deyimi ile tanımlanırlar.
Const pi=3.14
OPERATÖRLER: Đşlem yapmamızı sağlayan işaretlerdir (+,-,*,/,=,% gibi ). Programlama
dillerinde değişik operatörler kullanılmaktadır.
ĐŞLEMLER
Aritmetik Operatör
Matematiksel Notasyon
VB ve QB Notasyonları
Toplama
Çıkartma
Çarpma
Bölme
+
*
/
X+Y
X-Y
(YB)(Y.B) (Y*B)
V/A ve V
X+Y
X-Y
Y*B
V/A
A
Bölme(tamsayı)
Üs alma
Mod alma
String birleştirme
Negatif
\
^
Mod
&
QP
Q mod P
Çanak kale
-Y
4
V\A
Q^P
Q mod P
“Çanak”&”kale”
-Y
Đşlem öncelik sırası
Sıra
Tanım
Matematik
Bilgisayar
1
Parantezler
(( ))
(( ))
2
Üs Almak
an
a^n
3
Çarpma ve Bölme
ab a/b
4
Toplama ve Çıkarma
a+b a-b
a*b
a/b
a+b a-b
Operatörlerin işlem sırası: Parantez kullanılarak işlem öncelik sıraları değiştirilir. Đç içe kullanılan
parantezlerde öncelik en içtekindedir. Aynı işlem önceliğine sahip elemanlarda işlem soldan sağa
doğrudur.
Örnek 2:
y=prq+w/x-z
y=p*r^q+w/x-y
Matematiksel:
Visual Basic :
6
y = 2.42 + 6 / 2 – 9
y
y
y
y
y
2
1
4
3
5
= 2*16+ 6 / 2 - 9
= 32 + 6/2 – 9
= 32 + 3 – 9
= 35 – 9
= 24
KARŞILAŞTIRMA OPERATÖRLERĐ
Verilerin birbiriyle karşılaştırılmasında kullanılır. Sonuç doğru ise 1 , yanlış ise 0 değerini alır.
OPERATÖR
ĐŞLEM
Küçüktür
Büyüktür
Küçük eşit
Büyük eşit
Eşittir
Eşit değil
<
>
<=
>=
=
<>
KARŞILAŞTIRMA
VBasic
NOTASYONU
NOTASYONU
A<B
A<B
A>B
A>B
A≤B
A <= B
A≥B
A >= B
A=B
A=B
A≠B
A<>B
MANTIKSAL OPERATÖRLER
Mantıksal operatörlerin temelini, verilerin birbirleriyle kıyaslanması oluşturur. Koşulun sonucuna
bağlı olarak da hangi işlerin yapılacağına karar verilir.
ĐŞLEM
Ve
Veya
Değil
Özel veya
OPERATÖR
AND
OR
NOT
XOR
KARŞILAŞTIRMA NOTASYONU
A VE B
A VEYA B
A DEĞĐL B
Şartlardan biri doğru ise –1 sonucunu
değilse 0 sonucu verir
5
VBasic
NOTASYONU
A AND B
A OR B
A NOT B
A XOR B
ÖRNEK 3: A=5
B=4
Y= ( A < 5 ) OR ( B >= A ) AND ( A=5 ) Đfadesinin tersi nasıl olur?
Cevap:
Y= False OR False AND True = 0 OR 0 AND 1 = 0 OR 0 = 0 = FALSE
Bu ifadenin tersi ;
Y = ( A>=5 ) AND ( B < A ) OR ( A< >5 ) = True AND True OR False
Y = 1 AND 1 OR 0 = 1 OR 0 = 1 = TRUE
sonucu elde edilir.
AKIŞ ŞEMALARI(FLOW CHARTS)
Algoritmanın,görsel olarak simge ya da sembollerle ifade edilmesine "akış şeması" veya
FLOWCHART adı verilir. Akış şemalarının algoritmadan farkı, adımların simgeler şeklinde ve
adımlar arasındaki ilişkiler ve yönleri oklar ile gösterilmesidir.
Akış şemaları kullanımındaki en temel avantaj problem çözüm adımlarının kolayca takip
edilebilmesidir.
Amerikan Ulusal Standartları Enstitüsünün (ANSI) belirlediği akış diyagramlarında kullanılan
semboller ve kullanım amaçları
BAŞLA /DUR
Genel giriş/çıkış
ĐŞLEM
Ekrandan okuma
ve yazma
Sayfa içi
Bağlantı
KARAR
Sayfa dışı
bağlantı
DÖNGÜ
ÇIKTI
6
Akış yönü
belirleme
Örnek 1: Girilen iki sayının ortalamasını alan programın algoritması ve akış seması.
1.Başla
2.Đki sayı gir (A,B)
3.Ortalamayı hesapla (ortalama=(A+B)/2)
4.Ortalamayı yaz
5.Dur
BAŞLA
A,B
Ortalama=(a+b)/2
ortalama
DUR
Örnek 2:Klavyeden girilen 10 adet sayının toplamını bulup ekrana yazdıran programın algoritması
ve akış şeması.
Örnek 3: Rasgele girilen iki sayıdan küçük olanı önce yazan program.
Örnek 4: Ekrana 5 defa “ BĐLGĐSAYAR” yazan programın algoritma ve akış şemasını yazın?
1. BASLA
2. sayac=0
3. YAZ “BĐLGĐSAYAR”
4. sayac=sayac+1
5. Eğer sayac<5 GĐT 3. adıma
6. DUR
Örnek 5: 1,1,2,3,4,5,8,13,21,34,55,……….. çıktısını veren programın akış diyagramı ve program
kodunu yazınız?. ( Bu şekildeki seri Fibonacci dizisi olarak isimlendirilmektedir)
Örnek 6: Klavyeden girilen X değerine göre fonksiyonu gerçekleştiren program.
F(x)= 3X2 + 4X + 2
X+1
4X3 + 2X2 + 4
, X > 0 ise
, X =0 ise
, X<0 ise
Algoritma :
Akış Şeması :
1.Başla
2.X değerini gir.
3. Eğer X>0 ise Fx=3*X*X + 4*X + 2
4. Eğer X=0 ise Fx=X+1
5. Eğer X<0 ise Fx=4*X*X*X +2*X*X+4
6. Fx’i yaz
7. Dur.
7
Örnek 7: Aşağıdaki akış diyagramına göre N değeri 6 girilirse M ve I’nın ekrandaki çıktısı
nasıl olur?
BAŞLA
I
N
M=1
I=2
M
N
6
6
6
6
6
6
M=M*I
I=I+1
H
I>N
E
I,M
DUR
Örnek 8: Klavyeden girilen 3 sayıdan en
büyük olan sayıyı bulan programın akış şeması
Örnek 9: Faktöriyel alan program.
8
KONTROL YAPILARI
Yapısal programlama dillerinde programın işleyişi ilk satırdan son satıra doğru ilerler bu
işleyiş sırası, şartlı veya şartsız olarak değiştirilebilir. Programın işleyiş yönünün şartlı veya şartsız
olarak değiştirilmesi işlemine “dallanma” denir.
A. DALLANMA
1. GOTO KOMUTU ĐLE ŞARTSIZ DALLANMA
Programın işleyiş yönünü şartsız olarak değiştirmede GOTO ( Git) deyimi kullanılır.
Kullanım Şekli ; goto <etiket>
2. IF /THEN KOMUTU ĐLE ŞARTA BAĞLI DALLANMA
Bu kullanımda eğer IF’den sonra verilen şart sağlanırsa Komut1 şart sağlanmazsa ELSE’den
sonraki Komut2 gerçekleştirilir.
Eğer
IF
< koşul > ise yap değilse yapma
=
<>
>
<
>=
<=
THEN Komut1.. ELSE Komut2..
3.KOŞUL SÜRDÜKÇE DEVAM EDEN ĐŞLEMLER
Koşul kontrolü yapıldığı yere göre ikiye ayırılabilir. Birincisi program başında koşul
kontrolü yapmak, diğeri ise bir defa işlem yapıldıktan sonra koşulun doğru yada yanlış olmasına
göre işlem tekrarı yapılmasıdır.
a) Do While – Loop
b) Do – Loop While
H
işlemler
Koşul
E
H
Koşul
işlemler
E
9
DÖNGÜ YAPILARI
Problemlerin çözümlerinde tekrar edilen işlemleri göstermenin kolay ve anlaşılır bir yolu, bu
yola döngü yada yineleme yapıları denir.
Döngü değişkeni→ilk değer,son değer, artış miktarı
Döngü girişi
A=1,10,1
Yinelenen işlemler
Döngü sonu
Döngü değişkeni: Döngü yapısının tekrarının denetlenmesi amacı ile kullanılan değişkendir.
Đlk değer: Döngü değişkeninin alacağı ilk değerdir.
Son değer: Döngü değişkeninin alacağı son değerdir.
Artış miktarı: Döngü Değişkeninin ilk değerden son değere kadar alacağı değerlerdeki artış
miktarıdır. Artış miktarı belirtilmez ise bu değer bir (1) kabul edilir.
Döngüler iki çeşittir;
Artan Döngüler:Başlangıç değeri, bitiş değerinden küçüktür.
Azalan Döngüler: Başlangıç değeri, bitiş değerinden büyüktür.
Döngü değişkeni döngü dışına en son aldığı değeri bir artırarak çıkar.
ÖRNEK:
IF sayi<0 THEN PRINT “Sayı Negatif” ELSE PRINT “Sayı Sıfır ya da Pozitif”
ÖRNEK: Girilen yaş değerine göre kişinin durumunu bulan programı yazınız.
0–5
BEBEK
6 – 14
ÇOCUK
GENÇ
15 – 28
29 – 39
ORTA YAŞLI
40 ve ÜSTÜ ĐHTĐYAR
Algoritma..;
1.Başla
2.Yaş Değerini gir
3.Eğer 0<=yas <= 5 ise Bebek
4.Eğer 5<=yas <= 14 ise Çocuk
5.Eğer 15<=yas <=28 ise Genç
6.Eğer 29<=yas <=39 ise Orta Yaşlı
7.Eğer 40>=yas ise Đhtiyar
8.Dur
Program Kodu … ;
Private Sub Command1_Click()
Dim yas As Integer
yas = Val(InputBox("Yaşı giriniz"))
If yas <= 5 Then Print "Bebek"
If yas > 5 And yas <= 14 Then Print "Çocuk"
If yas > 15 And yas <= 30 Then Print "Genç"
If yas > 30 And yas <= 45 Then Print "Orta Yaşlı"
If yas >= 46 Then Print "Đhtiyar"
End Sub
10
2. Kullanım:
IF <Şart> THEN
<Yapılacak Đşlemler>
ELSE
<Yapılacak Đşlemler>
END IF
Private Sub Command1_Click()
Dim not1 As Integer
not1 = Val(InputBox("Notu giriniz"))
If not1 >= 50 Then
Print "Geçti"
End If
If not1 < 50 Then
Print "Kaldı"
End If
End Sub
if Then yapısı tek satıra sığmıyorsa End If komutu ile sonlandırılmalıdır.
IF FONKSĐYONU :
Yapısı: IIF(Koşul,birinci ifade,ikinci ifade)
Bir bakıma , IF deyiminin kısıtlı bir şeklidir. Yalnızca iki olasılığın söz konusu olduğu
durumlarda IF deyimi yerine IIF fonksiyonu kullanılabilir.
Private Sub Command1_Click()
Dim ortalama as integer
Sonuc as string
ortalama=val(inputbox(“not ortalamasını giriniz”))
sonuc = IIf(ortalama >= 50, "Geçti", "Kaldı")
Print sonuc
End Sub
SELECT CASE YAPISI
Yapısı …….: Select Case ... End Select
Değişkenin belirli değerlerine göre yapılacak farklı işlemlerin seçiminde kullanılır.
Select Case değişken
Case d1
‘ Değişkenin d1 değeri aldığı durumlarda yapılacak işlemler
Case d2
‘ Değişkenin d2 değeri aldığı durumlarda yapılacak işlemler
case d3 to d9
‘ d3 ve d9 aralığındaki tüm değerler için yapılacak işlemler
case is > d10
‘ Değişkenin d10 dan daha büyük değerler aldığında yapılacak işlemler
Case Else
‘ Değişkenin farklı değerler aldığı durumlarda yapılacak işlemler
End Select
Koşul sayısının 5 den fazla olduğu durumlarda bu yapıyı tercih etmek daha iyi olur.
ÖRNEK: Girilen yaş değerine göre kişinin durumunu bulan programı Select Case yapısını
kullanarak yazınız.
Private Sub Command2_Click()
yas = Val(InputBox("YAŞ DEĞERĐNĐ GĐRĐNĐZ="))
11
Select Case yas
Case 0 To 5: Print "BEBEK"
Case 6 To 14: Print "ÇOCUK"
Case 15 To 29: Print "GENÇ"
Case 30 To 45: Print "ORTA YAŞLI"
Case Else
Print "ĐHTĐYAR"
End Select
End Sub
1’den 10 a kadar olan sayıların toplamını ve girilen 10 adet sayının toplamını bulan program akış
şemaları
BAŞLA
BAŞLA
Toplam=
0
I=1,10,1
Toplam
=0
I=1,10,1
I.sayıyı
gir:
Toplam=Toplam+I
Toplam=Toplam+Sayı
I
I
Topla
m
Topla
m
DUR
DUR
Döngü yapılarını kullanırken dikkat edilmesi gereken kurallar:
1)Artan döngülerde döngü değişkeninin ilk değeri son değerinden küçük olmalı. Artan döngülerde
ise tam tersi yapılmalıdır.
2)Artış miktarı pozitif veya negatif olabilir fakat negatif olması durumunda dikkat edilmelidir.
3)Artış miktarı belirtilmez ise bu değer 1 olarak kabul edilir.
4)Döngü yapısı belli kurallara bağlı kalınarak terk edilebilir.
5)Döngü değişkeninin değeri mecbur kalınmadıkça döngü yapısı içinde değiştirilmemelidir.
6)Đç içe döngülerde dikkat edilmelidir.
ÖRNEKLER
1) 0’dan 100 e kadar olan tek sayıların toplamını bulan program.
CLS
TOP=0
FOR I=1 TO 100 STEP 2
TOP=TOP+1
NEXT I
PRINT “TOPLAM=”; TOP
END
12
2) Klavyeden girilen iki pozitif tamsayının çarpımını çarpma operatörü kullanılmadan bulan
program.
CLS
CARP=0
S1= INPUTBOX( “1.SAYIYI GĐRĐNĐZ:”)
S2= INPUTBOX( “2.SAYIYI GĐRĐNĐZ:”)
FOR I= 1 TO S1
CARP=CARP+S1
NEXT I
PRINT S1; ”*” ; S2 ; ”=” , CARP
END
KONTROL YAPILARI ÖZET
Yapısal programlama dillerinde üç tür kontrol yapısı vardır.
1.Sıralı yapılar
2.Karar (Seçim) yapıları
3.Döngü (Tekrarlama) yapıları
1-Sıralı yapılar
Örnek: Đki sayının toplamı
1. Topla=0
2. Input “iki sayı gir”,A,B
3. Topla= A+B
4. Prınt Topla
5. End
2-Karar yapıları
1. Tek seçim
2. Çift seçim
3. Çoklu seçim
2.1. Tek seçim(IF / THEN yapısı)
Örnek: Sayı sıfırdan büyük ise girilen sayının karesini al
INPUT sayı
IF sayı >0 THEN kare=sayı^2
PRINT kare
END
2.2. Çift seçim (IF / THEN....... ELSE yapısı)
Örnek: Sayı sıfırdan küçükse sayının karesini al büyükse girilen sayının karekökünü al.
INPUT sayı
IF sayı >0 THEN kare=sayı^2
ELSE kare=sayı^(1/2)
PRINT kare
END
2.3. Çoklu seçim
Selece Case kullanılır veya iç içe IF yapıları kullanılır.
13
IF / THEN YAPISI
IF / THEN / ELSE
H
E
Koşul
E
B=Y
Đşlemler
H
A
B
SELECT CASE YAPISI (ÇOKLU SEÇĐM)
E
Koşul
Đşlemler
H
E
Koşul
Đşlemler
H
E
Koşul
Đşlemler
H
DÖNGÜLER
1.Tekrar sayısı belli döngüler
For Next Döngüsü
CLS
FOR i = 1 TO 10
PRINT “ EGEMYO ”
NEXT i
END
işlemler
Koşul
E
Örnek: Ekrana 10 defa “EGEMYO” yazan
program
işlemler
H
14
2.Tekrar sayısı koşula bağlı olan döngüler
sürece (koşul) devam et
2.1 While / Wend döngüsü yada Do While Loop :
While /Wend döngüsü yerine daha hızlı çalışan Do While Loop döngüsü tercih edilir.
Koşul
işlemler
3-
Örnek:
CLS
SAYI = val(inputbox (“bir sayı giriniz”))
Do While SAYI < > 0
KARE =SAYI^2
Loop
PRINT KARE
END
DO - LOOP DÖNGÜSÜ
3.1-Do while(koşul)
(Đşlemler)
Loop
3.2-Do
(Đşlemler)
Loop while (Koşul)
3.3-Do until(Koşul)
(Đşlemler)
Loop
3.4-Do
(Đşlemler)
Loop until (Koşul)
Do / Loop Until
Do Until / Loop
ĐŞLEMLER
H
KOŞUL
H
E
KOŞUL
E
15
ĐŞLEMLER
Do While / Loop
Do / Loop While
E
KOŞUL
ĐŞLEMLER
ĐŞLEMLER
H
E
KOŞUL
Cls
T=0,S=0
Do While s < 101
S=s+1
T=t+s
Exit do
Ekran Çıktısı
Loop
5050
Print t
H
A=5
Do
A=a+1
Loop while a<3
Print a
Đç içe for döngüleri
Ekran Çıktısı
6
Örnek: Çarpım Tablosu
For (döngü 1)
(işlemler)
For (döngü 2)
(işlemler)
For (döngü 3)
(işlemler)
next (döngü 3)
next (döngü 2)
next (döngü 1)
For i=1 to10
For j=1 to 10
Sonuc=i*j
Print i;”*”;j;”=”;sonuc
Next j
Sleep 2 ‘programı yavaşlatmak için
Next i
16
DĐZĐLER
Bir veya birden fazla verinin tek bir ad ile adlandırıldığı yapılara dizinli değişken (Dizi)
adı verilir. Bir dizinin dizin olabilmesi için;
1- Aynı tür elemanlardan oluşmalıdır.
2- Bellekte yer kaplaması gerekir.
Değişken adı
ĐNDĐS (eleman sayısı)
Đndislere isim verirken dikkat edilmesi gereken hususlar:
1-Đndisler negatif olamaz.
2-Đndisler tamsayı olmalıdır.
3-Đndis en az 1 olmalı.
Boyut aç boy (100) as integer
Eleman sayısı - indis
Dim
( QBasıc/Visual Basıc )
Dizi tanımlama şekilleri :
Dim boy(10) → 11 elemanlı
Dim boy (1 to 10) → 10 elemanlı
Dim boy(3 to 10) →8 elemanlı
Option Base 1
Dim boy(10)
10 elemanlı
Bu tür dizilere tek boyutlu dizi denir. Matematiksel olarak da vektör adı verilir.
ÖRNEK-1:
Günün haftanın kaçıncı günü olduğunu hesaplayan program.
Private Sub Command2_Click()
Dim gün(1 To 7) As String
gün(1) = "Pazartesi"
gün(2) = "Salı"
gün(3) = "Çarşamba"
gün(4) = "Perşembe"
gün(5) = "Cuma"
gün(6) = "Cumartesi"
gün(7) = "Pazar"
.
.
.
.
End Sub
17

Benzer belgeler