PROGRAMLAMAYA GĐRĐŞ I

Benzer belgeler

Algoritmalar ve Programlama. Algoritma

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

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

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

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

KONTROL YAPILARI (CONTROL STRUCTURES)

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

Algoritma ve Programlamaya Giriş

Bilgisayarda Programlama. Temel Kavramlar

Algoritma ve Akış Diyagramları

BÖLÜM 2: ALGORİTMALAR

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

Ö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.

SAB104 Bilgisayar Programlama

İÇ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

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

PASCAL PROGRAMLAMA DİLİ YAPISI

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

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

ÖDEV (Vize Dönemi) CEVAPLAR. 1. Ekrana Merhaba Dünya! yazdıran algoritmanın akış diyagramını çiziniz ve sözde kod olarak yazınız.

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

DİZİLER. Bu ünitede yapılan örnekler Visual Studio 2010 programındaki Visual Basic programlama diliyle çözülmüştür.

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

BİLGİSAYAR PROGRAMLAMA MATLAB

PROGRAMLAMAYA GİRİŞ DERS 2

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Đ

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

Algoritma ve Programlama: Karar Yapıları ve Döngüler

Algoritmanın Hazırlanması

Diziler İndisli Değişkenler

BMT 101 Algoritma ve Programlama I 6. Hafta. Yük. Müh. Köksal Gündoğdu 1

Genel Programlama I

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

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.

İÇ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

ALGORİTMA VE PROGRAMLAMA I

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

Algoritma ve Akış Diyagramları

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

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

Dr. Musa KILIÇ Öğretim Görevlisi

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

Length: metin uzunluğunu yada diğer bir deyişle dizi elaman sayısını döndürür.

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

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

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır.

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

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır.

ALGORİTMA NEDİR? (Adım adım işlem basamaklarının yazılmasıdır.)

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 8

HSancak Nesne Tabanlı Programlama I Ders Notları

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

Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir

Bilgisayar II Dersi. Bölüm-2

MATLAB de. Programlama. Kontrol Yapıları. Döngü Yapıları. Doç. Dr. İrfan KAYMAZ Matlab Ders Notları

YZM 2105 Nesneye Yönelik Programlama

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

PHP, nesne-yönelimli (object-oriented) bir dil olduğu için, nesne oluşturma imkânına ve bunların kullanılmasını sağlayan metodlara da sahiptir.

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

Algoritma ve Akış Şemaları

PROGRAM AKIŞ DİYAGRAMLARI

I=[1,0,0,0;0,1,0,0;0,0,1,0;0,0,0,1] % 4x4 lük birim matris

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

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA

Programlama Dilleri. C Dili. Programlama Dilleri-ders02/ 1

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

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

ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

Örnek 4: Örnek Özyinelemeli fonksiyon örneği Bölüm 9. C++ programlama dilinde Nesne ve sınıf

Pascal Programlama Dili

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

4- ALGORİTMA (ALGORITHM)

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

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

Visual Basic 6.0. Anadolu Üniversitesi Endüstri Mühendisliği Bölümü. Değişkenler ve Veri tipleri. Ders Notları

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

1.BÖLÜM PROGRAMLAMA ve TEMEL KAVRAMLAR

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

Özyineleme (Recursion)

ALGORİTMA VE AKIŞ ŞEMALARI

BİL1001 Bilgisayar Bilimlerine Giriş 1

C# Yazım Kuralları ERCİYES. Ü. BİLGİSAYAR M. COMPUTER PROGRAMMING II 1 FEHİM KÖYLÜ

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

BMT 101 Algoritma ve Programlama I 7. Hafta. Yük. Müh. Köksal Gündoğdu 1

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

Fortran komut satırı toplam 80 kolon ve 5 bölgeden oluģur. Komut satırının yapısı aģağıdaki gibidir:

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

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

Algoritma kelimesinin kökeni:

BİLGİSAYAR PROGRAMLAMA DERSİ

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

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

HSancak Nesne Tabanlı Programlama I Ders Notları

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

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1

BİLGİSAYAR MÜHENDİSLİĞİ ALGORİTMA VE PROGRAMLAMA II 2.HAFTA SWİTCH (CASE), SAYAÇLAR, DÖNGÜLER,

ALGORİTMA TASARIMI VE SCRATCH UYGULAMASI

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

