34
Algoritma ve Programlama Ders 3

Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Algoritma ve

ProgramlamaDers 3

Page 2: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Algoritma - Sözde KodÖrnekler

Page 3: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Algoritma - Sözde Kod

Klavyeden girilen 5 sayının ortalamasını bulan programın algoritmasını sözde kod ile yazınız.

1. Başla

2. N = 5

3. T = 0

4. S = 0

5. Eğer S > N-1 ise git 10

6. S = S + 1

7. Sayıyı (A) gir

8. T = T + A

9. Git 5

10. Ortalama = T / N

11. Yazdır Ortalama

12. Dur

Eski S Yeni S Sayı Eski T Yeni T Ort.

0 0+1=1 3 0 0+3=3 ---

1 1+1=2 1 3 3+1=4 ---

2 2+1=3 5 4 4+5=9 ---

3 3+1=4 11 9 9+11=20 ---

4 4+1=5 35 20 20+35=55 ---

Ortalama = 55/5=11

Page 4: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Algoritma - Sözde Kod

Klavyeden girilen N sayısının faktöriyelini hesaplayan programın algoritmasınısözde kod ile yazınız.

1. Başla

2. N sayısını gir

3. F=1

4. S=0

5. Eğer S > N-1 ise git 9

6. S=S+1

7. F=F*S

8. Git 5

9. Yazdır F

10. Dur

Eski S Yeni S Eski F Yeni F Sonuç

0 0+1=1 1 1*1=1 ---

1 1+1=2 1 1*2=2 ---

2 2+1=3 2 2*3=6 ---

3 3+1=4 6 6*4=24 ---

4 4+1=5 24 24*5=120 120

Page 5: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Algoritma - Sözde Kod

Aşağıdaki algoritmanın sonucunu (ya da çıktısını) hesaplayınız.

1. Başla

2. F = 1

3. S = 20

4. Eğer S < 1 ise git 9

5. S = S – 3

6. F = F + S

7. F = F + 2

8. Git 4

9. Yazdır F

10. Dur

Adım Silk Filk (S<1) SSon FAra FSon

1 20 1 false 17 18 20

2 17 20 false 14 34 36

3 14 36 false 11 47 49

4 11 49 false 8 57 59

5 8 59 false 5 64 66

6 5 66 false 2 68 70

7 2 70 false -1 69 71

8 -1 71 true --- --- ---

Page 6: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Akış DiyagramlarıDevam

Page 7: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Kullanılan Şekiller – Başla / Dur

Bir algoritmanın başladığı ve bittiği konumu gösterir.

Her akış diyagramında «Başla» ve «Dur» işlemleri bulunmak zorundadır.

Diğer tüm işlemler bu iki şeklin arasına gelir.

Page 8: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Kullanılan Şekiller – Veri Girişi

Bilgisayara dışarıdan (özellikle klavyeden) veri girişini betimleyen şekildir.

Şeklin içine dışarıdan gelen verilerin aktarılacağı isim(ler) yazılır.

Page 9: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Kullanılan Şekiller – İşlem

Programın çalışması sırasında yapılacak işlemleri ifade etmede kullanılır.

İşlem cümleleri / ifadeleri bilgisayar mantığına uygun olarak yazılır.

Program akışı bir işlem adımına geldiğinde şeklin içinde yazılı olan işlem

gerçekleştirilir.

Birden fazla işlem aynı şekilde aralarına virgül konarak ya da alt alta

yazılarak gösterilebilir.

Page 10: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Kullanılan Şekiller – Yazdırma / Çıktı

Bir çıkış birimine (ekran, yazıcı, vb.) veri / bilgi yazma amaçlı kullanılır.

Alfasayısal veriler yazdırılacaksa veri çift tırnaklar arasında yazılır.

Doğrudan değişkenin içeriği yazdırılacak ise değişkenin adı yazılır.

Page 11: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Kullanılan Şekiller – Döngü

Belirli işlem veya işlem blokları aynı veya farklı / ardışık değerlerle ya da bazı

koşullar sağlanana kadar döngüler şeklinde tekrarlanır.

Döngü şekli içine döngü değişkeninin başlangıç, bitiş ve adım değerleri

yazılır.

döngü_değişkeni = başlangıç değeri, bitiş değeri, adım değeri

Page 12: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

İç içe Döngüler

Page 13: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Kullanılan Şekiller – Bağlantı

Daire şeklinde olup, işlem akışlarının birleştiği noktayı ifade

eder. Kullanım amaçları;

Farklı yerlere dallanan işlem akışlarını toplamak ve

Tek sayfaya sığmayan veya parça parça çizilen akış

diyagramları arasında bağlantı kurmaktır.

Page 14: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Kullanılan Şekiller – Karar (Karşılaştırma)

