ÖLÜM 1- GİRİŞ Visual Basic



Benzer belgeler
Algoritmalar. 3. Açıklık: Her işlem (komut) açık olmalı ve farklı anlamlar içermemeli.

Bilgisayar programlaması sırasında izlenebilecek bir çok yol ve yöntem vardır. Programcının probleme ilişkin çözümü ortaya çıkarabilmesi için problem

Örnek bir Algoritma. Örneğimiz bir insanın evden çıkıp işe giderken izleyeceği yolu ve işyerine girişinde ilk yapacaklarını tanımlamaktadır.

Algoritmanın Hazırlanması

C PROGRAMLAMA YRD.DOÇ.DR. BUKET DOĞAN PROGRAM - ALGORİTMA AKIŞ ŞEMASI

Bilgisayar Temelleri ve Programlamaya Giriş Yard.Doç.Dr. Metin HASDEMİR İstanbul-2008 PROGRAMLAMAYA GİRİŞ

GÖRSEL PROGRALAMA HAFTA 3 ALGORİTMA VE AKIŞ DİYAGRAMLARI

SİNOP ÜNİVERSİTESİ MESLEK YÜKSEK OKULU

Programlamanın Temelleri

BILGISAYAR PROGRAMLAMAYA GIRIS

ALGORİTMA VE AKIŞ ŞEMALARI

Bilgisayar Programı Nedir?

BİL1002 Bilgisayar Programlama PROF.DR.TOLGA ELBİR

BÖLÜM 3: AKIŞ DİYAGRAMLARI

AKIŞ ŞEMASI AKIŞ ŞEMASI AKIŞ ŞEMASI ŞEKİLLERİ GİRİŞ

ALGORİTMA HAZIRLAMA. Temel tanımlar ve işleyiş. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.

Algoritmalar ve Programlama. Algoritma

TEMEL BİLGİSAYAR BİLİMLERİ. Programcılık, problem çözme ve algoritma oluşturma

BİLGİSAYAR PROGRAMLAMA MATLAB

Algoritma ve Programlamaya Giriş. Mustafa Kemal Üniversitesi Kırıkhan Meslek Yüksekokulu Bilgisayar Teknolojileri Bölümü

PROGRAMLAMAYA GİRİŞ DERS NOTLARI

Algoritma ve Programlamaya Giriş. Mustafa Kemal Üniversitesi Kırıkhan Meslek Yüksekokulu Bilgisayar Teknolojileri Bölümü

HÜPP PYTHON I.HAFTA ALGORİTMA MANTIĞI, AKIŞ DİYAGRAMLARI VE PYTHON'A GİRİŞ

Dr. Musa KILIÇ Öğretim Görevlisi

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

BMT 101 Algoritma ve Programlama I 3. Hafta. Yük. Müh. Köksal GÜNDOĞDU 1

EM205 26/9/2014. Programlamaya giriş Algoritmalar. Amaçlar

Programlama Temelleri. Ders notları. Öğr.Gör. Hüseyin Bilal MACİT 2017

DEĞERLENDĐRME ÖDEV % 20 ARASINAV % 30 FĐNAL SINAVI % 50

PROBLEM ÇÖZME PROGRAMLAMA ve ÖZGÜN ÜRÜN GELİŞTİRME

PROGRAMLAMAYA GİRİŞ VE ALGORİTMA. Yazılım Nedir Algoritma Akış Seması Örnekler

PROGRAMLAMAYA GİRİŞ ve BASIC

FBEB-512 C++ ile Nesne Tabanlı Programlama Güz 2009 (1. Hafta) (Yrd. Doç. Dr. Deniz Dal)

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

Algoritma ve Programlamaya Giriş

ÖRNEK 1: Verilen iki sayının toplamının bulunmasının algoritması aşağıdaki gibi yazılır:

ALGORİTMA KAVRAMI. Bir sorunu / problemi çözmek veya belirli bir amaca ulaşmak için gerekli olan sıralı mantıksal adımların tümüne algoritma denir.

