ALGORĠTMA VE PROGRAMLAMA (Bölüm 2-3)

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "ALGORĠTMA VE PROGRAMLAMA (Bölüm 2-3)"

Transkript

1 ALGORĠTMA VE PROGRAMLAMA (Bölüm 2-3) 1

2 BĠLGĠSAYARDA ĠġLEMLER Algoritma (Psedo Kod ve AkıĢ Diyagramı) konusuna daha fazla devam etmeden önce Bilgisayar programları ile gerçekleģtirilen iģlemlere genel olarak bir göz atalım: Bu iģlemler temelde 3 Grupta toplanabilir: 1) Matematiksel ĠĢlemler 2) KarĢılaĢtırma(Karar) ĠĢlemleri 3) Mantıksal(Lojik) ĠĢlemler 2

3 ĠĢlemler (Devam) Matematiksel ĠĢlemler (Devam) 1. Matematiksel ĠĢlemler: Temel Aritmetik ĠĢlemler; (Toplama,çıkarma,çarpma,bölme) Matematiksel Fonksiyonlar; (Üstel,logaritmik,trigonometrik,hiperbolik vb.) 3

4 ĠĢlemler (Devam) Matematiksel ĠĢlemler (Devam) İşlem Toplama a+b Çıkarma a-b Matematikte Bilgisayarda a+b a-b Çarpma a.b a*b Bölme a:b a/b Üs alma a b a^b 4

5 ĠĢlemler (Devam) Matematiksel ĠĢlemler (Devam) Öncelik Sırası Ġşlem Bilgisayar dili 1 Parantezler ((.)) 2 Üs alma a^b 3 Çarpma ve bölme a*b ve a/b 4 Toplama ve çıkarma a+b ve a-b NOT: Bilgisayar diline kodlanmıģ bir matematiksel ifadede, aynı önceliğe sahip iģlemler mevcut ise bilgisayarın bu iģlemleri gerçekleģtirme sırası soldan sağa (baģtan sona) doğrudur. Mesela ; Y=A*B/C iģleminde; Önce A*B iģlemi yapılacak, ardından bulunan sonuç C ye bölünecektir. 5

6 ĠĢlemler (Devam) Matematiksel ĠĢlemler (Devam) 6

7 ĠĢlemler (Devam) Karar (KarĢılaĢtırma)ĠĢlemleri 2. Karar (KarĢılaĢtırma)ĠĢlemleri Operator KarĢılaĢtırma Operatörleri > Daha büyük < Daha küçük = EĢit Tanımı Daha büyük veya eģit Daha küçük veya eģit EĢit değil 7

8 ĠĢlemler (Devam) Karar (KarĢılaĢtırma)ĠĢlemleri (Devam) A>B bir karģılaģtırma (mukayese) ifadesidir. Test etmek istediğimiz bir Ģartı tanımlar Bu Ģartın sağlanıp sağlanmama durumuna göre farklı iģlemler yapılabilir. Örnek olarak; A>B ise A nın değerini, aksi halde B değerini yazan psedo kod (parçası) yazalım: 8

9 ĠĢlemler (Devam) Karar (KarĢılaĢtırma)ĠĢlemleri (Devam) Psedo kod (parçası) Ģöyle olacaktır: Eğer A>B doğru ise A nın değerini yaz. Değil ise (Aksi halde) B nin değerini yaz. Not: A=B durumu, A<B ile birlikte Değil ise durumuna dahil olacaktır. 9

10 ĠĢlemler (Devam) Karar (KarĢılaĢtırma)ĠĢlemleri (Devam) Bu Karar yapısını AkıĢ Diyagramı (parçası) olarak gösterelim; E A>B Mi? H A yı yaz B yi yaz 10

11 ĠĢlemler (Devam) Karar (KarĢılaĢtırma)ĠĢlemleri (Devam) Bir baģka yapıya örnek olarak; Eğer A>B doğru ise ĠġLEM i yaparak tekrar test eden, A>B doğru değil ise (aksi halde) B nin değerini yazan bir karar yapısına ait bir AkıĢ Diyagramı (parçasını) gösterelim. 11

12 ĠĢlemler (Devam) Karar (KarĢılaĢtırma)ĠĢlemleri (Devam) AkıĢ Diyagramı (Parçası) ĠġLEM E A>B Mi? H B yi yaz 12

13 ĠĢlemler (Devam) Karar (KarĢılaĢtırma)ĠĢlemleri (Devam) Bir baģka yapı için örnek olarak; Eğer A>B doğru ise A değerini yazdıktan sonra devam eden, A>B doğru değil ise (aksi halde) A değerini yazmadan devam eden Karar yapısına ait bir AkıĢ Diyagramı (Parçasını) çizelim. 13

14 ĠĢlemler (Devam) Karar (KarĢılaĢtırma)ĠĢlemleri (Devam) AkıĢ Diyagramı (Parçası) A>B Mi? H E A değerini yaz 14

15 ĠĢlemler (Devam) Karar (KarĢılaĢtırma)ĠĢlemleri (Devam) Daha farklı Karar Yapıları bulunmakla birlikte bunları ilerdeki uygulamalarımıza bırakarak (tam) birkaç örneği; hem psedo hem de AkıĢ Diyagramı olarak inceleyelim; 15

16 ĠĢlemler (Devam) Karar (KarĢılaĢtırma)ĠĢlemleri (Devam) Örnek 6 :Girilen iki değeri mukayese ettikten sonra büyük olanı yazan bir psedo (sözde) kod ve akıģ diyagramı veriniz. Psedo Kod: 1. BaĢla 2. DEGER1 ve DEGER2 yi Girin 3. Eğer (DEGER1 > DEGER2) ise MAX a DEGER1 i aktar 4. Değilse(Aksi halde) MAX a DEGER2 yi aktar 5. MAX değerini yaz 6. Son 16

17 ĠĢlemler (Devam) Karar (KarĢılaĢtırma)ĠĢlemleri (Devam) AkıĢ Diyagramı BAġLA DEGER1,DEGER2 YĠ GĠRĠN E DEGER1>DEGER2 MĠ? H MAX DEGER1 MAX DEGER2 MAX DEĞERĠNĠ YAZ DUR 17

18 ĠĢlemler (Devam) Karar (KarĢılaĢtırma)ĠĢlemleri (Devam) Örnek 7 : 3 sayıyı (N1,N2,N3) okuyan ve en büyük değeri yazan bir program için psedo kod yazarak AkıĢ Diyagramı çiziniz. 18

19 Psedo Kod: ĠĢlemler (Devam) Karar (KarĢılaĢtırma)ĠĢlemleri (Devam) 1. BaĢla 2. N1, N2, N3 değerlerini girin 3. Eğer (N1>N2) ise; Eğer (N1>N3) ise MAX a N1 i aktar [N1>N2 ve N1>N3] demektir. Aksi halde MAX a N3 ü aktar [N1>N2 ve N3>N1] demektir. 4. Değilse; Eğer (N2>N3) ise MAX a N2 yi aktar [N2>N1 ve N2>N3] demektir. 5. MAX değerini yaz. 6. Son. Aksi halde MAX a N3 ü aktar [ N2>N1 ve N3>N2] demektir. 19

20 ĠĢlemler (Devam) Karar (KarĢılaĢtırma)ĠĢlemleri (Devam) AkıĢ Diyagramı: BAġLA N1,N2,N3 DEĞERLER ĠNĠ GĠRĠN E N1>N2 MĠ? H E H E H N1>N3 N2>N3 MĠ? MĠ? MAX N1 MAX N3 MAX N2 MAX N3 MAX DEĞERĠNĠ YAZ DUR 20

21 3. Mantıksal ĠĢlemler ĠĢlemler (Devam) Mantıksal ĠĢlemler Mantıksal işlem Matematiksel sembol Komut/Operatör VE. AND VEYA + OR DEĞĠL NOT NOT1: VE,VEYA,DEĞĠL operatörleri hem matematiksel iģlemlerde hem de karar ifadelerinde kullanılırlar. NOT2: Bütün Ģartların sağlatılması isteniyorsa Ģartlar arasına VE (AND) Herhangi birinin sağlatılması isteniyorsa Ģartlar arasına VEYA (OR) ġartı sağlamayanlar isteniyorsa DEĞĠL (NOT) mantıksal operatörü kullanılır. 21

22 ĠĢlemler (Devam) Mantıksal ĠĢlemler (Devam) Bir Örnek daha verirsek; Bir sınıfta Bilgisayar dersinden 65 in üzerinde not alıp, Türk Dili veya Yabancı Dil derslerinin herhangi birinden 65 in üzerinde not alanların isimleri istensin. Açıklama: Burada 2 şart vardır: Bilgisayar dersinden 65 in üzerinde not almış olmak temel şarttır. Diğer iki dersin notlarının herhangi birinin 65 in üzerinde olması gerekmektedir. 22

23 ĠĢlemler (Devam) Mantıksal ĠĢlemler (Devam) Bu durumda sadece karģılaģtırmaya ait Psedo Kod (parçası/komutu): Eğer Bilg.Not>65 VE (TDili not>65 VEYA YDil not>65) ise Ġsmi Yaz Not 1: Burada psedo komut için VE, VEYA operatörleri kullanılmıştır. Not 2: Yukarıdaki komut ile ismin yazılabilmesi için ancak Bilg. Not u 65 den büyük olduğu takdirde T.Dili ya da Y. Dil notlarından herhangi birinin 65 den fazla olması şartı aranacaktır. 23

24 Bir baģka Örnek olarak; ĠĢlemler (Devam) Mantıksal ĠĢlemler (Devam) Bir iģyerinde çalıģan iģçiler arasından yalnızca yaģı 23 üzerinde olup MaaĢ olarak Asgari ücret alanların isimleri istenebilir.bu durumda sadece bu kısım için Psedo Kod (parçasını/komutunu) yazarsak : Eğer YaĢ>23 VE MaaĢ=Asgari ücret ise Ġsmi Yaz Not: Ġsmi Yaz komutu 1. ve 2. şartın her ikisi de sağlanıyorsa çalışır. 24

25 ALGORĠTMALARDA SIKÇA KULLANILAN BAZI TERĠMLER Tanımlayıcı DeğiĢken Sabit Aktarma Sayaç Döngü ArdıĢık Toplama ArdıĢık Çarpma Ġçiçe Döngüler 25

26 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Tanımlayıcı: Programdaki ; DeğiĢkenleri, Sabitleri, Kayıt alanlarını, Özel bilgi tiplerini vb. adlandırmak için kullanılan kelimelerdir. Tanımlayıcılar, yerini tuttukları ifadelere çağrıģım yapacak Ģekilde seçilmelidir. ( Ġsim ve Telefon için: adtelef gibi) 26

27 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Tanımlayıcılarda ; Ġngiliz alfabesindeki A-Z veya a-z arası 26 harf ile 0-9 arası rakamlar kullanılabilir. Sembollerden sadece alt çizgi (_) kullanılabilir. Tanımlayıcı isimleri harfle veya alt çizgiyle baģlayabilir. Tanımlayıcı ismi, rakamla baģlayamaz veya sadece rakamlardan oluģamaz. 27

28 Algoritmalarda Sıkça Kullanılan Terimler (Devam) DeğiĢken: Genelde programın her çalıģtırılmasında, farklı değerler alırlar. DeğiĢken isimlendirilmeleri de yukarıda sayılan tanımlayıcı kurallarına uygun Ģekilde yapılmalıdır. Meselâ ; Bir ismin aktarıldığı değiģken; ad Bir isim ve soy ismin aktarıldığı değiģken; adsoyad Ev telefon no sunun aktarıldığı değiģken; evtel Ev adresinin aktarıldığı değiģken; evadres ĠĢ adresinin aktarıldığı değiģken; isadres Ģeklinde verilebilir. 28

29 Sabit: Algoritmalarda Sıkça Kullanılan Terimler (Devam) Programdaki değeri değiģmeyen ifadelere sabit denir. Yukarda açıklanan Ġsimlendirme kuralları na uygun olarak oluģturulan sabitlere Sayısal veriler doğrudan (Örn: A=7) Alfasayısal veriler ise tek yada çift tırnak içinde aktarılır. (Örn: A= puan25 veya A= puan25 ) Not: Alfasayısal (alfanümerik): Verinin hem harf hem de rakamlardan oluştuğunu belirtmek için kullanılır. 29

30 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Örnek 8 : Öğrenci adını içeren bir mesajı Psedo Kod ile yazalım; 1. BaĢla 2. Bir isim giriniz (A) 3. Derse HoĢ geldin mesajı (B) 4. B ve A yı Yaz 5. Dur Not: Burada (A) nın isim bilgisi taşıdığı yani öğrenciye göre değişeceği için Değişken olduğuna (B) nin de değişmeyen bir ifade yani Sabit olduğuna dikkat edelim. 30

31 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Yukarıdaki algoritma (psedo kod), dıģarıdan girilen bir A değiģkeni ile B sabitini birleģtirip aģağıdaki iki örnekteki gibi ekrana yazar. A değişkeni B sabiti Ekranda yazılan Onur Derse HoĢ geldin Derse HoĢ geldin Onur Emre Derse HoĢ geldin Derse HoĢ geldin Emre 31