Bir algoritmada bir kararın verilmesini ve bu karara göre iki seçenekten

birinin uygulanmasını sağlayan şekildir.

Eşkenar dörtgen içerisine kontrol edilecek mantıksal koşul yazılır.

Program akışı sırasında koşulun doğru olması durumunda "Evet" yazılan

kısma, yanlış olması durumunda "Hayır" yazılan kısma sapılır.

Page 15: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Karar İfadesi Kullanım Şekilleri

1) «koşul» doğru (E) ise «işlem» yapılır, değilse (H) akış devam eder.

2) «koşul» doğru ise «işlem-1», değilse «işlem-2» yapılır.

Page 16: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Örnek - 1

A büyükse; C =A2-B işlemi yapılıp sonucu yazdırılır.

B büyük veya eşitse; C=B2-A işlemi yapılıp sonucu

yazdırılır.

Page 17: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Örnek - 2

Klavyeden girilen bir sayının mutlak değerini

ekrana yazdırma

𝑥 = ቊ−1. 𝑥, 𝑥 < 0𝑥, 𝑥 ≥ 0

Page 18: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Örnek - 3

Dışarıdan girilecek bir N sayısı için 1’den N’ye

kadar olan sayıların toplamını alıp çıktı olarak

veren algoritmanın akış diyagramı

Page 19: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Örnek - 4

Dışarıdan girilen iki sayıyı büyükten küçüğe

doğru sıralayan programın akış diyagramı

Page 20: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Örnek - 5

Bir sayının N’inci kuvvetini alan bir akış diyagramı

Page 21: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Akış Diyagramları

Klavyeden girilen üç sayıdan en büyüğünü bularak yazdıran programın

akış diyagramını çiziniz.

Page 22: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Akış Diyagramları

ax2+ bx + c = 0 şeklindeki ikinci dereceden bir denklemin köklerini bulan

programın akış diyagramını çiziniz.

Page 23: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Programlama Dillerine

GirişTemel Kavramlar ve C Dilinin Yapısı

Page 24: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Algoritmalar ve Programlama Dilleri

Programlama dili bilgisayarda çözülecek bir sorun için çözümün bilgisayara adım adımaktarılmasını sağlayan biçimsel kuralları olan ve bu kurallara sıkı sıkıya bağlılığı gerektiren birtanımlar kümesidir.

Basit bir benzetmeyle bir programlama dili insanla bilgisayar arasında çeviri yapan bir çevirmenolarak düşünülebilir.

Doğal dil ile betimlenen algoritmalarda sıkı sıkıya uyulması gereken kurallar bulunmaz. Bunlarınaynı dili kullanan kişilerce kolay anlaşılabilir olması yeterlidir.

Akış diyagramlarında ise belirlenmiş semboller yer alır ve bu semboller tüm dünyada standarttır.Kısmen biçimsel olan bu diyagramlar, sorunun çözümünü daha evrensel bir dille ifade etmek içinkullanılır.

Akış diyagramları veya algoritma ile elde edilen çözüm bir programlama dili ile bilgisayarortamına aktarılır.

Programlama dilleri, standart tanımlar içerir ve bir programı yazarken bu tanımlardanuzaklaşılamaz. Bu nedenle bir program parçasından, başkalarının başka şeyler anlaması mümkündeğildir.

Yazılan programlar bir derleyici vasıtası ile makine diline çevrilir, varsa hataların bulunması sağlanırve programcı bu hataları düzeltir.

Page 25: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Programlama Dillerinin Özellikleri - 1

İfade gücü: Dili kullanırken gerçek ifadelerin kullanılması ile ilgili birkavramdır.

Örneğin, bir mühendis kodlama sırasında matematiksel ifadeleri betimlerkennormalde kullandığı işaretleri ve terimleri kullanmak isteyecektir.

Programlama dilinin ifade gücünün programcının yapacağı işi betimlemedekullandığı standartlara uygun olması programlama sürecini kolaylaştıracaktır.

Veri Tipleri ve Yapıları: Ön tanımlı değişken türlerinin olabildiğince fazla veihtiyaçları karşılar durumda olması bir dilden beklenen önemliözelliklerdendir.

Örneğin, karmaşık sayılarla işlem yapacak bir programcı öncelikle tamsayı veritipine sahip bir programlama dilini kullanmalıdır.

Ardından bu veri tipini kullanarak tanımlayacağı karmaşık sayı veri yapısını daprogramlama dili kurallarına bağlı kalarak tanımlayabilmelidir.

Page 26: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Programlama Dillerinin Özellikleri - 2

