Professional Documents
Culture Documents
Input / Girdi
Sıfır veya daha fazla
Output / Çıktı
En azından bir
Definiteness / Açıklık
Her işlem (komut) açık olmalı ve farklı anlamlar içermemeli.
Mesela: NetGelir = BrütGelir – Kesintiler
Finiteness / Sonluluk
Her türlü olasılık için algoritma sonlu adımda bitmeli.
Her algoritmanın bir sonu olmalıdır, sonsuza kadar devam edecek yapıda
olmamalıdır.
Effectiveness / Etkinlik
Algoritma etkin olmalıdır. Algoritmada tekrar anlatımlar olmamalıdır.
Bünyesinde en az tekrar bulunduran algoritmalara en etkin algoritma denir.
Program nedir?
Veri Bilgi
(Data) (Information
)
Program Geliştirme Adımları
Problemin Tanımlanması
8 ve 12 sayılarını toplayan ve sonucu ekrana yazdıran programı yazınız.
Algoritma Program Kodu
Birinci sayıya 8 ata sayi1 = 8
İkinci sayıya 12 ata sayi2 = 12
Topla toplam = sayi1 + sayi2
Toplamı ekrana yazdır PRINT toplam
Ekran Çıktısı
20
Programlama Dilleri
•C, 1972
Quick Basic
Sorgu Elemanı
Etiket (Bağlayıcı)
Oklar
Akış diyagramında iki nokta
arası ilişkiyi gösterir. Burada i
Oklar işin akış yönünü
herhangi bir sembol olabilir.
Akış Şeması
1. İşlem 1. İşlem
Sırasal (Dizisel) Akış 2. İşlem 2. İşlem
... veya …
n. İşlem
n. İşlem
Durumsal Akış
Koşul
Yes No
Döngüsel Akış
No
Yes Yes
No
Örnek
En ve boy bilgileri verilen bir tarlanın alanının bulunması :
Başla
Başla
Bitiş
Örnek
Verilen üç sayının ortalamasını bulan akış şemasını çiziniz.
Başla
Bitiş
Örnek
Sınav notu girilen öğrencinin sınavı geçip geçmediğini bulma
Başla
Sinavnotu oku
Sınavı geçtiniz
Bitiş
Örnek
Verilen sayının 200’den küçük, büyük veya eşit olduğunun bulunması :
Başla
Sayi oku
90 - 100 A
80 - 89 B
70 - 79 C
60 - 69 D
50 - 59 E
0 - 49 F
Örnek
1 - 100 arasındaki sayıların toplamının bulunması
Başla
Toplam=0
Adet =0
Adet = Adet +1
Adet
=100? Yanlış
Doğru
Toplamı Yaz
Bitiş
Örnek
11 - 50 arasındaki sayıların ortalamasının bulunması
Başla
A
Toplam=0
Ortalama = Toplam / 40
Adet =10
Bitiş
Toplam = Toplam + Adet
Adet
A Doğru =50? Yanlış
Örnek
Ekrandan okunan 5 adet sayının ortalaması
Başla
A
Toplam=0
Ortalama = Toplam / 5
Adet =0
Ortalamayı yaz
Sayi oku
Bitiş
Toplam = Toplam + sayi
Adet = Adet +1
Adet
A Doğru =5? Yanlış
Soru
Girilen 10 sayının çift sayı mı, tek sayımı olduğunu bulan akış
şemasını çiziniz.
Soru
Girilen 10 sayının 3’ün katı olup olmadığını bulan akış şemasını
çiziniz.
Değişkenler
DIM yas AS INTEGER yada yas% = 23
yas = 23
Veri Tipleri
# Double 8 ±1.8E .. ±308
$ String 0..16384 variable length string
Değişkenlere Değer Atama
QBasic’de değişkenlere değer atama işlemi = işaretiyle
yapılmaktadır.
adet = 0 (integer)
isim = “ayşe” (string)
Pi = 3.14 (double)
Örnek:
PRINT “Program Completed”
PRINT "5 + 7" 5 + 7
PRINT 5 + 7 12
İşlemler 1
DIM en AS INTEGER
Başla DIM boy AS INTEGER
DIM alan AS INTEGER
Eni oku (en)
Input “tarlanın enini giriniz”, en
Boyu oku (boy)
Input “tarlanın boyunu giriniz”, boy
Alan = en * boy
alan=en * boy
Alan yaz
END
Örnek
Üç kenarı verilen üçgenin çevresinin bulunması :
DIM A AS INTEGER
DIM B AS INTEGER
DIM C AS INTEGER
Başla DIM Cevre AS INTEGER
Cevre = A + B + C Cevre=A + B + C
Bitiş END
Örnek
Girilen iki sayının toplamını, farkını, çarpımını ve bölümünü ekrana
yazdıran QBASIC programını yazınız.
IF koşul THEN
[ S1 ]
Koşul doğru ise S1’deki, yanlış ise S2’deki
ELSE
işlemler yapılır.
[ S2 ]
END IF
IF koşul1 THEN
[ S1 ] Koşul1 doğru ise S1’deki
ELSEIF koşul2 THEN Koşul1 yanlış ve Koşul2 doğru ise S2’deki
[ S2 ] Koşul1 ve Koşul2 yanlış ise S3’deki
ELSE işlemler yapılır.
[ S3 ]
END IF
Örnek
Sınav notu girilen öğrencinin sınavı geçip geçmediğini bulma
Başla
INPUT “sınav notunu giriniz”, sinavnotu
Sinavnotu oku
IF sinavnotu < 50 THEN
PRINT “Sınavı geçemediniz” Sinavnotu Doğru Sınavı geçemediniz
ELSE <50?
PRINT “Sınavı geçtiniz” Yanlış
Bitiş
Örnek
Verilen sayının 200’den küçük, büyük veya eşit olduğunun bulunması