ÖRNEK ALGORİTMA VE AKIŞ ŞEMALARI. Örnek 1: Klavyeden girilen 2 sayının toplamını bulan programın algoritma ve akış şemasını yapınız.

Bilgisayarda Programlama. Temel Kavramlar

PROGRAMLAMA TEMELLERİ

Okut. Yüksel YURTAY. İletişim : (264) Sayısal Analiz. Algoritma & Matlab.

PROGRAMLAMAYA GİRİŞ VE ALGORİTMA «YTÜROK» EĞİTMEN:REHA ÖZGÜR ŞİMŞEK

BİLGİSAYAR PROGRAMLAMA. Algoritma ve Akış Şemaları

MAK 1005 Bilgisayar Programlamaya Giriş. BİLGİSAYARA GİRİŞ ve ALGORİTMA KAVRAMI

BİLİŞİM TEKNOLOJİLERİ 6. SINIF DERS NOTLARI 2

İÇERİK PROGRAMLAMAYA GİRİŞ ALGORİTMA AKIŞ DİYAGRAMLARI PROGRAMLAMA DİLLERİ JAVA DİLİNİN YAPISI JAVA DA KULLANILAN VERİ TİPLERİ JAVA DA PROGRAM YAZMA

4- ALGORİTMA (ALGORITHM)

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


EĞİTİM ÖĞRETİM MÜNEVVER ÖZTÜRK ORTAOKULU II. DÖNEM BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ DERS NOTLARI

Yazılım Çeşitleri. Uygulama Yazılımları. İşletim Sistemleri. Donanım

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.

Algoritma kelimesinin kökeni:

PROGRAM AKIŞ DİYAGRAMLARI

5. PROGRAMLA DİLLERİ. 5.1 Giriş

Bireylerin yaşadığı çevreye uyum sağlaması durumunda ortaya çıkan olumsuzluklara PROBLEM denir.

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ (Algoritma Geliştirmek, Satır Kod)

4- ALGORİTMA (ALGORITHM) M.İLKUÇAR - 1

bunları biliyor muydunuz? primo Bill Gates Mark Zuckerberg oyuncak robot codie code.org bulmacalar NEDIR

KODLAMAYA HAZIRLIK MODÜLÜ 1. YAZILI SINAV ÇALIŞMA SORULARI VE MODÜL ÖZETİ

İÇERİK PROGRAMLAMAYA GİRİŞ ALGORİTMA AKIŞ DİYAGRAMLARI PROGRAMLAMA DİLLERİ JAVA DİLİNİN YAPISI JAVA DA KULLANILAN VERİ TİPLERİ JAVA DA PROGRAM YAZMA

Yazılım Mühendisliği 1

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

Programlama dilleri. Programlama dili: İnsan-makina ve makina- makina arasındaki iletişimi sağlar.

Günümüz bilgi toplumunda bilgisayar, her alanda kendine yer edinmiş ve insana, bir çok işlemde yardımcı olarak büyük kolaylık sağlamaktadır.

GÜMÜŞHANE ÜNĐVERSĐTESĐ MÜHENDĐSLĐK VE DOĞA BĐLĐMLERĐ FAKÜLTESĐ ELEKTRĐK-ELEKTRONĐK MÜHENDĐSLĐĞĐ EEM 114 ALGORĐTMA TASARIMI VE PROGRAMLAMA DĐLLERĐ

ÖRNEK 1:Verilen iki sayının toplamının bulunmasının algoritması aşağıdaki gibi yazılır.

Algoritma ve Akış Şemaları

BLG 1306 Temel Bilgisayar Programlama

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA

Yrd. Doç. Dr. Fatih YÜCALAR YZM Celal Bayar Üniversitesi Teknoloji Fakültesi

Kazanımlar. Programlama Dili Nedir? Programlama Dili. ENF102 Jeoloji

ALGORİTMA ÖRNEKLERİ ve YAZILIYA HAZIRLIK SORULARI


ALGORİTMAYA GİRİŞ. Program: Belirli bir işi gerçekleştirmek için gerekli komutlar dizisi olarak tanımlanabilir.

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