Giriş - Çıkış İşlemlerinin Kolaylığı: Dosyalara erişme ve karmaşık işlemleryapabilme imkanlarını belirten bu özellik (C gibi) bazı programlama dillerindeçok gelişmemiştir. Bu dillerde özel kütüphanelerin kullanımı gereklidir. Veritabanıprogramlama dilleri ise bu konuda oldukça gelişmiştir.

Taşınabilirlik: Bir sistemde yazılmış bir kaynak kodun, başka sistemlerde desorunsuz derlenebilmesidir.

Genellikle dilin seviyesi azaldıkça taşınabilirlik azalır.

Örneğin, C orta seviyeli dillerden olsa da taşınabilirlik bakımından üst düzeydekidillerdendir.

Alt Programlanabilirlik: Programın daha ufak program parçalarındanoluşturulmasıdır.

Böylece; kaynak kod kısalır, algılanması kolaylaşır, test olanakları artar, kodungüncelleştirmesi ve yeniden kullanılması kolaylaşır.

Page 27: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Programlama Dillerinin Özellikleri - 3

Verimlilik: Derlenen kodun hızlı ve sorunsuz çalışabilmesidir.

Okunabilirlik: Kaynak kodun hızlı biçimde anlaşılabilmesidir.

İyi bir programcının yazdığı kaynak kod, çok iyi işlev gören ama karışık bir koddanziyade açık ve anlaşılabilir biçimde olmalıdır.

Esneklik: Dilin, programcıyı kısıtlamamasıdır. Ancak esnek bir dil, daha az hatavermesine karşın hata oluşma riski daha fazladır.

Öğrenme Kolaylığı: Dilin konuşma diline yakınlığı, komutlarının sade ve anlaşılırolması gibi ölçütler o dilin öğrenilmesini etkiler.

Yapısal Programlanabilirlik: Programın bloklar halinde yazılması yani altprogramların kullanılması anlamına gelen bir programlama tekniğidir. Kodunokunabilirliğini ve verimliliğini artırır.

Nesne Yönelimlilik: Verilerin birbirinden daha kesin çizgilerle ayrılmasını öngörenbir programlama tekniğidir.

Page 28: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Programlama Dillerinin Özellikleri - 4

Genellik: Bir dilin herhangi bir alanda kullanılabilmesidir. Bazı diller sadece mühendislik alanlarındakullanılabilmesine karşın, C genel amaçlı bir dildir.

Programlama dillerinin kendi alanları vardır ve her dil uygun branşta kullanıldığı sürece başarılı veetkili kullanılmış olur. Genel olarak programlama dilleri uygulama alanlarına göre aşağıdakisınıflara ayrılabilir:

Bilim ve Mühendislik Alanları: Mühendislik veya matematik hesapları için kullanılırlar. Bu dillerePascal, C, C++, Java, Fortran gibi diller örnek olarak verilebilir.

Veritabanı Programlama: Genellikle personel kayıtları, stok veya depo denetimi gibiveritabanı gerektiren işlemlerde kullanılan dillerdir. Bu dillere DBase, Sql, Foxpro ve Paradoxörnek olarak verilebilir.

Sistem Programcılığı: İşletim sistemlerinin ve sistem programlarının yazılımında kullanılandillerdir. Örnek olarak C, C++, Java ve makina dilleri verilebilir.

Genel Amaçlı Kullanım : Çeşitli konularda uygulama geliştirmek için kullanılan dillere örnekolarak C, C++, Java, VB ve Pascal’ı verebiliriz.

Yapay Zeka Kullanımında: Özellikle son zamanlarda popüler olan yapa zekauygulamalarında kullanılan dillerdir. Örnek olarak Prolog ve Lisp gibi diller verilebilir.

Page 29: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Programlama Dillerinin Sınıflandırılması

Programlama dilleri, makine dilinde programlama zor olduğu için doğal dile doğru gelişim göstermiştir.

İnsanın en zor öğrenebileceği, anlayabileceği yani 1100101 gibi makina kodlarına yakın diller en düşük seviyeli (low level) programlama dilleri, insanın en kolay anlayıp kullanabileceği ve insan diline yakın özellikler gösteren diller ise en yüksek seviyeli (high level) programlama dilleridir.

Yazılan kodları, makine dilinde değilse, makine diline çevirip çalışmaya hazır hale getirmek, o dilin derleyicisinin veya yorumlayıcısının görevidir.

Programlama dilleri seviyelerine göre aşağıdaki gibi sınıflandırılabilir;

Çok Yüksek Seviyeli Diller (İnsana en yakın) FOXPRO, ACCESS, PARADOX, VB.NET... (Öğrenilmesi Kolay, Daha Yavaş)

Yüksek Seviyeli Diller : PASCAL, FORTRAN, COBOL, BASIC...

Orta Seviyeli Diller : C ,C++, C# , Java ,ADA...

Düşük Seviyeli Diller: Assembly...