32 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Aktarma: Herhangi bir bilgi alanına, veri yazma; herhangi bir ifadenin sonucunu baģka bir değiģkende gösterme vb görevlerde aktarma operatörü kullanılır. değiģken=ifade ( Örn: puan=a*65 ) = sembolü, aktarma operatörüdür ve sağdaki ifadenin/iģlemin sonucunu soldaki değiģkene aktarır. 32

33 Algoritmalarda Sıkça Kullanılan Terimler (Devam) DeğiĢken yazan kısım herhangi bir değiģken ismidir. Ġfade yazan kısımda ise matematiksel, mantıksal veya alfasayısal ifade olabilir. (Yukarıdak örnekte bir çarpma ifadesi) Bu durumda değiģkenin eğer varsa bir önceki değeri silinir. 33

34 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Sayaç : Programlarda bazı iģlemlerin belirli sayıda yaptırılması veya iģlenen/üretilen değerlerin sayılması gerekebilir. Örnek: say=say+1 ( say adlı değişken için) Örnekteki iģlemde sağdaki ifadede değiģkenin eski değerine 1 eklenmekte; bulunan sonuç yine kendisine yeni değer olarak aktarılmaktadır. Not: Bu ifadeden önce say=7 ise sonra say=8 olur. 34

35 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Sayacın genel formülü; Sayaç değiģkeni = Sayaç değiģkeni + adım Örnek: X=X+3 (X değişkenini adım kadar (3) arttırır) Örnek: S=S-5 (S değişkenini adım kadar (5) azaltır) 35

36 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Örnek 9: AĢağıda 1-5 arası sayılar yazdırılmaktadır. 1. BaĢla 2. S=0 (S değişkenine 0 ilk değerini ver.) 3. Eğer S>4 ise git 7. (S, 4 den büyükse 7. satıra git) 4. Değilse S=S+1 (S, 4 den büyük değilse S yi 1 arttır) 5. S yi Yaz (S değerini yaz) 6. Git 3. (3. satıra git) 7. Dur Not: Sayaç değişkeni olarak (S) kullanılmıştır. 36

37 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Önceki S Değeri Yeni S Değeri Ekrana Yazılan 0 0+1= = = = =5 5 37

38 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Döngü: Bir çok programda bazı iģlemler,belirli ardıģık değerlerle gerçekleģtirilmekte veya belirli sayıda yaptırılmaktadır. Programlardaki belirli iģlem bloklarını, verilen sayıda gerçekleģtiren iģlem akıģ çevrimlerine Döngü denir. 38

39 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Örnek 10: 1 ile 10 arası tek sayıların toplamını hesaplayan ve yazan bir Psedo Kod yazalım. Not: T, toplamı; J, tek sayıları (1,3,5,7,9) temsil eden değişkenlerdir. 1. BaĢla 2. T=0 ( Önce T toplam değişkenini sıfırla) 3. J=1 ( Ġlk tek sayıyı J değişkenine aktar) 4. Eğer J>10 ise git 8. (J>10 olduysa 8. adıma git) 5. Değilse T=T+J (Aksi halde T değişkenini J kadar arttır) 6. J=J+2 ( J yi adım yani 2 kadar arttır) 7. Git 4. ( 4. adıma git) 8. T yi yaz. ( Toplamı yani T yi yazdır) 9. Dur Not: 7. ile 4. satırlar arasında Döngü vardır. 39

40 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Önceki J Değeri Önceki T Değeri Yeni T Değeri Yeni J Değeri = = = = =

41 Algoritmalarda Sıkça Kullanılan Terimler (Devam) ArdıĢık Toplama: Programlarda, aynı değerin üzerine yeni değerler eklemek için kullanılır. Örnek11: Klavyeden girilen 5 sayının ortalamasını bulan programın algoritmasını Psedo Kod ile yazalım. Not: T: (Ardışık) Toplamı; S: Girilen sayının sırasını göstersin. 41

42 Algoritmalarda Sıkça Kullanılan Terimler (Devam) 1. BaĢla 2. T=0 (Toplamı yani T yi sıfırla) 3. S=0 (Girilen sayının sırasını sayan S yi sıfırla) 4. Eğer S>4 ise git 9. (S>4 yani S=5 olduysa 9. adıma git) 5. Değilse S=S+1 ( Aksi halde S yi 1 arttır) 6. Sayıyı (A) girin ( Klavyeden A sayısının girilmesini iste) 7. T=T+A ( Girilen sayıyı T ile topla) 8. Git 4. (4. adıma git) 9. Ortalama=T/5 (Ortalama yı hesapla) 10. Ortalama yı yaz (Ortalama yı yaz) 11. Dur 42

43 Algoritmalarda Sıkça Kullanılan Terimler (Devam) ArdıĢık Çarpma : ArdıĢık çarpma iģleminde; aynı değer (çarpım), yeni değerlerle çarpılarak eskisinin üzerine aktarılmaktadır. Örnek 12: Klavyeden girilen N sayısının faktöriyelini hesaplayan programın algoritmasını Psedo Kod ile yazınız. Not: 5! (5 faktöriyel); sayılarının çarpımıdır. Faktöriyel değeri Fak adlı değişkende (ardışık) çarpma ile hesaplanır. 43

44 Algoritmalarda Sıkça Kullanılan Terimler (Devam) ArdıĢık Çarpma (Devam) 1. BaĢla 2. N sayısını girin ( Hangi sayının faktöriyelini hesaplasın) 3. Fak=1 (Ġstenen Faktöriyel değeri 1 den başlasın) 4. S=0 5. Eğer S>N-1 ise git 9. ( S, N-1 den büyükse işlem bitecek) 6. S=S+1 (Çarpılacak sayıları elde etmek için arttır) 7. Fak=Fak*S (Önceki Fak değerini yeni S ile çarp) 8. Git 5. (5. adıma git) 9. Fak ı yaz (Fak değerini yaz) 10. Dur 44

45 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Döngü Yapısı : Bu yapı kullanılırken; Döngü sayacı ġart bilgisi ve Sayacın artım bilgisi gibi değerler verilmelidir. Not: Döngü sayacı kullanılmıyorsa sadece döngüye devam edebilmek için gerekli olan şart bilgisi verilmelidir. 45

46 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Genel olarak pek çok programlama dilinin döngü deyimleri : 1) While 2) Do-while 3) For gibi yapılar üzerine kurulmuģtur. Farklı dillerde bu yapılara farklı alternatifler olsa da döngülerin çalıģma mantığı genel olarak benzerdir. 46

47 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Döngü Yapısı (Devam) 1. Durum (While): ġart daha çevrim içerisine girmeden sınanır. ġart sağlanamıyorsa çevrime hiç girilmez. Ve döngü içerisinde yapılması gerekenler atlanır. 47

48 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Döngü Yapısı (Devam) Döngüye Girildikten sonra ġart ın sağlanıp sağlanmadığına bakılır. Sağlanmıyorsa Döngüden çıkılır. ġart sağlandığı sürece (defa) ĠĢlem yapıldıktan sonra döngüden çıkılır. 48

49 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Örnek 13: Bu tür bir döngü için daha önce algoritması yazılan Örnek 12 e ait bir akıģ diyagramı çizelim. Önce Örnek 12 i hatırlayalım; Klavyeden girilen N sayısının faktöriyelini hesaplayan programın algoritmasını Psedo Kod ile yazınız. 49

50 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Girilen N ile hangi sayının faktöriyelinin hesaplanacağı belirlenir ve N çevrimlik bir döngü kurulur. Ġlk iģlemde 1! = 1 olduğundan Fak değiģkenine bu ilk değer veriliyor Ġkinci çevrimde 2!=1*2 ve sırayla N inci çevrim sonucunda N!= 1*2*3*. *N değeri hesaplanmıģ oluyor. Sayac>N Ģartı oluģtuğunda döngüden çıkılır ve elde edilen sonuç dıģ ortama aktarılır. 50

51 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Not: Fak=1 ile Faktöriyele ilk değeri veriliyor. Böylece 1 sayısının Faktöriyeli baştan yazılmış oluyor. Sayac=2 ile Sayac a başlangıç olarak 2 değeri veriliyor. Sayac değeri 2 den başlayarak girilen örn: N=10 değerine eşit olana kadar (2,3,4.9,10) Fak=Fak*Sayac işlemi tekrar yapılıyor. Sayaç++ ile her seferinde Sayaç 1 arttırılıyor. 51

52 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Döngü Yapısı (Devam) 2. Durum (Do-While): Bu durumda çevrim en az bir defa gerçekleģir. Çünkü Ģart sınaması döngü sonunda yapılmaktadır. Eğer Ģart sağlanmıyorsa bir sonraki çevrime geçilmeden döngüden çıkılır. Çevrimin devam edebilmesi için her döngü sonunda yapılan Ģart testinin olumlu sonuçlanması gerekir. 52

53 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Döngü Yapısı (Devam) 53

54 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Döngü Yapısı (Devam) 3. Durum (For): Diğer deyimlerden farklı olarak, döngü sayacı doğrudan Ģart parametreleri olarak baģta verilir. Döngüye girmeden önce sayaç değiģkenine baģlangıç ve artım değeri atanmakta ve daha sonra Ģarta bakılmaktadır. ġart sağlandığı sürece belirtilen «ĠĢlem» yapıldıktan sonra her seferinde sayaç değiģkeni arttırılmaktadır. Döngü sayısına ulaģınca (Ģart sağlanamayınca) döngü sona erer. 54

55 Algoritmalarda Sıkça Kullanılan Terimler (Devam) 55

56 Algoritmalarda Sıkça Kullanılan Terimler (Devam) Ġçiçe Döngüler Ġçiçe Döngüler: Programlamada yaygın kullanılan bir döngüdür. Ġçiçe döngü kurulurken en önemli unsur, içteki döngü sonlanmadan bir dıģtaki döngüye geçilmemesidir. Diğer bir deyiģle döngüler birbirlerini kesmemelidir. En içteki döngü bir dıģtaki döngünün her adımında N kere tekrarlanır. Ġç ve dıģ döngülerin çarpımı kadar ĠĢlem yapılmıģ olur. 56

57 Algoritmalarda Sıkça Kullanılan Terimler (Devam) 57

58 ALGORĠTMA VE PROGRAMLAMA (Bölüm 3) 58

59 C PROGRAMLAMA DĠLĠ C Nasıl Bir Programlama Dilidir? C orta düzey bir programlama dili olarak son derece esnek kullanımlı bir dildir. C, bir Assembly dili derleyicisinin sağladığı esneklik ve gücü sağlarken üst düzey bir programlama dilinin sağladığı kolay anlaģılabilirlik özelliğini de sunmaktadır 59

60 C PROGRAMLAMA DĠLĠ(Devam) BaĢlarken C Dilinin Temel Özellikleri : C, genel amaçlı, oldukça çok sayıda ifade, denetim komutları bulunduran, güçlü veri yapılarına sahip olan bir programlama dilidir. C nin esnek olması yazacağımız programda daha dikkatli olmamız gerektiği anlamına gelir. Hatalı veya eksik bir iģaret belki derleyici hatasına neden olmayacak ancak programımızı doğru çalıģtırmayacaktır. 60

61 C PROGRAMLAMA DĠLĠ(Devam) BaĢlarken Program Yazma, Derleme ve ÇalıĢtırma: Bir Programlama dilini öğrenmenin en iyi ve en kolay yolu o dilde programlar yazmaktır. Önemli olan önce basit bir programı yazıp derleyebilmek, çalıģtırabilmek ve elde edilen sonuçları görebilmektir. Yazma, Derleme ve ÇalıĢtırma kullandığımız ortama bağlı olmakla birlikte genellikle kolay bir Ģekilde yapılabilir. 61

62 C PROGRAMLAMA DĠLĠ(Devam) BaĢlarken C dilinde yazılan programın uzantısı (.c) olur. C dilindeki program (derleyici ve bağlayıcı ile) önce (.obj) sonra (.exe) uzantılı olur ve PC de yürütülebilir hale gelir. Benzer olarak Pascal dilinde yazılan ve uzantısı (.pas) olan program için de aynı durum geçerlidir. Mikrodenetleyiciler için (örn. PIC için) ise derleme sonrası (.hex) uzantılı olur. Artık Mikrodenetleyiciye yüklenebilir ve çalıģabilir. 62

63 C PROGRAMLAMA DĠLĠ(Devam) BaĢlarken Bağlayıcı ile Kütüphane fonksiyonları eklenerek DeğiĢkenlerin ve sabitlerin, hafıza atamaları, ilk değer verme iģlemleri vb. gerçeklenerek Tek bir yürütülebilir (yüklenebilir).exe ya da.hex uzantılı kod elde edilmiģ olur. 63

64 C PROGRAMLAMA DĠLĠ(Devam) BaĢlarken 64