Transkript:

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. - 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) : 194' te New ampshire' deki (USA) Dartmouth kolejinde John G. Kemeney (192-93) ile Thomas. 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 ataları Mantık ataları 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. TML KAVRAMLAR KOMUT (Command): Bilgisayarın herhangi bir işlemin nasıl yapılacağını belirten emirlerdir. er 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. DĞĐŞKNLR (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. DOĞRU TANIMLAMALAR Girne15 Al23 DOGUM_YRI ATALI TANIMLAMALAR 14BOLU adi Soyadi sa:at 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 B 3 9 14 9 14 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ü tanımlar. [Bunlar; integer, byte, long,double,single,long,string,boolean,currency gibi ] 3

ğ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 Veri Tipi Bellek Alanı Değer Aralığı String Karaktersel 1 karakter 1 bayt 5.535 Integer Tamsayı 2 bayt -32.78 to 32.77 Long uzun tamsayı 4 bayt 2.147.483.47 Single tek duyarlı sayısal 4 bayt 3.4x10^38 Double çift duyarlı sayısal 8 bayt 1,7x10^308 Currency para-çok büyük Sayı 8 bayt 922.337.203.85.447 Byte tamsayı 1 bayt 0 to 255 Boolean doğru/yanlış 2 bayt True / False Date tarih 8 bayt 1/1/100 to 12/31/9999 Variant 1 bayt + her karakter için 1 byte String değişkenler; aralarına + veya & sembolü konarak birbirlerine eklenebilirler. SABĐTLR (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 OPRATÖRLR: Đşlem yapmamızı sağlayan işaretlerdir (+,-,*,/,=,% gibi ). Programlama dillerinde değişik operatörler kullanılmaktadır. ĐŞLMLR Aritmetik Operatör Matematiksel Notasyon VB ve QB Notasyonları Toplama + X+Y X+Y Çıkartma - X-Y X-Y Çarpma * (YB)(Y.B) (Y*B) Y*B Bölme / V/A ve V V/A A Bölme(tamsayı) \ V\A Üs alma ^ Q P Q^P Mod alma Mod Q mod P Q mod P String birleştirme & Çanak kale Çanak & kale Negatif -Y -Y 4

Đşlem öncelik sırası Sıra Tanım Matematik Bilgisayar 1 Parantezler (( )) (( )) 2 Üs Almak a n a^n 3 Çarpma ve Bölme ab a/b a*b a/b 4 Toplama ve Çıkarma 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: Matematiksel: y=pr q +w/x-z Visual Basic : y = p * r ^ q + w / x - y y = 2.4 2 + / 2 9 y = 2*1+ / 2-9 y = 32 + /2 9 y = 32 + 3 9 y = 35 9 y = 24 2 1 4 3 5 KARŞILAŞTIRMA OPRATÖRLRĐ Verilerin birbiriyle karşılaştırılmasında kullanılır. Sonuç doğru ise 1, yanlış ise 0 değerini alır. ĐŞLM OPRATÖR KARŞILAŞTIRMA NOTASYONU VBasic NOTASYONU Küçüktür < A < B A < B Büyüktür > A > B A > B Küçük eşit <= A B A <= B Büyük eşit >= A B A >= B şittir = A = B A = B şit değil < > A B A < > B MANTIKSAL OPRATÖRLR 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. ĐŞLM OPRATÖR KARŞILAŞTIRMA NOTASYONU VBasic NOTASYONU Ve AND A V B A AND B Veya OR A VYA B A OR B Değil NOT A DĞĐL B A NOT B Özel veya XOR Şartlardan biri doğru ise 1 sonucunu değilse 0 sonucu verir A XOR B 5

ÖRNK 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 = FALS 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 = TRU sonucu elde edilir. AKIŞ ŞMALARI(FLOW CARTS) Algoritmanın,görsel olarak simge ya da sembollerle ifade edilmesine "akış şeması" veya FLOWCART 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ı nstitüsünün (ANSI) belirlediği akış diyagramlarında kullanılan semboller ve kullanım amaçları BAŞLA /DUR ĐŞLM krandan okuma ve yazma Sayfa içi Bağlantı Genel giriş/çıkış KARAR DÖNGÜ ÇIKTI Sayfa dışı bağlantı 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 Ö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: krana 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. ğer sayac<5 GĐT 3. adıma. DUR 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 : Klavyeden girilen X değerine göre fonksiyonu gerçekleştiren program. F(x)= 3X 2 + 4X + 2, X > 0 ise X + 1, X =0 ise 4X 3 + 2X 2 + 4, X<0 ise Algoritma : Akış Şeması : 1.Başla 2.X değerini gir. 3. ğer X>0 ise Fx=3*X*X + 4*X + 2 4. ğer X=0 ise Fx=X+1 5. ğer X<0 ise Fx=4*X*X*X +2*X*X+4. Fx i yaz 7. Dur. 7

Örnek 7: Aşağıdaki akış diyagramına göre N değeri girilirse M ve I nın ekrandaki çıktısı nasıl olur? BAŞLA N M=1 I=2 M=M*I I=I+1 I M N I > N 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 ĐL Ş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 /TN KOMUTU ĐL ŞARTA BAĞLI DALLANMA Bu kullanımda eğer IF den sonra verilen şart sağlanırsa Komut1 şart sağlanmazsa LS den sonraki Komut2 gerçekleştirilir. ğer < koşul > ise yap değilse yapma IF = < > > < >= <= TN Komut1.. LS Komut2.. 3.KOŞUL SÜRDÜKÇ DVAM DN ĐŞLMLR 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 işlemler Koşul işlemler Koşul 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. ÖRNK: IF sayi<0 TN PRINT Sayı Negatif LS PRINT Sayı Sıfır ya da Pozitif ÖRNK: Girilen yaş değerine göre kişinin durumunu bulan programı yazınız. 0 5 BBK 14 ÇOCUK 15 28 GNÇ 29 39 ORTA YAŞLI 40 ve ÜSTÜ ĐTĐYAR Algoritma..; 1.Başla 2.Yaş Değerini gir 3.ğer 0<=yas <= 5 ise Bebek 4.ğer 5<=yas <= 14 ise Çocuk 5.ğer 15<=yas <=28 ise Genç.ğer 29<=yas <=39 ise Orta Yaşlı 7.ğ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 >= 4 Then Print "Đhtiyar" nd Sub 10

2. Kullanım: IF <Şart> TN <Yapılacak Đşlemler> LS <Yapılacak Đşlemler> ND IF Private Sub Command1_Click() Dim not1 As Integer not1 = Val(InputBox("Notu giriniz")) If not1 >= 50 Then Print "Geçti" nd If If not1 < 50 Then Print "Kaldı" nd If nd Sub if Then yapısı tek satıra sığmıyorsa nd 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 nd Sub SLCT CAS YAPISI Yapısı.: Select Case... nd 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 Case d2 case d3 to d9 case is > d10 Case lse nd Select Değişkenin d1 değeri aldığı durumlarda yapılacak işlemler Değişkenin d2 değeri aldığı durumlarda yapılacak işlemler d3 ve d9 aralığındaki tüm değerler için yapılacak işlemler Değişkenin d10 dan daha büyük değerler aldığında yapılacak işlemler Değişkenin farklı değerler aldığı durumlarda yapılacak işlemler Koşul sayısının 5 den fazla olduğu durumlarda bu yapıyı tercih etmek daha iyi olur. ÖRNK: 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Ş DĞRĐNĐ GĐRĐNĐZ=")) 11

Select Case yas Case 0 To 5: Print "BBK" Case To 14: Print "ÇOCUK" Case 15 To 29: Print "GNÇ" Case 30 To 45: Print "ORTA YAŞLI" Case lse Print "ĐTĐYAR" nd Select nd 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=Toplam+I I Topla m DUR Toplam= 0 I=1,10,1 I.sayıyı gir: Toplam=Toplam+Sayı I Topla m 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. )Đç içe döngülerde dikkat edilmelidir. ÖRNKLR 1) 0 dan 100 e kadar olan tek sayıların toplamını bulan program. CLS TOP=0 FOR I=1 TO 100 STP 2 TOP=TOP+1 NXT I PRINT TOPLAM= ; TOP ND 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 NXT I PRINT S1; * ; S2 ; =, CARP ND KONTROL YAPILARI ÖZT 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. nd 2-Karar yapıları 1. Tek seçim 2. Çift seçim 3. Çoklu seçim 2.1. Tek seçim(if / TN yapısı) Örnek: Sayı sıfırdan büyük ise girilen sayının karesini al INPUT sayı IF sayı >0 TN kare=sayı^2 PRINT kare ND 2.2. Çift seçim (IF / TN... LS 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 TN kare=sayı^2 LS kare=sayı^(1/2) PRINT kare ND 2.3. Çoklu seçim Selece Case kullanılır veya iç içe IF yapıları kullanılır. 13

IF / TN YAPISI IF / TN / LS Koşul Đşlemler B=Y A B SLCT CAS YAPISI (ÇOKLU SÇĐM) Koşul Đşlemler Koşul Đşlemler Koşul Đşlemler DÖNGÜLR 1.Tekrar sayısı belli döngüler For Next Döngüsü Örnek: krana 10 defa GMYO yazan program işlemler Koşul işlemler CLS FOR i = 1 TO 10 PRINT GMYO NXT i ND 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 Örnek: CLS SAYI = val(inputbox ( bir sayı giriniz )) Do While SAYI < > 0 KAR =SAYI^2 Loop PRINT KAR ND 3- 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 ĐŞLMLR KOŞUL KOŞUL ĐŞLMLR 15

Do While / Loop Do / Loop While KOŞUL Cls T=0,S=0 Do While s < 101 S=s+1 T=t+s xit do Loop Print t ĐŞLMLR kran Çıktısı 5050 ĐŞLMLR KOŞUL A=5 Do A=a+1 Loop while a<3 Print a kran Çıktısı Đç içe for döngüleri 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) Örnek: Çarpım Tablosu 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 1

DĐZĐLR 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 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ı leman sayısı - indis Option Base 1 Dim boy(10) 10 elemanlı Bu tür dizilere tek boyutlu dizi denir. Matematiksel olarak da vektör adı verilir. ÖRNK-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() = "Cumartesi" gün(7) = "Pazar".... nd Sub 17