Makine Dilleri (Makineye en yakın diller. 0 ve 1’lerin dizilimlerinden oluşurlar..) (Öğrenilmesi Daha Zor, Daha Hızlı)

Page 30: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

Yüksek Seviye vs. Düşük Seviye

Doğal dile yakınlık, insanın anlamasına uygun, anlamlı sözcüklerle kodlama

yapmak anlamına gelirken;

Makineye yakınlık, bilgisayarın çalışma mantığına uygun şekilde, yapılacak

işin nasıl yapılacağının kodlanması demektir.

Bir dilin seviyesi yüksekse, o dili öğrenmek kolaydır, kaynak kod kısadır ama

oluşacak çalıştırılabilir dosya uzundur, uzun ve karmaşık işlemler kısa kodlarla

gerçekleştirilebilir.

Düşük seviyeli dillerde ise programcı, makineye daha hakimdir, sorumluluğu

daha fazladır, kod yazımı uzun ve zahmetlidir.

Page 31: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

C Programlama Dili

C Programlama Dili genel amaçlı orta seviyeli ve yapısal bir programlama dilidir.

1972 yılında Dennis Ritchie tarafından UNIX işletim sistemi ile kullanılmak için tasarlanmıştır.

İşletim sistemleri ve derleyiciler gibi sistem programlarının yazımında yoğun olarak C programlamadili kullanılır.

C'nin yayılması ve gelişmesi, büyük bir bölümü C dili ile yazılan UNIX işletim sisteminin popülerolmasıyla başlamıştır.

C Programlama Dili, hemen her alanda kullanılmaktadır. Günümüzde nesneye yönelikprogramlama dilleri (C++, Java) ve script dilleri (JavaScript) gibi programlama dilleri C’denesinlenmiştir.

C, taşınabilir bir dildir. Yani herhangi bir C programı hiçbir değişikliğe uğramadan, veya çok az birdeğişimle, başka bir derleyicide ve/veya işletim sisteminde derlenebilir. Örneğin, Windows işletimsistemlerinde yazılan bir C kodu, Linux, UNIX veya VAX gibi işletim sistemlerinde de derlenebilir.

Taşınabilirlik, herkesin kabul ettiği bir standart ile gerçekleştirilebilir. Bugün, C Programla Diliiçin American National Standards Institute (ANSI) kurumunun Mart 2000'de belirlediği C99: ISO/IEC9899:1999 standartı Standart C olarak kabul edilmektedir.

Page 32: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

C Dilinin Avantajları

C, hem üst düzey hem de alt düzey programlamayı destekleyen bir dil olarak tasarlanmıştır.

Programcı önceden hazırlanmış temel fonksiyonları kullanarak istediği işlemleri rahatlıklakullanırken, derleyici bu fonksiyonların anlamı hakkında hiçbir şey bilmez. Bu fonksiyonlar Cprogramlama dilinin kütüphanelerini oluşturmaktadır. C dili program yazma aşamasında bukütüphanelerden faydalanır.

C programlama dili az sayıda anahtar sözcük ve güçlü işlem operatörleri içermektedir. Bunedenle öğrenilmesi kolaydır.

C dilinde işlem operatörleri makine koduna dönüştürüldüğü için etkin çalışan kodlar üretir.

C dili programcının bilgisayardan bağımsız program yazmasına ve programın rahatlıklabaşka sistemlere aktarılmasına olanak sağlayan bir dildir.

C programlama dili programcıyı modüler programlamaya teşvik eder. Modülerprogramcılığın temeli olan fonksiyonlar C dilinde oldukça rahat bir şekilde kullanılmaktadır.

Page 33: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

İlk C Kodu

/* ilk.c: ilk C programi */

#include <stdio.h>

main() {

printf("Merhaba Dünya!\n");

}

Page 34: Algoritma ve Programlamapersonel.klu.edu.tr/.../dosyalar/dosya_ve_belgeler/alg_3.pdf · 2019-10-08 · Veri Tipleri ve Yapıları: Öntanımlıdeğiken türlerininolabildiğincefazla

C Kodlarının Temel Özellikleri

Kullanılacak her fonksiyon için ilgili başlık dosyası programın başına

eklenmelidir.

Her C programı mutlaka main() fonksiyonunu içermelidir.

Program içinde kullanılacak olan değişkenler ve sabitler mutlaka

tanımlanmalıdır.

Satırın sonuna ; işareti konmalıdır.

Her bloğun ve fonksiyonun başlangıcı ve bitişi sırasıyla { ve } sembolleridir.

C dilinde yazılan kodlarda küçük-büyük harf ayrımı vardır (case sensitive).

Örneğin; A ile a derleyici tarafından farklı değerlendirilir.

Açıklama operatörü /* */ sembolleridir.