65 C PROGRAMLAMA DĠLĠ (Devam) BaĢlarken C de bulunan pek çok fonksiyonun kullanılabilmesi için bazı kütüphane baģlık dosyalarının (include) programa eklenmesi gerekir. KarıĢıklığı önlemek adına programlarımızda gösterilmeyecek olan bu dosyalardan en temel ve önemli olanı: #include <stdio.h> Ģeklindedir ve main() den önce programa eklenerek derleme yapılır.

66 C PROGRAMLAMA DĠLĠ (Devam) BaĢlarken Bu baģlık dosyasından baģka ileri matematik iģlemlerde kullanılan #include <math.h> Yine rastgele sayı üretmek, sıralama yapmak vb. iģlemlerde #include <stdlib.h> gibi farklı baģlık dosyaları ekleme ifadeleri mevcuttur ve ihtiyaca göre bu ifadelerin main() öncesinde programın baģına eklenmesi gerekir.

67 C PROGRAMLAMA DĠLĠ(Devam) BaĢlarken IDE (TümleĢik GeliĢtirme Ortamı): TümleĢik GeliĢtirme Ortamları, Derleyicileri Bağlayıcıları ortam içinden kullanabilmeyi ya da bunlara ortam içinden eriģme yollarını sağlarlar...(örn. PIC için MPLAB gibi). Ayrıca IDE ortamında Hata ayıklama (debug), Gözlem penceresi (watch) gibi bileģenler mevcuttur. 67

68 C PROGRAMLAMA DĠLĠ(Devam) BaĢlarken IDE lerde yazım iģlemini kolaylaģtıracak vurgulamalar, uyarılar ve yardım menüleri mevcuttur. Derleyici ve bağlayıcı parametreleri menülerden ayarlanabilir. Her yazılım dilinin kendi IDE si mevcuttur Ancak bazı IDE ler birden fazla yazılım dili için ortam sağlayabilir. 68

69 Ġlk Program: Programlamayı öğrenmeye baģlarken sıkça kullanılan bir ifade olan Merhaba C yi ekrana yazdıran bir mini örnek programla baģlayalım: main(){ C PROGRAMLAMA DĠLĠ(Devam) BaĢlarken } printf( Merhaba C\n ) ; Not: Daha evvel de belirtildiği gibi yukarıdaki printf() fonksiyonunun çalışabilmesi için main() den önce #include <stdio.h> yazarak kütüphane başlık dosyasının eklenmesi gerekir. Dersimizdeki örneklerde bu dosya eklenmeyecektir ancak bilgisayarda derleme yapmadan önce programda kullanılan fonksiyonlara göre bu ve benzer dosya/dosyaların ilave edilmesi şarttır. 69

70 C PROGRAMLAMA DĠLĠ(Devam) BaĢlarken Bu programın ekran çıktısı; Merhaba C şeklinde olur. main Ġngilizcede ana, asıl anlamındadır. printf() ekrana yazdırmak için kullanılan bir fonksiyondur. 70

71 C PROGRAMLAMA DĠLĠ(Devam) BaĢlarken Her komuttan (fonksiyondan/deyimden) sonra ; konulması Ģarttır. \n Merhaba C ifadesinden sonra satır atlatır. { ve } küme parantezleridir. 71

72 C PROGRAMLAMA DĠLĠ (Devam) BaĢlarken o Bir C programı boyutu ne olursa olsun bir ya da daha fazla fonksiyon denilen bloktan oluģur. o C Dilinde olmazsa olmaz fonksiyon (blok) main() fonksiyonudur (bloğudur). (Main: Ana, asıl demektir. ) o Program her zaman bu main() adlı fonksiyondan çalıģmaya baģlar. NOT: Bundan sonra blok yerine fonksiyon ifadesi kullanılacaktır. 72

73 o C PROGRAMLAMA DĠLĠ (Devam) BaĢlarken Genelde fonksiyonun yanındaki parantez içinde parametreler (argümanlar) yer alır. Örn: printf( Merhaba C\n ) ; deki Merhaba C\n gibi. o main() fonksiyonunun herhangi bir parametresi olmadığından parantezi boģtur. o Fonksiyonlar arasında haberleģme ve (varsa) değerlerin transferi parametreler (argümanlar) maharetiyle gerçekleģir. o Fonksiyonlar adı yazılan yerde çağrılır(çalıģır). 73

74 C PROGRAMLAMA DĠLĠ (Devam) printf() fonksiyonu printf() FONKSĠYONU printf( Merhaba C \n ); satırı (deyimi) adı printf çağırır. olan bir fonksiyon printf() ekrana bir bilginin yazılmasını sağlayan bir kütüphane fonksiyonudur ve standart C arģivinin (kütüphanesinin) bir parçasıdır. 74

75 C PROGRAMLAMA DĠLĠ (Devam) printf() fonksiyonu Zaten bu kütüphanenin kullanılabilmesi için #include <stdio.h> gibi kütüphane baģlık dosyalarının eklenmesi Ģarttır. printf() fonksiyonu, her zaman ekrana çift tırnak içinde parametre olarak verilen ifadeyi yazacaktır. 75

76 C PROGRAMLAMA DĠLĠ (Devam) printf() fonksiyonu printf() fonksiyonu asla otomatik olarak yeni bir satıra geçiģ sağlamaz. AĢağıdaki program ilk örnekteki ile aynı çıktıyı verecektir : main() { printf( Merhaba ) ; printf( C ) ; printf( \n ) ; } 76

77 Benzer Ģekilde \n \t \b \ C PROGRAMLAMA DĠLĠ (Devam) Bazı Kontrol Karakterleri satır atlattığı gibi tab için, geriye doğru silme (kürsörü bir karakter öne alma) iģlemi için (Backspace), çift tırnağın kendisini yazdırmak için kullanılır. Bunlar görünmeyen kontrol karakterlerdir. Ekrandaki çıktıyı kontrol etmektedirler. 77

78 C PROGRAMLAMA DĠLĠ (Devam) printf() fonksiyonu Mesaj ile birlikte bir değiģkenin değerini ekrana yazdırmak için yine printf() fonksiyonu kullanılabilir. Ġlk örnek (Merhaba C) de olduğu gibi sadece mesaj ve değiģkenin biçimi çift tırnak içine alınarak belirtilir. 78

79 C PROGRAMLAMA DĠLĠ (Devam) printf() fonksiyonu printf() fonksiyonu ile hem mesaj hem de değiģken değeri birlikte yazılabilir. Örnek: Ekranda sonuc adlı desimal bir değiģken yazdırılacaktır. Bunun için önce sonuc= ifadesi, bu ifadenin hemen yanına bu değiģkenin değeri yazılacaktır. DeğiĢken değerinden sonra dir. eklenecektir. Gerekli print() deyimini (komutunu) yazınız. 79

80 C PROGRAMLAMA DĠLĠ (Devam) printf() fonksiyonu Cevap: printf( sonuc= %d dir.,sonuc); Ģeklinde yazılabilir. Yukarıdaki printf() fonksiyonu ile sonuc adlı değiģkenin değeri sonuc= ifadesinin yanına yazılmakta sonra da dir. eklenmektedir. 80

81 C PROGRAMLAMA DĠLĠ (Devam) printf() fonksiyonu Burada %d, değerin desimal olarak yazılacağını belirtir. Ekranda sonuc değiģkeninin değeri komuttaki %d nin yerine yazılır. Bu durumda ekran çıktısı, (sonuc değeri 25 olsun) sonuc=25 dir. Ģeklinde olur. 81

82 Örnek: C PROGRAMLAMA DĠLĠ (Devam) printf() fonksiyonu Daha önce hesaplanmıģ m değiģkeni Sayi= ve n değiģkeni Karekoku= ifadelerinden sonra ekrana yazdırılmak istenmektedir. m değiģkeni desimal (tam sayı), n değiģkeni ondalıklı (virgüllü) sayı olacaktır. Tek bir printf() fonksiyonu içeren deyimi yazınız. Not: Ondalıklı sayı için %f kontrol karakteri kullanılır. 82

83 C PROGRAMLAMA DĠLĠ (Devam) printf() fonksiyonu Cevap: printf( Sayi= %d Karekoku=%f,m,n); Ģeklinde olabilir. Ekran çıktısı : ( m=5 ve n= değişken değerleri için) Sayi= 5 Karekoku= Ģeklinde olacaktır. 83

84 C PROGRAMLAMA DĠLĠ (Devam) printf() fonksiyonu Yukarıda görüldüğü gibi %d, %f vb. gibi kontrol karakterleri dıģındaki çift tırnak içindeki karakterler çıkıģta aynen yazılır. Parantezde kaç değiģken varsa o kadar kontrol karakteri olmalıdır. (Örnekte: m ve n için %d ve %f ) Not : Eğer (n) değişkeni için kontrol karakteri olarak %f yazılmayıp %d şeklinde yazılsaydı sayısı yerine çıktıda sadece 2 (tam sayı kısmı) olarak görülecekti. 84

85 C PROGRAMLAMA DĠLĠ (Devam) printf() fonksiyonu printf() komutu içinde yaygın olarak kullanılan bazı yazdırma kontrol karakterleri Ģöyledir: %c : tek karakter [ örn: M ] %d : ondalık [ örn: -3.26] %u : iģaretsiz ondalık [ örn: 4.76] %f : ondalık kayan nokta [ örn: ] %e : bilimsel (üslü) gösterim [ örn: e+002] %x : heksadesimal [ örn: 3F ] %s : karakter katarı [ örn: ADRES ] 85

86 C PROGRAMLAMA DĠLĠ (Devam) scanf() fonksiyonu Scanf() FONKSĠYONU: Klavyeden değer okumak için scanf() adlı yine bir standart kütüphane fonksiyonu kullanılabilir. Bu fonksiyonda da benzer kontrol karakterleri vardır ve okunacak değerin tipini belirler. printf() e benzer Ģekilde %d tam sayı, %f kesirli (virgüllü) sayı okunacağını ifade eder. 86

87 C PROGRAMLAMA DĠLĠ (Devam) scanf() fonksiyonu Mesela iki scanf() fonksiyonu ile Önce a değiģkenine bir tam, sonra b değiģkenine bir kesirli sayı okunacaksa; scanf ( %d, &a); scanf ( %f, &b); yazılabilir. Not: Burada a veya b adlı değişkenlerin hafızadaki değerleri (içeriği) anlamında başlarına & karakteri gelmektedir. 87

88 C PROGRAMLAMA DĠLĠ (Devam) scanf() fonksiyonu Eğer X ve Y adlı iki desimal değiģkeni aynı scanf() fonksiyonunda okumak istersek, aģağıdaki gibi iki farklı Ģekilde yazabiliriz. (Sayılar 12 ve 567 olsun) Ġki komut arasındaki fark ilk %d den sonraki virgüldür. scanf( %d,%d, &X, &Y); scanf( %d %d, &X, &Y); /* sayılar arasına virgül konarak giriş yapılır. Yani klavyede 12,567 yazılır */ /* sayılar arasına boşluk konarak giriş yapılır. Yani klavyede yazılır */ 88

89 C PROGRAMLAMA DĠLĠ (Devam) main() fonksiyonu ġimdiye kadar öğrendiklerimizi uygulamak için main() fonksiyonu içinde bir örnek program yazalım. main() dıģında herhangi bir fonksiyonumuz olmasın. main() fonksiyonunun olmazsa olmaz bir C programı (ana) fonksiyonu olduğunu programın her zaman buradan baģlayarak yürütüleceğini hatırlayalım Örnek : main() fonksiyonu içinde iki sayıyı toplayıp ortalamasını alıp ekrana yazdıralım. 89

90 Cevap: C PROGRAMLAMA DĠLĠ (Devam) main() fonksiyonu main() { int a,b,top ; /* a ve b toplanacak sayilar, top ise toplam degiskeni */ float ort ; /* ortalama degiskeni ort ve tipi kesirli (virgüllü) */ printf( iki sayı giriniz: ) ; /* ekrana iki sayı giriniz: mesaji yazilsin*/ scanf( %d,%d,&a,&b); /* a ve b tam sayı olarak klavyeden okuyacak */ top= a+b ; /* a ve b toplanip top degiskenine aktariliyor*/ ort = top/2 ; /* ortalama alinip ort degiskenine aktariliyor */ printf ( ortalama= %f dir.,ort) ; /* ort degeri yaziliyor */ } /* Bu karakterler arasına açıklama yazılabilir */ 90

91 C PROGRAMLAMA DĠLĠ (Devam) main() fonksiyonu Ekran GiriĢi ve Çıktısı ise ( a= 5 ve b= 4 olduğu kabul edilsin, Giriş sayıların arasına virgül konarak kullanıcı tarafından klavyeden yapılıyor) iki sayı giriniz: 5,4 ortalama= Not: Çıktıda Float tipi sonuç noktadan sonra 6 basamak yazıldı. 91