BİLGİSAYAR PROGRAMLAMAYA GİRİŞ

BİLGİSAYAR PROGRAMLAMA DERSİ

Ünite 01 Algoritma Geliştirme

ALGORİTMA TASARIMI VE SCRATCH UYGULAMASI

... ROBOTİK VE KODLAMA EĞİTİMİ ÇERÇEVESİNDE ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ DERSİ ÜNİTELENDİRİLMİŞ YILLIK DERS PLANI

Algoritmik Program Tasarımı, Akış Şemaları ve Programlama. Bilgisayar Mühendisliğine Giriş 1

Programlama Giriş. 17 Ekim 2015 Cumartesi Yrd. Doç. Dr. Mustafa YANARTAŞ 1

Hafta 4 Döngü Yapıları

KBÜ. TBP101 Programlama Temelleri. Öğr. Gör. Dr. Abdullah ELEN KARABÜK ÜNİVERSİTESİ.

PROGRAMLA MA DİLLERİ I

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

Ana Bellek (RAM) İşlemci (CPU) Depolama

C SHARP UYGULAMA ÇALIŞMASI

DERS NOTLARI. : Algoritma ve Programlamaya Giriş. Ders Adı

2. BÖLÜM. Problem Çözme ve Algoritmalar

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-4 Döngü Yapıları. Yrd. Doç. Dr. Ümit ATİLA

ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

Bilgisayar Programlama. 1.Hafta

BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ. Yrd.Doç.Dr. Emel ARSLAN

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

BÖLÜM 2: ALGORİTMALAR

BİLGİSAYAR PROGRAMLAMA DERSİ

ALGORİTMA VE PROGRAMLAMA I

Transkript:

BÖLÜM 1 1- GİRİŞ Programcılık tarihinin başlangıcı 1940'lı yıllara uzanmaktadır. Bilgisayar olarak nitelendirilebilecek araçlar üzerinde yapılan çalışmaların sonucunda bu yıllardan itibaren artık programlama olgusu bir gereksinim olarak kendisini göstermiştir. Ancak bu programlama günümüz şeklindeki gibi değildi. Hesaplamayı yapan donanımın anlayacağı komutlarla yazılırdı ilk programlar. Bu komutlar da, 1 ve 0 değerlerinden yani bilgisayar elektroniğinin temel yapı taşı olan değerlerden oluşmaktaydı. Bilgisayar(!) olarak nitelendirebileceğimiz bu aygıtlar için yazılan programlar da sonuçta aşağıdaki gibi idi. 101001011110 000001010100 010101111100 1950 yıllarla birlikte programcılık konusunda yapılan geliştirme çalışmaları sonuçlarını verdi ve makinaların değil de insanın anlayacağı türde komutlardan oluşan programlama dilleri ortaya çıkmaya başladı. COBOL, FORTRAN, ADA gibi diller bunlardan bir kaçıdır. Bu programlama dilleri ACCEPT, OPEN, PRINT, WRITE gibi konuşma dilinde yer alan komutları kullanıyordu. Bu programlama dilleriyle, insanların anlayacağı şekilde yazılmış olan programlar "derleyici"ler aracılığıyla makinanın anlayacağı forma dönüştürülürlerdi. Daha sonra özellikle 1970'li yıllarla birlikte yapısal programlama dilleri kendini göstermeye başlamıştır. Pascal, C, Basic gibi diller bunların en yaygın olanlarıdır ve 1980'li yıllardan itibaren kullanımları iyice yaygınlaşmıştır. Bu yıllardan itibaren bu programlama dillerine ek olarak dbase, Clipper, FoxPro gibi veritabanı uygulamalarına yönelik yeni programlama dilleri devreye girerken programlama alanında da object-oriented (nesne-tabanlı) yaklaşım kabul görmüştür. 1990'lardan itibaren Windows'un yaygınlaşmasıyla programcılık alanında artık yeni bir açılım, yakalanmış, görsel programlama, günümüze kadar gelen döneme damgasını vurmuştur. Visual Basic ve Visual C bunların en temelleri olurken Oracle, Progress gibi yeni ürünlerle günümüzün programlama dili yelpazesi oluşmuştur. Tüm bu programlama dillerine paralel olarak 1950'li yıllardan beri kullanılan bir programlama dili ise hiç bir zaman popülaritesini ve gerekliliğini kaybetmemiştir: Assembly. Assembly, mikroçiplerin komut setinden oluşan bir programlama dilidir ve ait olduğu mikroişlemciye göre farklı komut setine sahiptir. Macintosh bilgisayarlarında kullanılan Motorola işlemcilerinin komut seti ayrı, Intel tabanlı PC'lerin kullandığı mikroişlemcilerin komut seti ayrı yine, SUN bilgisayar sistemlerinin kullandığı Spark işlemcilerinin komut seti ayrıdır ama sonuçta hepsi Assemly programlama dili ile programlanabilmektedirler. Assembly programlama dili, çamaşır 1