92 Örnek: Tamsayı olarak verilen X ve Y nin farkını (X-Y) hesaplayıp SAYILARIN FARKI= Cevap: C PROGRAMLAMA DĠLĠ (Devam) main() fonksiyonu ifadesinden sonra yazdıran main() fonk. yazınız. main() { /* Bu ornek main fonksiyonu X ve Y nin farkini hesaplar*/ int X,Y,fark ; /* X, Y, fark tam sayi */ printf ( iki sayı giriniz: ) ; /* Ekrana iki sayı giriniz: mesaji yazilsin */ scanf ( %d,%d,&x,&y) ; /* X ve Y klavyeden okunacak */ fark= X-Y ; /* X ve Y cikarilip fark degiskenine aktariliyor*/ printf ( SAYILARIN FARKI= %d, fark) ; /* cikis yaziliyor */ } 92

93 C PROGRAMLAMA DĠLĠ (Devam) main() fonksiyonu Ekran GiriĢi ve çıktısı olarak ( X=25 ve Y=13 olduğu kabul edilirse ) iki sayı giriniz: 25, 13 SAYILARIN FARKI= 12 dir. Örnek: Klavyeden girilen kesirli sayı olan yarıçap (R) ile dairenin alanı ve çevresini hesaplayan ve ekrana yazdıran bir main() fonk. yazınız. ( = 3.14 alınacaktır) 93

94 Cevap: C PROGRAMLAMA DĠLĠ (Devam) main() fonksiyonu main () { float R,S,C ; /* R: Yaricap S: Alan C: Cevre olsun*/ printf( Yaricapi Giriniz:\n ); /* Yaricapi Giriniz: yaz*/ scanf ( %f, &R); /* Yaricapi R degiskenine oku*/ S= 3.14 * R ^ 2 ; /* Alani hesapla*/ C = 2 * 3.14 * R ; printf ( Dairenin Alani= %f\n, S); printf ( Dairenin Cevresi= %f, C); } /* Bu ornek main fonk. Dairenin alani ve Cevresini hesaplar*/ /* Cevreyi hesapla*/ /* Alani ekrana yazdir*/ /* Cevreyi yazdir*/ 94

95 C PROGRAMLAMA DĠLĠ (Devam) main() fonksiyonu Programın Ekran GiriĢi ve Çıktısı: (Dairenin Yarıçapı = 5.2 kullanıcı tarafından girilmiş olsun) Yarıcapi Giriniz: 5.2 Dairenin Alani= Dairenin Cevresi=

96 Örnek: Tabanı (a) ve yüksekliği (h) virgüllü sayı olarak verilen bir üçgenin alanını hesaplayıp yazdıran main() fonk. yazınız. Cevap: C PROGRAMLAMA DĠLĠ (Devam) main() fonksiyonu main() { /* Bu main fonksiyonu ücgenin alanini hesaplar*/ float a,h,alan; /* a: taban, h: yukseklik ve alan olsun */ printf ( Taban ve yuksekligi giriniz: ) ; /* kenarlari girin mesaji */ scanf ( %f,%f,&a,&h); /* a ve h klavyeden okunacak */ alan = a*h/2; /* alan hesaplanip alan adli degiskene aktariliyor */ printf ( Ucgenin Alani= %f,alan) ; /* cikis yaziliyor */ } 96

97 C PROGRAMLAMA DĠLĠ (Devam) main() fonksiyonu Ekran GiriĢi ve çıktısı : (Üçgende a=5.5 ve h=4.6 olarak klavyeden girilmişse ) Taban ve yuksekligi giriniz: 5.5, 4.6 Ucgenin Alani= dir. 97

98 SABİTLER: C PROGRAMLAMA DİLİ (Devam) Sabitler Programın yürütülmesi sırasında değerleri değişmez. Sabitler genelde sayısal ve alfasayısal olurlar Sabitler üzerlerinde aritmetik işlem yapılarak değiştirilemezler Sayısal sabit örn : 3.45 Alfasayısal sabit örn: 34MYO Alfasayısal sabitler tırnak içerisinde verilir. Alfasayısal sabit tek karakter ise tek tırnak, birden fazla karakter ise çift tırnak içinde verilir.

99 C PROGRAMLAMA DİLİ (Devam) Sabitler Sabit tanımlanırken program boyunca değişmeyeceğini belirtmek için sabit tipinin başına const ibaresi konulmalıdır. Meselâ: const int a= - 45; /* a adli ve degeri - 45 olan sabit sayi demektir, bu tanımdan sonra programda a yazılırsa (- 45) anlamına gelir */ const float b= ; /* b adli kesirli bir sabit sayi */ const char ch = A ; /* ch adli karsiligi A olan sabit karakter */

100 DEĞİŞKENLER: C PROGRAMLAMA DİLİ (Devam) Değişkenler Değişkenler hafızada saklanan ve program boyunca değeri değişebilen simgesel isimlerdir. C'de temel olarak Sayısal ve Alfasayısal değişken türleri bulunmaktadır. Değişkenler içlerine uygun nesneler konan farklı tipte kutular olarak düşünülebilir. Her nesne her kutuya konamaz. Mesela ondalık bir sayı (int) tipi kutuya konmaz. Konursa veri kayıpları oluşabilir.

101 C PROGRAMLAMA DİLİ (Devam) Değişkenler Değişkenler tanımlanırken birden fazla olacak ise virgül ile ayrılmalıdırlar. Her ifade/deyim gibi değişken tanımının sonuna noktalı virgül konulması zorunludur. Değişkenlerin hafızada karşılıkları vardır Bir Değişkenin hafızadaki karşılığı genelde Tam sayı Kesirli sayı Karakter olabilir

102 C PROGRAMLAMA DİLİ (Devam) Değişkenler Tam sayı değişkeni tanımlamak için Örn: int a,b,c ; /* 3 tam sayı değişken tanımlanıyor */ Aynı tanımlamayı int a; int b; int c; /* şeklinde de yapabilirdik. */ Burada a,b,c (mesela gibi ) değerler alabilir, ama kesirli sayı olmaz)

103 C PROGRAMLAMA DİLİ (Devam) Değişkenler Örnek olarak kısa bir main() fonksiyonunda a isimli bir tam sayı değişkeni tanımlayalım ve program içinde bu değişkene 10 değeri verip çıktı olarak yazdırarak bir satır atlatalım. main() { } int a ; a=10 ; printf ( a nin degeri= %d\n,a) ;

104 Yukarıdaki örnekte klavyeden bir giriş yoktur. Bu yüzden ekranda Giriş bulunmamaktadır. Program çalıştırıldığında bu programın Ekran çıktısı: C PROGRAMLAMA DİLİ (Devam) Değişkenler a nin degeri= 10 şeklinde olur.

105 C PROGRAMLAMA DİLİ (Devam) Değişkenler Kesirli (ondalıklı) sayı değişkeni tanımlamak için Örn: float f= ; Bu değişkene ilk değer olarak sayısı verilmiştir. Bu virgüllü sayı sabit olmayıp program içinde değişebilecektir.

106 C PROGRAMLAMA DİLİ (Devam) Değişkenler Float tipinde bir değişken aşağıdaki gibi değerler alabilir: E9 ( üslü sayıdır : 5, ) Bu sayıları int değişkenine eşitlersek sadece tam kısmını alırız. (8.7 yerine 8 alınır.) Ancak float değişkenine bir tam sayı değişkeni eşitlenebilir. Bu durumda 7 sayısı 7.0 olarak işleme girer.

107 Örnek olarak main() fonksiyonu içinde bir a değişkenine kesirli bir sayı değeri verelim ve bunu çıktı olarak yazalım. (Bu defa yazdıktan sonra satır atlamasın) main () { C PROGRAMLAMA DİLİ (Devam) Değişkenler } float a ; a= ; printf ( a nin degeri= %f,a) ;

108 C PROGRAMLAMA DİLİ (Devam) Değişkenler Tam sayı ve Float Değişken Tiplerinin Beraber Kullanımı Bir float değişkenine int tipi değişken eşitlenirse, C otomatikman bu değeri float tipine çevirir. Mesela main() { float a ; int b ; b= 10 ; a=b ; printf ( a nin degeri= %f,a); } Bu durumda a nin degeri= şeklinde çıktı elde edilir.

109 C PROGRAMLAMA DİLİ (Devam) Değişkenler Karakter Tanımlamak için Aşağıda Ch adlı bir karakter değişkeni tanımlanmıştır char Ch ; Değişken tanımlanırken de başlangıç değeri verilebilir char Ch= H /* Başlangıç değeri H olsun */ Karakter uzunluğu birden farklıysa değişken adının yanında bu değer de yazılır. Örn: char isim[28]; ( isim adlı uzunluğu 28 olan bir karakter tanımladık)

110 Bu defa a adlı bir karakter değişkenine değer olarak z harfini yerleştirerek bu değerin karakter tipinde çıktı olarak yazılmasından sonra bir satır atlamayı sağlayan bir kısa programı main() içinde yazalım. main () { C PROGRAMLAMA DİLİ (Devam) Değişkenler char a ; a= z ; printf ( a nin degeri= %c\n,a); } Çıktı : a nin degeri= z şeklinde elde edilir.

111 Değişken tipleri uzunluklarına göre de değişir. En yaygın olanlar: int C PROGRAMLAMA DİLİ (Devam) Değişkenler : Hafızada 2 bayt (16 bit) veya 4 bayt(32 bit) yer tutan tam sayı için kullanılır. (Derleyiciye göre farklı iki durum vardır!) short int : int tipinin yarısı uzunlukta 1 ya da 2 bayt sayı long int : int tipinin iki katı uzunlukta 4 ya da 8 bayt sayı float : Tek hassasiyetli kesirli sayı (virgülden sonra 6 basamak) double : Çift hassasiyetli kesirli sayı (virgülden sonra 12 basamak) char : Tek yada daha fazla karakter saklar. (Hafızada her karakter 1 bayt yer tutar)

112 C PROGRAMLAMA DİLİ (Devam) Değişkenler Bazı değişken tanımlama örnekleri şöyle olabilir: int x=69,y,z; /* x in başlangıç degeri 69 olsun */ short int say; /* say adlı değişken 1 bayt (8 bit) */ long int sonuc; /* sonuc adlı değişken 4 bayt (32 bit) */ float pi; /* pi adlı kesirli bir değişken */ double e= ; /* e adlı çift hassasiyetli kesirli sayı değişkeni başlangıç değeri ile tanımlanmıştır */ char sehir[15] ; /* sehir adli 15 uzunluklu karakter */

113 Bir başka tip tanımlaması da sayının işaretsiz olduğunu belirtir. Bunun için unsigned C PROGRAMLAMA DİLİ (Devam) İşaretsiz Değişkenler unsigned int sayi ; kelimesi kullanılır. Mesela; sayi adlı değişkenin tam sayı türünde olduğu, sadece pozitif sayı olacağı anlaşılır. Böylece çalışma alanı (int 16 bit kabul edilirse) sayı 0 ile aralığında olur. (2 16 = ; sıfır dahil!)

114 C PROGRAMLAMA DİLİ (Devam) İşaretsiz Değişkenler unsigned int sayi ; /* sayi adlı sadece pozitif 16 bit*/ unsigned long sayi ; /* sayi adlı sadece pozitif 32 bit */ unsigned ifadesi olmasaydı çalışma aralığı « » olacaktı. Yani sayi işaretli olacak ve hem pozitif hem negatif değerler alabilecekti. NOT: Mikrodenetleyiciler dersindeki işaretli sayıları hatırlayınız.

115 C PROGRAMLAMA DİLİ (Devam) Değişkenler Sık kullanılan Değişken Türlerini bir Tablo halinde Özet olarak verirsek

116 C Fonksiyonları C PROGRAMLAMA DİLİ (Devam) Fonksiyonlar İyi tasarlanmış bir program büyük bir programı parçalara (fonksiyonlara) böler. Fonksiyon belli bir işi yapan program parçasıdır. main() de bir fonksiyondur. Ancak daha önce belirtildiği gibi olmazsa olmazdır ve program her zaman buradan çalışmaya başlar.

117 C PROGRAMLAMA DİLİ (Devam) Fonksiyonlar Fonksiyonlar değer (parametre) kullanarak ya da kullanmadan çalışırlar. Bir fonksiyon yazılıp hatalardan arındırıldıktan sonra başka programlarda da kullanılabilirler. Kütüphane fonksiyonları da birer fonksiyondur, daha önce yazılıp yerleştirilmişlerdir ve derleme sırasında kullanılırlar.

118 C PROGRAMLAMA DİLİ (Devam) Fonksiyonlar Bir değer alıp işlem yapan ama kendisi bir değer vermeyen (üretmeyen) bir fonksiyon olarak printf("merhaba, Dunya"); örnek olarak verilebilir. Burada printf() fonksiyonuna Merhaba, Dunya değer olarak girmekte ancak kendisi bir değer üretip başka fonksiyona göndermemektedir. Sadece ekrana çıktı yazılmaktadır.

119 C PROGRAMLAMA DİLİ (Devam) tolower() Fonksiyonu Standart C de çok sayıda kütüphane fonksiyonu vardır. Bunlardan bir fonksiyon olarak tolower() fonksiyonunu ele alalım. Bu fonksiyona parantez içinde parametre olarak büyük harf girer ve küçük harf şeklinde bir değer üretir. Örnek: main() fonk. içinde tolower() fonksiyonu kullanarak büyük K karakterini küçük k ya dönüştürüp yazdıran bir program yazınız.

120 Cevap: main() { C PROGRAMLAMA DİLİ (Devam) tolower() Fonksiyonu } char a,b; b= K ; a= tolower(b) ; printf ( K nin kucugu= %c,a); Ekran Çıktısı olarak a nin degeri= k elde edilecektir.

121 C PROGRAMLAMA DİLİ (Devam) Fonksiyonlar Önceki tolower() fonksiyonuna F değerini doğrudan değer olarak vermemiz de mümkün idi. Aşağıdaki örnekte b değişkeni yoktur, doğrudan F değeri fonksiyona verilmektedir. Çıktı önceki örnekle aynı olacaktır. main() { char a ; } a= tolower( F ) ; printf ( a nin degeri= %c,a) ;

122 C PROGRAMLAMA DİLİ (Devam) Fonksiyonlar Fonksiyonlar sadece main() ya da kütüphane fonksiyonlarından ibaret değildir. Genellikle pek çok işlem programcı tarafından yazılan çeşitli fonksiyonlarca yapılır ve ürettiği değerler main() fonksiyonuna gönderilir.

123 C PROGRAMLAMA DİLİ (Devam) Fonksiyonlar Mesela programcı tarafından ismi top() olan bir toplama fonksiyonu yazılarak toplama işlemini yapılır ve sonuc (toplam) main() fonksiyonuna gönderilebilir. Aşağıda bir fonksiyonun genel yapısı ve çeşitli örnekler incelenecektir.

124 C PROGRAMLAMA DİLİ (Devam) Fonksiyonlar Genel olarak bir Fonksiyonun Yapısı: fonksiyontipi fonksiyonadi (arguman listesi ) argumanların tip bildirimi; { fonksiyona ait değişkenlerin bildirimi.. fonksiyon içindeki deyimler ve diğer fonksiyonlar.. } 124

125 C PROGRAMLAMA DİLİ (Devam) Fonksiyonlar Yazacağımız fonksiyona yaptığı işle ilgili bir ad verilir. topla(), carp(), ara(), gibi Bu ad C dilinde kullanılan anahtar kelimeler (return, printf vb) olamaz. fonksiyontipi ise fonksiyon görevini yaptıktan sonra çağrıldığı yere göndereceği sonucun (değerin) ne tip (tam sayı *int+, kesirli sayı *float] vb.) olacağını belirtir. 125

126 C PROGRAMLAMA DİLİ (Devam) Fonksiyonlar Örnek: Önce top() adlı bir toplama fonksiyonu yazalım. Not: (Fonksiyonda toplanacak değişkenler a ve b dir. Sadece fonk. içinde kullanılan toplam değişkeni g dir. bu değer return g deyimi ile main() fonksiyonuna geri yollanacaktır. top(a,b) başında yer alan int bu geri gönderilen değerin tipini belirtir.)

127 Cevap: C PROGRAMLAMA DİLİ (Devam) Fonksiyonlar int top(a,b) /* main() den çağrılan top(a,b) fonksiyonunun main() e gondereceği toplamın tipi int */ int a,b ; /* top() a ait arguman degiskenleri tam sayı */ { int g ; /* Sadece bu fonk. icin tanimli g degiskeni tam sayı */ g=a+b ; /* Toplama islemi yapiliyor, toplam g ye */ return g; } /* g degiskeni top() fonksiyonunu cagiran main() deki fonksiyona geri yollaniyor */ 127

128 C PROGRAMLAMA DİLİ (Devam) Fonksiyonlar Örnek: Yukarıdaki örnekte iki tam sayıyı toplayan bir top() fonksiyonu yazmıştık. Ancak bu fonksiyon tek başına yani main() fonksiyonu olmadan çalışamaz. Şimdi bu toplama yapan top() fonksiyonunu kullanacak bir main() fonk. yazalım. Bu main() ortalama alsın ve sonucu ortalama= şeklinde ekrana yazdırsın. Not: Bu main() fonksiyonunda toplanan değişkenlerin x ve y şeklinde kullanıldığına dikkat edelim.

129 C PROGRAMLAMA DİLİ (Devam) Fonksiyonlar main() { int x,y,z; /* her üc degisken tam sayi */ float ort; /* ort degiskeni kesirli sayi */ printf ( iki sayı giriniz: ) ; /* sayiların girilmesi mesaji */ scanf( %d, %d,&x,&y) ; /* sayilar klavyeden okunuyor */ z=top(x,y) ; /* top() fonksiyonu cagriliyor */ ort = z/2 ; /* ortalama hesaplaniyor */ printf ( ortalama= %f dir.,ort) ; /*ort degeri yazdiriliyor*/ } 129

130 C PROGRAMLAMA DİLİ (Devam) Fonksiyonlar Ekran çıktısı, (Örn: x=64 ve y=65 olarak girilmiş ise) ortalama= şeklinde olur. NOT: main() deki toplama değişkenleri x ve y iken top() fonksiyonunda a ve b olduğuna dikkat edelim. main() deki x yerine top() fonksiyonunda a ; y yerine b nin karşılık geldiğini fark ediniz.

131 C PROGRAMLAMA DİLİ (Devam) Fonksiyonlar Bir başka örnek olarak yine main() tarafından çağrılan carp() adlı bir çarpma fonksiyonunu main() ile birlikte yazalım. Bu fonksiyonun değişkenleri a ve b ise artık parametreleriyle birlikte carp(a,b) olarak da fonksiyonu ifade edebiliriz. Programda örn. main() içinde her carp() yazdığımızda bu çarpma fonksiyonu çalışır ve çarpma gerçekleşir carp() fonksiyonundaki return deyimi ile sonuç kendisini çağıran fonksiyona geri gider. 131

132 Bu defa main() den çağrılan bir carp() fonksiyonu ve main() fonksiyonunu yazalım. Önce main() fonksiyonu: main() { int x,y,z ; /* her üc degisken tam sayi */ printf ( iki sayı giriniz: ) ; /* sayiların girilmesi mesaji */ scanf( %d, %d,&x,&y) ; /* sayilar klavyeden okunuyor */ z=carp(x,y) ; /* carp() fonksiyonu cagriliyor */ printf ( carpim= %f dir., z) ; } C PROGRAMLAMA DİLİ (Devam) Fonksiyonlar /* carpim= ifadesi ve z degeri ekrana yazdiriliyor.*/

133 C PROGRAMLAMA DİLİ (Devam) Fonksiyonlar Şimdi main() tarafından çağrılan carp() Fonksiyonumuzu Yazalım: adlı Çarpma int carp(a,b) { } /* carp() fonksiyonunun sonucunun tipi tam sayi (int), argumanları a ve b */ int a,b; /* a ve b, carp() fonk. argumanlari tam sayı */ int g; /* carpim da tam sayı olacak */ g= a*b; /* carpim yapılıyor, sonuç g değişkenine */ return g; /* bulunan g değeri çağrıldığında carp() fonksiyonuna geri gönderiliyor */ 133