makinasından endüstriyel üretim yapan makinalara kadar mikroişlemci kullanan tüm aygıtların kontrol devrelerinin programlanmasında kullanılmaktadırlar.. 1-1 PROGRAMLAMA Bilgisayar programı bilgisayar sisteminde yapılması gereken işleri tam olarak tanımlamaya yarayan tanımlar kümesidir. Diğer bir deyişle program, bilgisayardan yapması istenilenleri tanımlayan işlem konutlarından oluşur. Bu programın yazım kurallarına Programlama Dili denir. Doğal dillerde olduğu gibi, programlama dillerinin de kullanım kuralları ve geliştirme vardır. Çok sayıda programlama dili bulunmakla beraber, hepsinde ortak olan, bilgisayarın işlemlerini yönetmeye yönelik komut tanımları yer alır. Giriş/Çıkış, matematiksel, ve komutları yönlendirmeye yönelik denetim komutları gibi. Sözünü ettiğimiz dil makineden bağımsız, diğer bir deyişle taşınabilir Üst düzey Dillerdir. Bilgisayar programlaması sırasında izlenebilecek bir çok yol ve yöntem vardır. Bilgisayar programcısının problemin ilişkin çözümünü ortaya çıkarabilmesi için problem çözümü ile ilgili bilgileri bilmesi gerekir. Bilgisayar programlamasında genel olarak belirli kalıp ve kurallara uyulur. Bir bilgisayar yazılımının oluşturulması sırasında genel olarak aşağıda sıralanan ana adımlara uyulur. * Problemin tanımı * Çözüm yönteminin belirlenmesi * Programın kodlanması * Programın çalışır duruma getirilmesi * Belgeleme ve güncelleştirme Problemin Tanımı: Problemin normal yazı diliyle tanımlanması işlemlerini kapsamaktadır. Problem çözümüne ilişkin iyi bir program yapabilmek için, problemin iyi bir şekilde tanımlanması gerekir. Çözüm Yönteminin Belirlenmesi: Bu adımda çözümün genel yaklaşımı, giriş/çıkış şemaları hazırlanır ve problem çözümü adım adım program akış diyagramlarıyla gösterilir. Programın Kodlanması: Program ayrıntılı olarak tanımlanıp çözüm yolları açıkça belirtildikten sonra program kodlama çalışmalarına başlanabilir. Programın baştan sona yapısal bir düzende hazırlanması ve uygun bir programlama dili seçilmesi seçim işleminin ilk aşamasını oluşturur. 2