134 Bir başka örnek olarak main() fonksiyonunu yazmadan sadece bol() adlı bir bölme fonksiyonu yazalım: float bol(a,b) /* bol() fonksiyonunun sonucunun tipi kesirli int a,b; sayı (float), a ve b değişkenleri tam sayı */ { float g; /* bölüm g kesirli sayı */ g= a/b; /* bölüm yapılıyor, sonuç g değişkenine */ return g; /* bulunan g değeri, bol() fonksiyonunun } C PROGRAMLAMA DİLİ (Devam) Fonksiyonlar cagrildigi yere geri gönderiliyor */ 134

135 Operatörler: C PROGRAMLAMA DİLİ Operatörler Değişkenler ve sabitler üzerinde çeşitli işlemler yaparlar. 4 Grupta incelenebilirler : Aritmetik Operatörler Karşılaştırma Operatörleri Mantıksal Operatörler Bit seviyesinde işlem yapan Operatörler

136 + - * / % C PROGRAMLAMA DİLİ Aritmetik Operatörler (Devam) Aritmetik Operatörler: Toplama Çıkarma Çarpma Bölme Modulüs (kalan) Bir azaltma (tam sayı veya karakterlerde) Bir arttırma (tam sayı veya karakterlerde)

137 C PROGRAMLAMA DİLİ Aritmetik Operatörler (Devam) Temel Aritmetik Operatörleri örneklerimizde büyük oranda zaten kullanmıştık. Sadece bir örnek olarak çıkartma işlemini ( - operatörünü) incelemek için iki tam sayıyı çıkartıp ekranda yazalım. main() { int a,b; b= 3 a= 2-b; printf ( a nin degeri= %d\n,a); } Çıktı olarak a nin degeri= -1 elde edilir.

138 Yukarıdaki çıkarma işleminde a=2-3; ifadesinde (-) yerine (/) kullansaydık,yani a=2/3; C PROGRAMLAMA DİLİ Aritmetik Operatörler (Devam) olsaydı. Çıktı olarak; a nin degeri= 0 elde edilecekti. Bunun sebebi a değişkeninin tam sayı olarak tanımlanmasıdır.

139 C PROGRAMLAMA DİLİ Aritmetik Operatörler (Devam) Aritmetik Operatörlere bir başka örnek olarak da modulüs işlemini ( % operatörünü) inceleyelim; C de bölme işlemi sonrası kalanı gösteren bir işlem daha vardır ki buna modulüs denir. Modulüs işlemi % işareti ile uygulanır. Mesela aşağıda verilen örnekte; 5%2 işlemi ile 5 sayısı 2 ye bölünmekte ve kalan 1 olarak elde edilmektedir.

140 main() { } int a; C PROGRAMLAMA DİLİ Aritmetik Operatörler (Devam) a= 5%2 ; printf ( a nin degeri= %d\n,a); Çıktı olarak a nin degeri= 1 elde edilir.

141 C PROGRAMLAMA DĠLĠ Faydalanılan Kaynaklar ALGORITHMS AND FLOWCHARTS, faraday.ee.emu.edu.tr/ web sitesi ALGORĠTMA VE PROGRAMLAMA Ders Notları, Öğr. Gör. Dr. Umut Engin AYTEN C Programlama Ders Notları, Ġnönü Üniversitesi, The C Programming Language, W Kernighan ve Dennis Ritchie den tercüme C Programlama Dili, Dr Rıfat ÇÖLKESEN, Papatya Yayınları Kolay C Programlama, Editör: Gürcan BANGER, Bilim Teknik Yayınevi C Programming Tutorial by Examples, Dr. Kalim Qureshi 141

ALGORİTMA VE PROGRAMLAMA (Bölüm 3)

ALGORİTMA VE PROGRAMLAMA (Bölüm 3) ALGORİTMA VE PROGRAMLAMA (Bölüm 3) 1 C PROGRAMLAMA DİLİ C Nasıl Bir Programlama Dilidir? C orta düzey bir programlama dili olarak son derece esnek kullanımlı bir dildir. C, bir Assembly dili derleyicisinin

Detaylı

ALGORİTMA VE PROGRAMLAMA (Bölüm 3)

ALGORİTMA VE PROGRAMLAMA (Bölüm 3) ALGORİTMA VE PROGRAMLAMA (Bölüm 3) 1 C PROGRAMLAMA DİLİ C Nasıl Bir Programlama Dilidir? C orta düzey bir programlama dili olarak son derece esnek kullanımlı bir dildir. C, bir Assembly dili derleyicisinin

Detaylı

ALGORİTMA VE PROGRAMLAMA (Bölüm 1) Prof. Dr. Hakan Ündil - Elektronik Teknolojisi Güz (VİZEDE SORUMLU OLUNAN KONULARINI KAPSAR)

ALGORİTMA VE PROGRAMLAMA (Bölüm 1) Prof. Dr. Hakan Ündil - Elektronik Teknolojisi Güz (VİZEDE SORUMLU OLUNAN KONULARINI KAPSAR) ALGORİTMA VE PROGRAMLAMA (Bölüm 1) Prof. Dr. Hakan Ündil - Elektronik Teknolojisi - 2015-2016 Güz (VİZEDE SORUMLU OLUNAN KONULARINI KAPSAR) 1 PROBLEM ÇÖZME ve ALGORİTMALAR Bir problemi çözmek için yapılacak

Detaylı

ALGORİTMA VE PROGRAMLAMA (Bölüm 1) Prof. Dr. Hakan Ündil - Elektronik Teknolojisi Güz Bölüm 1-2

ALGORİTMA VE PROGRAMLAMA (Bölüm 1) Prof. Dr. Hakan Ündil - Elektronik Teknolojisi Güz Bölüm 1-2 ALGORİTMA VE PROGRAMLAMA (Bölüm 1) Prof. Dr. Hakan Ündil - Elektronik Teknolojisi - 2015-2016 Güz Bölüm 1-2 1 PROBLEM ÇÖZME ve ALGORİTMALAR Bir problemi çözmek için yapılacak işlemler en genel şekilde

Detaylı

ALGORİTMA VE PROGRAMLAMA (Bölüm 3)

ALGORİTMA VE PROGRAMLAMA (Bölüm 3) ALGORİTMA VE PROGRAMLAMA (Bölüm 3) 1 C PROGRAMLAMA DİLİ C Nasıl Bir Programlama Dilidir? C orta düzey bir programlama dili olarak son derece esnek kullanımlı bir dildir. C, bir Assembly dili derleyicisinin

Detaylı

ALGORİTMA VE PROGRAMLAMA (Bölüm 1)

ALGORİTMA VE PROGRAMLAMA (Bölüm 1) PROBLEM ÇÖZME ve ALGORİTMALAR ALGORİTMA VE PROGRAMLAMA (Bölüm 1) Prof. Dr. Hakan Ündil - Elektronik Teknolojisi - 2017-2018 Güz (Bölüm 1 2) Bir problemi çözmek için yapılacak işlemler en genel şekilde

Detaylı

ALGORİTMA VE PROGRAMLAMA (Bölüm 1) Prof. Dr. Hakan Ündil - Elektronik Teknolojisi Güz (Bölüm 1 2)

ALGORİTMA VE PROGRAMLAMA (Bölüm 1) Prof. Dr. Hakan Ündil - Elektronik Teknolojisi Güz (Bölüm 1 2) ALGORİTMA VE PROGRAMLAMA (Bölüm 1) Prof. Dr. Hakan Ündil - Elektronik Teknolojisi - 2017-2018 Güz (Bölüm 1 2) 1 PROBLEM ÇÖZME ve ALGORİTMALAR Bir problemi çözmek için yapılacak işlemler en genel şekilde

Detaylı

Algoritmalar ve Programlama. Algoritma

Algoritmalar ve Programlama. Algoritma Algoritmalar ve Programlama Algoritma Algoritma 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. Algoritma bir sorunun çözümü

Detaylı

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

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ (Algoritma Geliştirmek, Satır Kod) 2017-2018 BaharYarıyılı Balıkesir Üniversitesi Endüstri Mühendisliği Bölümü 3 BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ (Algoritma Geliştirmek, Satır Kod) Yrd. Doç. Dr. İbrahim Küçükkoç Web: ikucukkoc.baun.edu.tr

Detaylı

C Programlama Dilininin Basit Yapıları

C Programlama Dilininin Basit Yapıları Bölüm 2 C Programlama Dilininin Basit Yapıları İçindekiler 2.1 Sabitler ve Değişkenler......................... 13 2.2 Açıklamalar (Expresions)........................ 14 2.3 İfadeler (Statements) ve İfade

Detaylı

PROGRAMLAMAYA GİRİŞ DERS 2

PROGRAMLAMAYA GİRİŞ DERS 2 PROGRAMLAMAYA GİRİŞ DERS 2 Program editörde oluşturulur ve diske kaydedilir Tipik Bir C Programı Geliştirme Ortamının Temelleri 1. Edit 2. Preprocess 3. Compile 4. Link 5. Load 6. Execute Önişlemci programı

Detaylı

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

2. BÖLÜM. Problem Çözme ve Algoritmalar 2. BÖLÜM Problem Çözme ve Algoritmalar Problem Çözme Problem Çözme Tekniği (Descartes e göre): 1. Doğruluğu kesin olarak kanıtlanmadıkça, hiçbir şeyi doğru olarak kabul etmeyin; tahmin ve önyargılardan

Detaylı

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

İÇ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 İÇ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 UYGULAMA Örnek: Yandaki algoritmada; klavyeden 3 sayı

Detaylı

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA 6. HAFTA EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA Öğr. Gör. S. M. Fatih APAYDIN apaydin@beun.edu.tr EMYO Bülent Ecevit Üniversitesi Kdz. Ereğli Meslek Yüksekokulu ALGORİTMA ÖRNEK1: İki sayının toplamı

Detaylı

Temel Giriş/Çıkış Fonksiyonları

Temel Giriş/Çıkış Fonksiyonları Temel Giriş/Çıkış Fonksiyonları Temel giriş/çıkış fonksiyonları, bütün programla dillerinde mevcuttur. Bu tür fonksiyonlar, kullanıcıya ekrana veya yazıcıya bilgi yazdırmasına, ve bilgisayara klavyeden

Detaylı

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

Algoritma ve Programlama: Karar Yapıları ve Döngüler Algoritma ve Programlama: Karar Yapıları ve Döngüler Bir algoritma, herhangi bir programlama dili (C, C++, Pascal, Visual Basic, Java gibi) ile kodlandığında program haline gelir. Algoritmada yer alan

Detaylı

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

Uzaktan Eğitim Uygulama ve Araştırma Merkezi JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java Veri Tipleri ve Özelilkleri Değişken Tanımlama Kuralları Değişken Veri Tipi Değiştirme (Type Casting) Örnek Kodlar Java Veri Tipleri ve Özelilkleri

Detaylı

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

İÇ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 İÇ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 BÖLÜM-II ALGORİTMA I. GİRİŞ Bilgisayar dünyasında, insanın

Detaylı

Bilgisayar II Dersi. Bölüm-2

Bilgisayar II Dersi. Bölüm-2 Bilgisayar II Dersi Bölüm-2 Bilgisayar dünyasında, insanın yaşamı boyunca yaptığı plan kavramına eşdeğer algoritma kavramı vardır. Bilgisayardaki işlemin/işlemlerin gerçekleştirilmesinde izlenecek adımlara

Detaylı

Algoritma ve Programlamaya Giriş

Algoritma ve Programlamaya Giriş Algoritma ve Programlamaya Giriş Algoritma Bir sorunu çözebilmek için gerekli olan sıralı ve mantıksal adımların tümüne Algoritma denir. Doğal dil ile yazılabilir. Fazlaca formal değildir. Bir algoritmada

Detaylı

BÖLÜM 6: KARŞILAŞTIRMALI KONTROL YAPILARI

BÖLÜM 6: KARŞILAŞTIRMALI KONTROL YAPILARI BÖLÜM 6: KARŞILAŞTIRMALI KONTROL YAPILARI C programlama dilinde, diğer programlama dillerinde olduğu gibi, işlemler, ilk satırdan başlamak üzere sırayla çalışır. Program kontrol yapıları ise, programın

Detaylı

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

Döngü (Loop) Deyimleri / Veri Belirleyicileri / Matematiksel Fonksiyonlar Bölüm 5 Döngü (Loop) Deyimleri / Veri Belirleyicileri / Matematiksel Fonksiyonlar İçindekiler 5.1 Formatlı Yazdırma............................ 34 5.2 Döngü Deyimleri............................. 34 5.2.1

Detaylı

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-8 Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-8 Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri BLM-111 PROGRAMLAMA DİLLERİ I Ders-8 Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri Yrd. Doç. Dr. Ümit ATİLA umitatila@karabuk.edu.tr http://web.karabuk.edu.tr/umitatilla/ Temel Veri Tipleri C dilinde

Detaylı

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

KBÜ. TBP101 Programlama Temelleri. Öğr. Gör. Dr. Abdullah ELEN KARABÜK ÜNİVERSİTESİ. KBÜ KARABÜK ÜNİVERSİTESİ TBP101 Programlama Temelleri «A LG O R İ T M A G E L İ Ş T İ R M E» Öğr. Gör. Dr. Abdullah ELEN Karabük Üniversitesi T.O.B.B. Teknik Bilimler Meslek Yüksekokulu Demir Çelik Kampüsü

Detaylı

BASİT C PROGRAMLARI Öğr.Gör.Dr. Mahmut YALÇIN

BASİT C PROGRAMLARI Öğr.Gör.Dr. Mahmut YALÇIN BASİT C PROGRAMLARI Öğr.Gör.Dr. Mahmut YALÇIN Basit C Programları: Bir Metni Yazdırmak #include /* program çalışmaya main fonksiyonundan başlar*/ int main() { printf( "C diline hoşgeldiniz!\n"

Detaylı

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

Programlama Dilleri. C Dili. Programlama Dilleri-ders02/ 1 Programlama Dilleri C Dili Programlama Dilleri-ders02/ 1 Değişkenler, Sabitler ve Operatörler Değişkenler (variables) bellekte bilginin saklandığı gözlere verilen simgesel isimlerdir. Sabitler (constants)

Detaylı

ESM-361 Mikroişlemciler. 3. Hafta Ders Öğretim Üyesi Dr.Öğr.Üyesi Ayşe DEMİRHAN

ESM-361 Mikroişlemciler. 3. Hafta Ders Öğretim Üyesi Dr.Öğr.Üyesi Ayşe DEMİRHAN ESM-361 Mikroişlemciler 3. Hafta Ders Öğretim Üyesi Dr.Öğr.Üyesi Ayşe DEMİRHAN Bit operatörleri Bit operatörleri bit düzeyinde işlem yapan operatörlerdir; yani sayıları bir bütün olarak değil, bit bit

Detaylı

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

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi Bil101 Bilgisayar Yazılımı I Bilgisayar Yüksek Mühendisi Editör Disk 1)Kaynak kodlar editör aracılığı ile oluşturulur. (.c) Kaynak dosya Önişleyici Disk 2)Önişleyici kodlar içerisindeki ilk işleme işini

Detaylı

Genel Programlama II

Genel Programlama II Genel Programlama II 15.02.2011 1 Genel Programlama Tekrar Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi. Önceki bölümde bir problemin çözümü ile

Detaylı