Programın Çalışır Hale Getirilmesi: Programın kodlanması sırasında yapılan imla hataları, kodlama ve mantık hatalarının giderilmesi işlemlerini kapsar. İyi bir bilgisayar programının doğruluğundan emin olmak için defalarca test edilmiş olması gerekmektedir. Belgeleme ve Güncelleştirme: Oluşturulan bir yazılımı, sadece o yazılımı geliştiren kişilerin kullanabilmesi gibi bir kısıtlamanın önüne geçmek için ayrıntılı referans hazırlanması olayına belgeleme denilmektedir. Bir yazılımda, o yazılımı kullanan kişi veya kuruluşların yeni gereksinimleri ve değişen koşullar nedeniyle değişiklikler yapılması gerekli olabilir. Bu değişikliklere güncelleme adı verilir. İyi bir programda bulunması gereken özellikler arasında güncellenebilme özelliği ön sıralarda yer almaktadır. 1.2 ALGORİTMA KURMA Algoritma, verilen herhangi bir sorunun çözümüne ulaşmak için uygulanması gerekli adımların hiç bir yoruma yer vermeksizin açık, düzenli ve sıralı bir şekilde söz ve yazı ile ifadesidir. Algoritmayı oluşturan adımlar özellikle basit ve açık olarak sıralandırılmalıdır. Algoritmik çözüm yöntemlerine ilk örneği günlük yaşantımızdan verelim. Örnek : Örneğimiz bir insanın evden çıkıp işe giderken izleyeceği yolu ve işyerine girişinde ilk yapacaklarını tanımlamaktadır. Çözüm : Evden dışarıya çık Otobüs durağına yürü Durakta gideceğin yöndeki otobüsü bekle Otobüsün geldiğinde otobüse bin Biletini bilet kumbarasına at İneceğin yere yakınlaştığında arkaya yürü İneceğini belirten ikaz lambasına bas Otobüs durunca in İşyerine doğru yürü İş yeri giriş kapısından içeriye gir Mesai arkadaşlarınla selamlaş İş giysini giy İşini yapmaya başla. 3

Yukarıdaki örnekte görüldüğü gibi, evden işe gidişte yapılabilecek işlemler adım adım sırasıyla, kısa ve açık olarak tanımlanmaya çalışılmıştır. Yukarıdaki algoritma kişinin otobüsü kaçırma olasılığı düşünülmeden oluşturulmuştur. Kişi durağa geldiğinde bineceği otobüsü kaçırmış ise algoritmamız aşağıdaki şekilde değiştirilebilir. Çözüm : * Evden dışarıya çık * Otobüs durağına yürü * Otobüsün saati geçmiş? * Durakta gideceğin yöndeki bir sonraki otobüsü bekle * Bir sonraki otobüs gelene kadar 4. adımı uygula * Otobüsün geldiğinde otobüse bin * Biletini bilet kumbarasına at * İneceğin yere yakınlaştığında arkaya yürü * İneceğini belirten ikaz lambasına bas * Otobüs durunca in * İşyerine doğru yürü * İş yeri giriş kapısından içeriye gir * Mesai arkadaşlarınla selamlaş * İş giysini giy * İşini yapmaya başla. Her iki örnekte görüldüğü gibi sorunu çözüme götürebilmek için gerekli olan adımlar sıralı ve açık bir biçimde belirlenmiştir. Algoritmanın herhangi bir adımındaki küçük bir yanlışlık doğru çözüme ulaşmayı engelleyebilir. Bu nedenle algoritma hazırlandıktan sonra dikkatle incelenmeli ve varsa adımlardaki yanlışlıklar düzeltilmelidir. Programlamanın temeli olan algoritma hazırlanmasında dikkat çekici bir nokta, aynı sorunu çözmek için hazırlanabilecek olası algoritma sayısının birden çok olmasıdır. Başka deyişle, bir sorunun çözümü için birbirinden farklı birden fazla sayıda algoritma 4