Fonksiyonlar. C++ ve NESNEYE DAYALI PROGRAMLAMA 51. /* Fonksiyon: kup Bir tamsayının küpünü hesaplar */ long int kup(int x) {

Fonksiyonlar. C++ ve NESNEYE DAYALI PROGRAMLAMA 51. /* Fonksiyon: kup Bir tamsayının küpünü hesaplar */ long int kup(int x) { Fonksiyonlar Kendi içinde bağımsız olarak çalışabilen ve belli bir işlevi yerine getiren program modülleridir. C programları bu modüllerden (fonksiyonlar) oluşurlar. Fonksiyonların yazılmasındaki temel

Detaylı

MAK 1005 Bilgisayar Programlamaya Giriş C DİLİNE GİRİŞ. Prof. Dr. Necmettin Kaya

MAK 1005 Bilgisayar Programlamaya Giriş C DİLİNE GİRİŞ. Prof. Dr. Necmettin Kaya MAK 1005 Bilgisayar Programlamaya Giriş C DİLİNE GİRİŞ Prof. Dr. Necmettin Kaya C PROGRAMLAMA DİLİ ÖZELLİKLERİ C programlama dili, 1972 yılında Bell Labortuvarı nda Dennis Ritchie tarafından geliştirilmiştir.

Detaylı

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

BMT 101 Algoritma ve Programlama I 6. Hafta. Yük. Müh. Köksal Gündoğdu 1 BMT 101 Algoritma ve Programlama I 6. Hafta Yük. Müh. Köksal Gündoğdu 1 C++ Veri Tipleri Yük. Müh. Köksal Gündoğdu 2 Veri Tipleri Tam sayı ve Ondalık sayı veri tipleri Veri Tipi Alt Sınıf Üst Sınıf Duyarlı

Detaylı

HSancak Nesne Tabanlı Programlama I Ders Notları

HSancak Nesne Tabanlı Programlama I Ders Notları SABİTLER VE DEĞİŞKENLER Değişken, verilerin bellekte geçici olarak kaydedilmesini ve gerektiğinde kullanılmasını sağlayan değerdir. Nesne tabanlı programlama dilinde değişken kullanımı diğer programlama

Detaylı

Program AkıĢ Kontrol Yapıları

Program AkıĢ Kontrol Yapıları C PROGRAMLAMA Program AkıĢ Kontrol Yapıları Normal Ģartlarda C dilinde bir programın çalıģması, komutların yukarıdan aģağıya doğru ve sırasıyla iģletilmesiyle gerçekleģtirilir. Ancak bazen problemin çözümü,

Detaylı

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

ALGORİTMALAR. Turbo C Bilgisayarda Problem Çözme Adımları. Bilgisayarda Problem Çözme Adımları. Turbo C ++ 3.0 ALGORİTMALAR http://vaibhavweb.tripod.com/others/tc3.zip http://www.top4download.com/turbo-c- /aklqwuba.html 1 2 Bilgisayarda Problem Çözme Adımları Bilgisayarda Problem Çözme Adımları 1-Problemi

Detaylı

Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : dak.

Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : dak. Selçuk Üniversitesi Mühendislik Fakültesi Harita Mühendisliği Bölümü ra Sınavı Test Soruları dı soyadı :... Öğrenci no :... İmza :... Tarih, Süre :13.04.2017 60 dak. Dikkat!!! Soru kitapçığında ve cevap

Detaylı

Fonksiyonlar (Altprogram)

Fonksiyonlar (Altprogram) Fonksiyonlar (Altprogram) C Programlama Dili fonksiyon olarak adlandırılan alt programların birleştirilmesi kavramına dayanır. Bir C programı bir ya da daha çok fonksiyonun bir araya gelmesi ile oluşur.

Detaylı

BÖLÜM 2: ALGORİTMALAR

BÖLÜM 2: ALGORİTMALAR BÖLÜM 2: ALGORİTMALAR Algoritma bir problemin çözümünde (işlemin gerçekleşmesinde) izlenen adımlar dizisi olup, problemi çözmek için yürütülecek eylemlerin ve bu eylemlerin sırasını belirten bir talimattır,

Detaylı

C++ Operatörler (Operators)

C++ Operatörler (Operators) C++ Operatörler (Operators) Konular Operatörler o Aritmetiksel (Matematiksel) Operatörler o Karşılaştırma Operatörleri o Mantıksal Operatörler o Atama Operatörleri o Bit Düzeyinde Operatörler o Özel Amaçlı

Detaylı

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

AKIŞ ŞEMASI AKIŞ ŞEMASI AKIŞ ŞEMASI ŞEKİLLERİ GİRİŞ GİRİŞ AKIŞ ŞEMASI Bir önceki ünitede algoritma, bilgisayarda herhangi bir işlem gerçekleştirmeden ya da program yazmaya başlamadan önce gerçekleştirilmesi düşünülen işlemlerin belirli bir mantık ve plan

Detaylı

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

Algoritmik Program Tasarımı, Akış Şemaları ve Programlama. Bilgisayar Mühendisliğine Giriş 1 Algoritmik Program Tasarımı, Akış Şemaları ve Programlama Bilgisayar Mühendisliğine Giriş 1 I) Algoritmik Program Tasarımı, Akış Şemaları Algoritmik program tasarımı, verilen bir problemin bilgisayar ortamında

Detaylı

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

Fortran komut satırı toplam 80 kolon ve 5 bölgeden oluģur. Komut satırının yapısı aģağıdaki gibidir: FORTRAN (FORmula TRANslation) Fortran komut satırı toplam 80 kolon ve 5 bölgeden oluģur. Komut satırının yapısı aģağıdaki gibidir: 1 2...5 6 7...72 73...80 A B C D E A Bölgesi: (1. kolon) B Bölgesi: (2-5

Detaylı

B02.6 Karar Verme, Eşitlik ve Bağıntı Operatörleri

B02.6 Karar Verme, Eşitlik ve Bağıntı Operatörleri B02.6 Karar Verme, Eşitlik ve Bağıntı Operatörleri 49 Yrd. Doç. Dr. Yakup EMÜL, Bilgisayar Programlama Ders Notları (B02) Çalıştırılabilir C ifadeleri ya bir işlem gerçekleştirir ( girilen verilerin toplanması

Detaylı

Algoritma ve Akış Diyagramları

Algoritma ve Akış Diyagramları Algoritma ve Akış Diyagramları Bir problemin çözümüne ulaşabilmek için izlenecek ardışık mantık ve işlem dizisine ALGORİTMA, algoritmanın çizimsel gösterimine ise AKIŞ DİYAGRAMI adı verilir 1 Akış diyagramları

Detaylı

Bölüm 2 - C ile Programlamaya Giriş

Bölüm 2 - C ile Programlamaya Giriş 1 Bölüm 2 - C ile Programlamaya Giriş Başlıklar 2.1 Giriş 2.2 Basit C Programları: Bir Metni Yazdırmak 2.3 Basit C Programları: İki Tam Sayıyı Toplamak 2.4 Hafıza Konuları 2.5 C de Aritmetik 2.6 Karar

Detaylı

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

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır. GİRİŞ Algoritması tasarlanmış (metin olarak yazılmış, sözde kodlarla kodlanmış veya akış diyagramı çizilmiş) bir problemi/işlemi, bilgisayar programlama dillerinden birisiyle kodlamak son derece kolaydır.

Detaylı

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

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır. GİRİŞ Algoritması tasarlanmış (metin olarak yazılmış, sözde kodlarla kodlanmış veya akış diyagramı çizilmiş) bir problemi/işlemi, bilgisayar programlama dillerinden birisiyle kodlamak son derece kolaydır.

Detaylı

mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar

mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar Algoritma ve Programlamaya Giriş mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar İçerik Algoritma Akış Diyagramları Programlamada İşlemler o o o Matematiksel Karşılaştırma Mantıksal Programlama

Detaylı

C PROGRAMLAMA DİLİNE GİRİŞ

C PROGRAMLAMA DİLİNE GİRİŞ C PROGRAMLAMA DİLİNE GİRİŞ C Dilinin Tarihçesi 1972 de Dennis Ritchie tarafından AT&T Bell Laboratuarlarında B dilinden geliştirildi. C dili konusundaki ilk kitap 1978 de Dennis Ritchie ve Brain Kernighan

Detaylı

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

FBEB-512 C++ ile Nesne Tabanlı Programlama Güz 2009 (1. Hafta) (Yrd. Doç. Dr. Deniz Dal) FBEB-512 C++ ile Nesne Tabanlı Programlama Güz 2009 (1. Hafta) (Yrd. Doç. Dr. Deniz Dal) Algoritma Geliştirme ve Akış Diyagramları BİLGİSAYARLA PROBLEM ÇÖZÜMÜ AŞAMALARI Analiz Algoritma Geliştirilmesi

Detaylı

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

Uzaktan Eğitim Uygulama ve Araştırma Merkezi JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java da Fonksiyon Tanımlamak Java da Döngüler Java da Şart İfadeleri Uygulamalar Java da Fonksiyon Tanımlamak JAVA DA FONKSİYON TANIMLAMAK 4 Fonksiyonlar;

Detaylı

Giris {\} /\ Suhap SAHIN Onur GÖK

Giris {\} /\ Suhap SAHIN Onur GÖK Giris 0 \ /\ Suhap SAHIN Onur GÖK Fonksiyon C: Ana Fonksiyon(main) main() main() C: Ana Fonksiyon(main) main() main() C: Ana Fonksiyon(main) Giris? main() Çıkıs main() C: Ana Fonksiyon(main) void main()

Detaylı

C Konsol Giriş Çıkış Fonksiyonları

C Konsol Giriş Çıkış Fonksiyonları C Konsol Giriş Çıkış Fonksiyonları Öğr. Gör. M. Ozan AKI Rev 1.0 Stringlerde Özel Karakterler \n : Bir sonraki satırın ilk sütununa git \b : Backspace (önceki karakteri sil) \a : Bip sesi \\ : Ters bölü

Detaylı

GENEL GĐRĐŞ-ÇIKIŞ FONKSĐYONLARI. ENF102 Jeoloji 1. #include <stdio.h> printf Fonksiyonu ÖRNEK. printf

GENEL GĐRĐŞ-ÇIKIŞ FONKSĐYONLARI. ENF102 Jeoloji 1. #include <stdio.h> printf Fonksiyonu ÖRNEK. printf Giriş GENEL GĐRĐŞ-ÇIKIŞ FONKSĐYONLARI printf Fonksiyonu scanf Fonksiyonu Verilerin kaybolmaması için hafızada değişkenler içine yerleştirilmeleri gerekir. Bu veriler iki şekilde yerleştirilebilir. Değişkene

Detaylı

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

BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ. Yrd.Doç.Dr. Emel ARSLAN BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ Yrd.Doç.Dr. Emel ARSLAN earslan@istanbul.edu.tr Problem Çözme ve Algoritmalar Yrd.Doç.Dr. Emel ARSLAN earslan@istanbul.edu.tr Problem C o zme Problem Çözme Tekniği

Detaylı

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 3. Bölüm Veri Tipleri ve Değişkenler

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 3. Bölüm Veri Tipleri ve Değişkenler Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 3. Bölüm Veri Tipleri ve Değişkenler C Programlama Dr. Serkan DİŞLİTAŞ 3.1. Sabitler Sabitler, tanımlanmasıyla birlikte program içerisinde

Detaylı

Algoritma ve Akış Diyagramları

Algoritma ve Akış Diyagramları Algoritma ve Akış Diyagramları Bir problemin çözümüne ulaşabilmek için izlenecek ardışık mantık ve işlem dizisine ALGORİTMA, algoritmanın çizimsel gösterimine ise AKIŞ DİYAGRAMI adı verilir. 1 Akış diyagramları

Detaylı

3/7/2011. ENF-102 Jeoloji 1. Tekrar -- Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Veri Tanımları ve Mantıksal Đşlemler

3/7/2011. ENF-102 Jeoloji 1. Tekrar -- Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Veri Tanımları ve Mantıksal Đşlemler Veri Tanımları ve Mantıksal Đşlemler Tekrar -- Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Kullanılacak bütün değişkenlerin kullanılmadan önce C derleyicisine bildirilmeleri gerekir.

Detaylı

Programlamaya Giriş. Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi.

Programlamaya Giriş. Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi. Programlamaya Giriş Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi. Programın Yazımında İzleyeceğimiz Adımlar Problemi anla. İhtiyaçları belirle. Problemin

Detaylı

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

BİLGİSAYAR MÜHENDİSLİĞİ ALGORİTMA VE PROGRAMLAMA II 2.HAFTA SWİTCH (CASE), SAYAÇLAR, DÖNGÜLER, BİLGİSAYAR MÜHENDİSLİĞİ ALGORİTMA VE PROGRAMLAMA II 2.HAFTA SWİTCH (CASE), SAYAÇLAR, DÖNGÜLER, C++ İÇİN UFAK HATIRLATMALAR Değişken adları bir harf ile başlamalıdır. (a-z, A-Z). Değişken adı numara içerebilir.

Detaylı

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 2

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 2 NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 2 JAVA DA PROGRAM DENETİMİ VE OPERATÖRLER Java programlama dilinde temel tipleri ve nesneleri yönlendirmek ve değiştirmek için operatörler kullanılır. Atamalar sağ taraftaki

Detaylı

C PROGRAMLAMA D İ L İ

C PROGRAMLAMA D İ L İ C PROGRAMLAMA DİLİ C Programlama Dilinin Temelleri C Programlama Dili'ni popüler kılan önemli nedenler aşağıda listelenmiştir: C, güçlü ve esnek bir dildir. C ile işletim sistemi veya derleyici yazabilir,

Detaylı

ALGORİTMA VE PROGRAMLAMA I

ALGORİTMA VE PROGRAMLAMA I ALGORİTMA VE PROGRAMLAMA I Yrd. Doç. Dr. Deniz KILINÇ deniz.kilinc@cbu.edu.tr YZM 1101 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Koşul Karşılaştırma Operatörleri Mantıksal

Detaylı

Diziler (Arrays) Çok Boyutlu Diziler

Diziler (Arrays) Çok Boyutlu Diziler Diziler (Arrays) Çok Boyutlu Diziler ÇOK BOYUTLU DİZİLER Birden fazla indis numarası ile elemanlarına ulaşılan dizilere çok boyutlu diziler denir. Bunlardan en sık kullanılanı çift boyutlu dizilerdir.

Detaylı

C#(Sharp) Programlama Dili

C#(Sharp) Programlama Dili Değişkenler C#(Sharp) Programlama Dili Program yazarken her zaman sabit verilerle çalışmayız, çoğu zaman programımızda bir verinin kullanıcının davranışına göre değişmesi gerekir. Kullanıcıdan bir metin

Detaylı

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

BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ Yrd.Doç.Dr. Emel ARSLAN earslan@istanbul.edu.tr C DİLİNDE FONKSİYONLAR C DİLİNDE FONKSİYONLAR C programlama dili fonksiyon olarak adlandırılan alt programların

Detaylı

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

BİLGİSAYAR BİLİMİ DERSİ (KUR 1) PYTHON PROGRAMLAMA DİLİ ÇALIŞMA KÂĞIDI - 1 BİLGİSAYAR BİLİMİ DERSİ (KUR 1) PYTHON PROGRAMLAMA DİLİ ÇALIŞMA KÂĞIDI - 1 Ekrana Metin Yazdırmak Ekranda metin yazdırmak istendiğinde print komutu kullanılır. Kullanımı aşağıda verilmiştir. Parantez içinde

Detaylı

Program akıģı sırasında belirtilen satır numaralı yere gitmek için kullanılır. Genel formu: [<satır numarası>] GOTO <satır numarası 1> GOTO n

Program akıģı sırasında belirtilen satır numaralı yere gitmek için kullanılır. Genel formu: [<satır numarası>] GOTO <satır numarası 1> GOTO n KONTROL DEYİMLERİ Kontrol deyimleri bir programın normal akıģını değiģtirmek için kullanılır. Aksi söylenmedikçe programın komut satırları birbiri ardına çalıģtırılır. Program içindeki yapılan sorgulamalara

Detaylı

Eln 1001 Bilgisayar Programlama I

Eln 1001 Bilgisayar Programlama I Eln 1001 Bilgisayar Programlama I GiriŞ / ǹk¹Ş Fonksiyonlar¹ Ne ÖĆreneceĆiz? Temel Giriş/Çıkış Yapısı Giriş Fonksiyonları Karakterler için giriş fonksiyonları Scanf fonksiyonu Formatlı giriş Çıkış Fonksiyonları

Detaylı

Nesne Tabanlı Programlama

Nesne Tabanlı Programlama Nesne Tabanlı Programlama Ders Notu - 1 (Değerler, Değişkenler, İşleçler, Tip Dönüşümleri, Mantıksal Operatörler) Dicle Üniversitesi Mühendislik Fakültesi Elektrik Elektronik Mühendisliği Bölümü 1 Değerler

Detaylı

Döngü Komutları. Komutu. while Komutu Diğer Operatörler Bileşik Komut for Komutu. İçiçe Döngüler break ve continue Komutları

Döngü Komutları. Komutu. while Komutu Diğer Operatörler Bileşik Komut for Komutu. İçiçe Döngüler break ve continue Komutları Döngüler Döngü Komutları while Komutu Diğer Operatörler Bileşik Komut for Komutu do-while Komutu İçiçe Döngüler break ve continue Komutları while Komutu Döngü komutları komutların bir çok kez yeniden yürülmesini

Detaylı

Sınav tarihi : Süre : 60 dak. a) ABCDE b) BCDE c) ABCD d) kod hatalı e) BCD