hazırlanabilir. Bu da gösteriyor ki herhangi bir problemin çözümü için birbirinden farklı yüzlerce bilgisayar programı yazılabilir. Bir bilgisayar programı için hazırlanacak olan algoritma da aynı şekilde çözüm yolunu bilmeyen bir kişiye, çözüme ulaşmak için neler yapması gerektiği anlatılıyormuş gibi hazırlanmalı ve eksik bir nokta bırakmaksızın gerekli tüm adımları açık ve düzenli olarak içermelidir. Çözüm için kullanılacak bilgilerin nereden alınacağı, nerede saklanacağı ve çözümün program kullanıcısına nasıl ulaştırılacağı algoritma adımları arasında belirtilmelidir. Aşağıda değişik işlemlere ilişkin algoritma örnekleri verilmiştir. Örnek : İki sayıyı toplamak için gerekli programa ait algoritmanın oluşturulması. Algoritma A1 :Birinci sayıyı gir A2 :İkinci sayıyı gir A3 :İki sayının toplamını yap A4 :Toplamın değerini yaz A5 :Bitir. Bu tam bir algoritmadır. Sözcüklerin ortaya çıkaracağı yanlış anlamaların ortadan kaldırmak amacıyla semboller ve matematik dilini gerektiren bazı kısaltmalar kullanmak daha uygun olacaktır. Bir algoritma yazılırken şu metot izlenmelidir: 1- Programda kullanılacak elemanları temsil etmek üzere uygun isimler veya değişkenler seç. 2- Bazı isimlere başlangıç değeri olarak çözümün gerektirdiği uygun değerler ver. 3- Gerekirse programa girilecek verileri düzenle. 4- Cebirsel notasyon ve kararlar kullanarak aritmetik işlemleri gerçekleştir. 5- Çıkışı düzenle. 6- Bitir. 5

Yukarıda iki sayının toplanması için oluşturduğumuz algoritmayı bu yeni gereksinimlere uyarak yeniden yazalım. Algoritma Toplam adı için Z Birinci Sayı için X İkinci Sayı için Y değerleri kullanılırsa; A1 :X değerini gir A2 :Y değerini gir A3 :Z X+Y A4 :Z yi yaz A5 :Bitir Görüldüğü üzere bu şekilde bir algoritma ile çözüm yolunu izlemek daha kolaydır. Bundan sonra bu tip algoritma kullanılacaktır. A6 :Bitir Bu örnekte Ort değeri ile iki sayının ortalaması temsil edilmiştir. Örnek : Beş sayının toplamını ve ortalamasını veren programa ait algoritmanın oluşturulması Toplam adı için Top Ortalama adı için Ort Girilen sayılar için X Arttırma için Sayac kullanılırsa 6

Algoritma A1 :Top 0, Sayac 0 A2 :X i gir A3 :Top Top+X A4 : Sayac Sayac +1 A5 :Eğer Sayac <5 ise A2 ye git A6 :Ort Top/5 A7 :Top ve Ort değerlerini yaz A8 :Bitir Örnek : Kenar uzunlukları verilen dikdörtgenin alan hesabını yapan programa ait algoritmanın hazırlanması. Kenar uzunlukları negatif olarak girildiği durumda veri girişi tekrarlanacaktır. Dikdörtgenin kısa kenarı : a Dikdörtgenin uzun kenarı : b Dikdörtgenin alanı : Alan Algoritma A1 :a değerini gir A2 :a<0 ise 1. adımı tekrarla A3 :b değerini gir A4 : b<0 ise 3. adımı tekrarla A5 :Alan a*b A6 :Alan değerini yaz A7 :Bitir 7

Örnek : Verilen bir sayının faktöriyelini hesaplayan programın algoritmasının oluşturulması Algoritma: Sayının faktöriyeli :Fak Faktöriyel degişkeni :X Faktöriyeli hesaplanacak sayı :Y A1 :Fak 1, X 0 A2 :Y i gir A3 :Y<0 ise 2. adımı tekrarla A4 :X X+1 A5 :Fak Fak*X A6 :X<Y ise 4. adıma geri dön A7 :Fak değerini yaz A8 :Bitir Bu algoritmada 1. adımda X e 0 ve Fak değişkenine 1 değeri atanıyor. 2. adımda Y değeri giriliyor ve 3. adımda Y değerinin 0 dan küçük bir değer olup olmadığı denetleniyor ve denetim sonucuna göre gerekli komut veriliyor. 4. adımda X in değeri 1 arttırılıyor ve 5. adımda X için Fak değeri hesaplanıyor. 6. adımda X in değerinin faktöriyeli hesaplanacak sayıdan küçük olması durumunda 4. adımdan itibaren işlemlerin tekrarlanması komutu veriliyor, X in değerinin Y ye eşit olması durumunda işlemler tamamlanarak hesaplanan değerin yazdırılması işleminden sonra programın çalışması sona ermektedir. 1-3 AKIŞ DİYAGRAMLARI Geliştirilecek olan yazılımın genel yapısının şematik gösterimine akış diyagramı veya blok diyagramı adı verilir. Akış diyagramları, yazılımı oluşturacak program parçalarını ve bu parçaların birbirleri ile olan ilişkilerini belirler. Bir bilgisayar programının oluşturulmasında akış diyagramlarının hazırlanması, algoritma oluşturma aşamasından sonra gelmektedir. Bilgisayar programının oluşturulması 8

sırasında algoritma aşaması atlanarak, doğrudan akış diyagramlarının hazırlanmasına başlanabilir. Programlama tekniğinde önemli ölçüde yol almış kişiler bu aşamayı da atlayarak direkt olarak programın yazımına geçebilirler. Akış diyagramlarının algoritmadan farkı, adımların simgeler şeklinde kutular içinde yazılmış olması ve adımlar arasındaki ilişkilerin (iş akışı) oklar ile gösterilmesidir. Akış diyagramlarında kullanılan semboller, anlamları ve kullanış amaçları aşağıdaki tabloda verilmiştir. Elips: Akış diyagramının başlangıç ve bitiş yerlerini gösterir. Başlangıç simgesinden çıkış oku vardır. Bitiş simgesinde giriş oku vardır. Paralel Kenar: Programa veri girişi ve programdan elde edilen sonuçların çıkış işlemlerini gösterir. Dikdörtgen: Aritmetik işlemler ve değişik atama işlemlerinin temsil edilmesi için kullanılır. Eşkenar Dörtgen : Bir karar verme işlemini temsil eder. Altıgen : Program içinde belirli blokların ard arda tekrar edileceğini gösterir. 9

Oklar: Diyagramın akış yönünü,yani her hangi bir adımdaki işlem tamamlandıktan sonra hangi adıma gidileceğini gösterir. Ayrıntılı bir akış diyagramı, yazılımı oluşturan işlemleri ve ilişkilerini en küçük detayına kadar belirler. Bir bilgisayar programının geliştirilmesinde kullanılan programlama dili ne olursa olsun bu programların akış diyagramlarında genel olarak yalnız üç basit mantıksal yapı kullanılır. Bu mantıksal yapılardan en basiti sıralı yapıdır. Sıralı yapı, hazırlanacak programdaki her işlemin mantık sırasına göre nerede yer alması gerektiğini vurgular. Bu yapı sona erinceye kadar ikinci bir işlem başlayamaz. Sıralı Yapı Mantıksal yapılardan ikincisi Karar Verme yapısıdır (Şekil 1.3). Programlama sırasında If...Then... Else yapısı ile tanıyacağımız bu mantıksal yapılar, birden fazla sıralı yapı seçeneğini kapsayan modüllerde, hangi şartlarda hangi sıralı yapının seçileceğini belirler. Karar Verme Yapısı 10

Üçüncü mantıksal yapı çeşidini tekrarlı yapılar oluşturmaktadır. Bu yapılara Pascal programlama dilinde For(Şekil 1.4.a), While ve Repeat..Until (Şekil 1.4.b), yapısı adı da verilir. Şartlara göre değişik işlem gruplarının yapılmasını sağlar. Bu yapı yukarıda sözü edilen iki yapının çeşitli kombinezonların tekrarlanmasından oluşmuştur. Söz konusu üç değişik yapı, değişik kombinezonlarda kullanılarak istenilen işlevleri yerine getirecek programlar hazırlanabilir. Programların bu üç basit yapı ile sınırlandırılması program modüllerinin daha kolay tasarlanmasını sağlar. a b Tekrarlı Yapı 11