Sınav tarihi : Süre : 60 dak. a) ABCDE b) BCDE c) ABCD d) kod hatalı e) BCD Selçuk Üniversitesi, Mühendislik Fakültesi, Harita Mühendisliği Bölümü Yıliçi Sınavı Test Soruları Adı soyadı : Öğrenci no : Sınav tarihi : 13.04.2015 Süre : 60 dak. 1. Hangisi gerçek sayı değişmezi değildir?

Detaylı

C Programlama printf() Fonksiyonu

C Programlama printf() Fonksiyonu C Programlama printf() Fonksiyonu Standart C kütüphanesinin bir parçası olan printf() C Programlama Dili'nin genel amaçlı çıktı alma fonksiyonudur. Girdi ve çıktı deyimleri gerçekte C dilinin bir parçası

Detaylı

Hansel zeki bir çocukmuģ. Sabah ormana doğru yürürlerken, akģam yemeğinde cebine sakladığı kuru ekmeğin kırıntılarını (yere iz bırakıp kaybolmamak ve

Hansel zeki bir çocukmuģ. Sabah ormana doğru yürürlerken, akģam yemeğinde cebine sakladığı kuru ekmeğin kırıntılarını (yere iz bırakıp kaybolmamak ve ALGORİTMALAR Hansel zeki bir çocukmuģ. Sabah ormana doğru yürürlerken, akģam yemeğinde cebine sakladığı kuru ekmeğin kırıntılarını (yere iz bırakıp kaybolmamak ve daha sonra bu izi takip ederek evin yolunu

Detaylı

Karakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır

Karakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır stringh floath Karakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır 32 Sorgulama İfadesi - if Deyimi (5 Hafta) Bu deyim sorgulamanın tek basamakta yapılacağı yerlerde

Detaylı

/ C Bilgisayar Programlama Yıliçi Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak.

/ C Bilgisayar Programlama Yıliçi Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak. Selçuk Üniversitesi Mühendislik-Mimarlık Fakültesi Harita Mühendisliği Bölümü Yıliçi Sınavı Test Soruları dı soyadı :... Öğrenci no :... İmza :... Tarih, Süre :26.11.2012, 60 dak. Dikkat!!! Soru kitapçığında

Detaylı

PROGRAMLAMA ALGORĠTMA

PROGRAMLAMA ALGORĠTMA PROGRAMLAMA Programlama Nedir? Bir iģi yapmak için gerekli iģlemlerin tespit edilmesi, tanımlanması ve bu iģlerin sırasının bilinmesidir. Programlama Basamakları: 1- Problemi Tanıma: Programın programcı

Detaylı

Internet Programming II

Internet Programming II Internet Programming II Elbistan Meslek Yüksek Okulu 2016 2017 Bahar Yarıyılı Öğr. Gör. Murat KEÇECĠOĞLU 1 PHP Program Yapısı Php çoğunlukla HTML etiketleri arasına gömülerek kullanılır. Form işlemleri

Detaylı

BİLGİSAYAR PROGRAMLAMA MATLAB

BİLGİSAYAR PROGRAMLAMA MATLAB BİLGİSAYAR PROGRAMLAMA MATLAB Arş. Gör. Ahmet ARDAHANLI Kafkas Üniversitesi Mühendislik Fakültesi Ders Bilgileri Dersin Hocası: Araş. Gör. Ahmet Ardahanlı E-posta: ahmet.ardahanli@hotmail.com Oda: DZ-33

Detaylı

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

PROGRAMLAMAYA GİRİŞ VE ALGORİTMA «YTÜROK» EĞİTMEN:REHA ÖZGÜR ŞİMŞEK PROGRAMLAMAYA GİRİŞ VE ALGORİTMA «YTÜROK» EĞİTMEN:REHA ÖZGÜR ŞİMŞEK Giriş-Tanımlamalar Program Nedir? Tanımlanmış bir problemi bilgisayar ortamında çözen ürüne program denir. Programlama Nedir? Tanımlanmış

Detaylı

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

Javascript. 1) Notepad++ aşağıdaki kodları yazıp deneme.html olarak kaydedelim. 2) Biraz önceki sayfa sadece html kodların içeriyordu. Javascript Html sayfalarının içine yazılarak, sayfayı daha etkileşimli hale getirir. click olayları, uyarı mesajları gibi hareketlerle sayfayı daha dinamik hale getirir. Javascript olmadan yazılan html

Detaylı

Genel Programlama I

Genel Programlama I Genel Programlama I 30.09.2010 1 Genel Programlama I Ders İçeriği Programlamaya giriş ve algoritma kavramları Basit ve karmaşık veri tipleri Program kontrol komutları (Döngü ve şart yapıları) Diziler ve

Detaylı

2. Dereceden Denklemin Köklerini Bulan Program

2. Dereceden Denklemin Köklerini Bulan Program 2. Dereceden Denklemin Köklerini Bulan Program [crayon-5bb74e5b18b15225541464/] C++ 2.dereceden denklemin köklerini bulan program [crayon-5bb74e5b18b25989362529/] ÇIKTI; C++ 2. dereceden denklemin köklerini

Detaylı

BİLGİSAYAR PROGRAMLAMA DERSİ

BİLGİSAYAR PROGRAMLAMA DERSİ BİLGİSAYAR PROGRAMLAMA DERSİ 5. DERS NOTU Konu: Döngü Yapıları Hazırlayan: Yrd. Doç. Dr. Ahmet DUMLU DÖNGÜ YAPILARI Birçok uygulamada bazı işlemlerin tekrar tekrar gerçekleştirilmesi gerekir. Bizlere bu

Detaylı

PROGRAMLAMA DİLLERİ I

PROGRAMLAMA DİLLERİ I PROGRAMLAMA DİLLERİ I Öğr. Gör. M. Mutlu YAPICI Ankara Üniversitesi Elmadağ Meslek Yüksekokulu Ders İzlencesi Öğr. Gör. M. Mutlu YAPICI Hafta 1. Hafta 2. Hafta 3. Hafta 4. Hafta 5. Hafta 6. Hafta 7. Hafta

Detaylı

BİL1001 Bilgisayar Bilimlerine Giriş 1

BİL1001 Bilgisayar Bilimlerine Giriş 1 DEÜ Bilgisayar Bilimleri Bölümü BİL1001 Bilgisayar Bilimlerine Giriş 1 Öğr. Gör. Dr. Alper VAHAPLAR 2017 Yaz Okulu Bilgisayar Bilimlerine Giriş 1 Programlama Dillerine (Programming Languages) Giriş Dil

Detaylı

Akış Kontrol Mekanizmaları

Akış Kontrol Mekanizmaları Akış Kontrol Mekanizmaları 1 Akış Kontrol Mekanizmaları if else switch for döngüsü for döngüsünün çalışma prensibi for döngüsüyle ilgili örnekler for döngüsüyle ilgili kurallar while döngüsü while döngüsünün

Detaylı

Nesne Tabanlı Programlama

Nesne Tabanlı Programlama Nesne Tabanlı Programlama Ders Notu - 1 Dicle Üniversitesi Mühendislik Fakültesi Elektrik Elektronik Mühendisliği Bölümü 1 Değerler ve Değişkenler Values & Variables 2 1 Değişkenlerin Özellikleri Tipi

Detaylı

7- Turbo Pascal Programlamada Alt Programlar (Procedure)

7- Turbo Pascal Programlamada Alt Programlar (Procedure) 7- Turbo Pascal Programlamada Alt Programlar (Procedure) Alt programların ana programda yapacağımız ek işlevleri üstlendiğinden daha önceki bölümde bahsetmiştik. Alt programlar genelde ana program bloğu

Detaylı

/ C Bilgisayar Programlama Final Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak.

/ C Bilgisayar Programlama Final Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak. Selçuk Üniversitesi Mühendislik Fakültesi Harita Mühendisliği Bölümü Final Sınavı Test Soruları dı soyadı :... Öğrenci no :... İmza :... Tarih, Süre :09.01.2013, 60 dak. Dikkat!!! Soru kitapçığında ve

Detaylı

C Programlama Dilinde Değişkenler

C Programlama Dilinde Değişkenler C Programlama Dilinde Değişkenler Değişkenler bir programlama dilinin en önemli bileşenlerindendir. En basit bir aritmetik işlemin bile kullanıcının girdiği değerleri saklamak için çeşitlik bellek alanlarına

Detaylı

Ders Tanıtım Sunumu. Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı. Öğr. Gör. Murat KEÇECİOĞLU 1

Ders Tanıtım Sunumu. Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı. Öğr. Gör. Murat KEÇECİOĞLU 1 Ders Tanıtım Sunumu Internet Programming II Elbistan Meslek Yüksek Okulu 2012 2013 Bahar Yarıyılı Öğr. Gör. Murat KEÇECİOĞLU 1 PHP Program Yapısı Php çoğunlukla HTML etiketleri arasına gömülerek kullanılır.

Detaylı

Hafta 8 C Dilinde Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri

Hafta 8 C Dilinde Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri BLM111 Programlama Dilleri I Hafta 8 C Dilinde Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri Yrd. Doç. Dr. Caner ÖZCAN C Dilinde Temel Veri Tipleri C dilinde kullanılacak değişkenler ve veri tipleri

Detaylı

PASCAL PROGRAMLAMA DİLİ YAPISI

PASCAL PROGRAMLAMA DİLİ YAPISI BÖLÜM 3 PASCAL PROGRAMLAMA DİLİ YAPISI 3.1. Giriş Bir Pascal programı en genel anlamda üç ayrı kısımdan oluşmuştur. Bu kısımlar bulunmaları gereken sıraya göre aşağıda verilmiştir. Program Başlığı; Tanımlama

Detaylı

Örnek: İki fonksiyondan oluşan bir program. Fonksiyon Tanımı

Örnek: İki fonksiyondan oluşan bir program. Fonksiyon Tanımı Fonksiyonlar Fonksiyon Tanımı Değer Döndürmeyen Fonksiyonlar Değer Döndüren Fonksiyonlar Çok Parametreli Fonksiyonlar Değişken Kapsamları Çok Fonksiyonlu Programlar Fonksiyon Tanımı Karmaşıkveuzunprogramları,

Detaylı

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

Programlama Giriş. 17 Ekim 2015 Cumartesi Yrd. Doç. Dr. Mustafa YANARTAŞ 1 17 Ekim 2015 Cumartesi Yrd. Doç. Dr. Mustafa YANARTAŞ 1 Ders Not Sistemi Vize : % 40 Final : % 60 Kaynaklar Kitap : Algoritma Geliştirme ve Programlama Giriş Yazar: Dr. Fahri VATANSEVER Konularla ilgili

Detaylı

Temel Bilgisayar Programlama

Temel Bilgisayar Programlama Temel Bilgisayar Programlama C Programlamaya Giriş Yrd. Doç. Dr. Tahir Emre Kalaycı 2012 Yrd. Doç. Dr. Tahir Emre Kalaycı () Temel Bilgisayar Programlama 2012 1 / 29 İçerik 1 Temel Kavramlar Algoritmanın

Detaylı

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

EM205 26/9/2014. Programlamaya giriş Algoritmalar. Amaçlar EM205 26/9/2014 Programlamaya giriş Algoritmalar Temel kavramlar Algoritmalar Amaçlar Algoritma kavramını öğrenmek, Algoritmaları ifade edebilmek, Temel matematiksel algoritmaları yazabilmek C programlama

Detaylı

Programlama Dilleri 1. Ders 4: Diziler

Programlama Dilleri 1. Ders 4: Diziler Programlama Dilleri 1 Ders 4: Diziler Genel Bakış Tanım Dizilerin tanımlanması Dizilere ilk değer verilmesi Yerel ve Global diziler Dizilerin birbirine atanması Diziler ile ilgili örnekler Çalışma soruları

Detaylı