Sunuyu indir
Sunum yükleniyor. Lütfen bekleyiniz
YayınlayanHande Durak Değiştirilmiş 8 yıl önce
1
BÖLÜM 5 AKIŞ DİYAGRAMLARINDAN PROGRAM KODLAMAYA GEÇİŞ
2
Not: Programlama dilleri arasında fark olsa da, problemin çözümünde izlenen algoritma ve algoritmaya göre çizilen akış diyagramı hep aynı kalır.
3
Kodlar yazılırken, farklı kullanım şekilleri ve farklı programlama teknikleri sunulmaya çalışılacaktır. Bir problemin birden fazla çözüm yolu olduğu gibi bir programın da çok farklı kodlama şekilleri olabilmektedir.
4
C ve C++’daki operatörlerin karşılıkları Tablo 5
C ve C++’daki operatörlerin karşılıkları Tablo 5.1’de, akı diyagramı şekillerine karşılık gelen genel komutları ise toplu halde Tablo 5.2’de verilmektedir. Programlama dillerinde, bunlara karşılık kullanılabilecek başka komutlar mevcuttur. Yazılımcının tecrübesi arttıkça; en uygun komutları, en uygun yerlerde en verimli şekilde kullanabilecektir.
5
Not: Her programlama dilinin yapısında fazladan operatörler bulunabilir. Her programlama dilinde; benzer veya birbirine yakın görevlerde birçok komut bulunabilir.
11
Veri Giriş Komutları – ‘’Gir/Oku’’
Bilgisayar, işlemleri gerçekleştirebilmek için bilgilere/verilere ihtiyaç duyar. Bilgilerin/verilerin dışardan (klavye, port, dosya vb.) alınmasını sağlayan komutlar, ‘veri giriş komutları’ olarak adlandırılır.
12
C’deki Veri Giriş Komutları
1. scanf C programlama dilindeki temel veri giriş komutudur. Klavyeden; belirtilen değişkene, veri aktarılmasını sağlar.
13
Kullanım şekli: scanf (“ biçim ifadesi “,& değişkenler listesi );
14
% ∗ 𝑛 𝐹 𝑁 ℎ 𝑙 𝐿 𝑑 𝐷 𝑖 𝐼 𝑢 𝑈 𝑜 𝑂 𝑥 𝑋 𝑒 𝐸 𝑔 𝐺 𝑓 𝑠 𝑐 % 𝑛 𝑝
Buradaki ‘’biçim ifadesi’’, veri girişinin hangi biçimde olacağını; ‘’değişkenler (adres) listesi’’ de verilerin aktarılacağı değişkenleri belirtir. Biçim ifadesinin gelen şekli yandaki gibi olup iki kısımdan oluşur: Biçim kısmı ve tip belirtme kısmı.
15
Daha kısa olarak biçim ifadesi % 𝑏𝑖ç𝑖𝑚 𝑡𝑖𝑝 şeklinde de gösterilebilir.
Görüldüğü gibi biçim ifadesi; çift tırnak içinde, % karakteriyle (sembolüyle) başlamaktadır. Biçim ve tip karakterlerinin anlamları ise Tablo 5.3 ile Tablo 5.4’te verilmektedir.
16
C
17
Bir pozitif tamsayı giriniz: 5
Bir boşluk bırakarak iki tamsayı giriniz: 4 3 Araya virgül koyarak iki tamsayı giriniz: 2,1 Girilen sayıların toplamı 15 dir.
18
Yukarıdaki programda beş tane tamsayı, değişik biçimlerde girilmekte ve toplanarak ekrana yazdırılmaktadır.
22
C
23
Bir ondalıklı sayı giriniz: 100.125
Bir başka ondalıklı sayı giriniz: Girilen sayıların toplamı dir.
24
Yukarıdaki örnekte görüldüğü gibi belirtilen uzunluğu aşan bir giriş yapılırsa; girilen değerin, fazla olan kısmı atılır. Ondalıklı sayılarda “ . ” da bir basamak/hane (dijit) olarak kabul edilir.
25
Eğer ikinci ondalıklı sayı, biçimli giriş ile alınmasaydı; sonuç, şeklinde doğru olarak hesaplanacaktı. Ancak “%3f” biçimiyle girilen sayısının sadece 13 kısmı (üç haneli/basamaklı kısım) alınabildiğinden sonuç da = olarak bulunur. Biçim ifadesi, alfasayısal veriler üzerinde de aynı etkiyi yapar.
26
C
27
Bir kelime giriniz => Elektrik
Bir başka kelime giriniz => Elektronik Alınan birinci kelime: Elektrik Alınan ikinci kelime: Elekt
28
2. gets Klavyeden, alfasayısal veri (karakter, kelime, cümle vb.) girilmesini sağlar. Kullanım şekli: gets (değişken);
29
C
30
Cümleyi giriniz: 17 Ağustos 1999, Adapazarı Depremi
Cümleyi tekrar giriniz: 17 Ağustos 1999, Adapazarı Depremi gets ile alınan cümle: 17 Ağustos 1999, Adapazarı Depremi scanf ile alınan cümle: 17
31
Örnek programdan da görüldüğü gibi “gets” komutu, ‘Enter’ tuşuna basılıncaya kadar girilen karakter/karakter grubunun tamamını alırken; “scanf” komutu, ilk özel karaktere kadar olan kısmı alabilmektedir/okuyabilmektedir.
32
3. getch Ekranda görülmeden, klavyeden tek karakterin girilmesini sağlar. Kullanım şekli: değişken = getch() ;
33
4. getche Ekranda görünerek, klavyeden tek karakterin girilmesini sağlar. Kullanım şekli: değişken = getche() ;
34
5. getchar Klavyeden veya dosyadan tek karakterin okunmasını/alınmasını sağlar. Kullanım şekli: değişken = getchar() ;
35
6. kbhit Klavyede, herhangi bir tuşa basılıp basılmadığını verir. Basılması durumunda “True” (1) üretir (sonucunu verir). Kullanım şekli: kbhit() ;
36
C++’daki Veri Giriş Komutları
1. cin C++ programlama dilindeki temel veri giriş komutudur. Kullanım şekli: cin >> değişken ; cin >> değişken1 >> değişken2 >> değişkenN ; cin >> biçimleyici >> değişken ; cin.biçim ayarı;
37
Bu komutla alfasayısal veriler girilirken, ilk özel karaktere (boşluk) kadar olan kısmı alınır.
Araya boşluk koyularak, birden fazla değişkene de tek komutla değer aktarılabilir.
38
“biçimleyici”, veri girişinin biçimini belirtir ve alabileceği bazı değerler Tablo 5.5’te verilmektedir. Karakter sayısı (genişliği) gibi ayarlamaların yapıldığı “biçim ayarı” ise “biçimleyici” gibi “cout” kısmında daha ayrıntılı olarak anlatılacaktır.
39
C++
42
Not: C++ programlama dilinde; C dilinde anlatılan veri giriş komutları, ilgili kütüphaneler çağırılarak kullanılabilir.
43
2. get Klavyeden tek karakter okuyarak ilgili değişkene aktarır. Kullanım şekli: cin.get(değişken) ;
44
3. getline Klavyeden belirtilen uzunluğa kadar karakter dizisi okur. Kullanım şekli: cin.getline(değişken , uzunluk) ; getline(cin , değişken) ;
45
C++
47
Veri Çıkış Komutları – “Yaz”
Bilgisayarda; işlemleri gerçekleştirdikten sonra bulunan sonuçları, ekranda görüntülemek, yazıcıdan çıktı almak veya bellekteki dosyalara kaydetmek için kullanılan komutlardır.
48
C’deki Veri Çıkış Komutları
C programlarıyla elde edilen sonuçları, ekrana yazdırmak için kullanılan temel komut/fonksiyon ”printf” dir.
49
1. printf Sonuçları, ekrana yazdırmayı sağlar. Kullanım şekli: printf (“ biçim ifadesi “, değişkenler) ;
50
Çift tırnak arasında yer alan ‘biçim ifadesi’ genel olarak üç kısımdan oluşur.
Açıklama kısmı Biçim kısmı Kontrol/çıkış kısmı
51
a. Açıklama: Çift tırnak arasında verilip ekrana doğrudan yazılır.
52
C
53
Ankara
54
b. Biçim: % sembolüyle başlayan ve çıkış biçiminin belirlendiği kısımdır. Genel şekli aşağıdaki gibidir.
55
% − + ′ ′ # 𝑛 0𝑛 ∗ .0 .𝑛 .∗ 𝐹 𝑁 ℎ 𝑙 𝐿 𝑑 𝑖 𝑜 𝑢 𝑥 𝑋 𝑒 𝐸 𝑓 𝑔 𝐺 𝑐 𝑠 𝑛 𝑝
56
Bu kısım daha kısa olarak;
% 𝐵𝑎𝑦𝑟𝑎𝑘 𝑏𝑒𝑙𝑖𝑟𝑡𝑒𝑐𝑖 𝐺𝑒𝑛𝑖ş𝑙𝑖𝑘 𝑏𝑒𝑙𝑖𝑟𝑡𝑒𝑐𝑖 𝐻𝑎𝑠𝑠𝑎𝑠𝑖𝑦𝑒𝑡 𝑏𝑒𝑙𝑖𝑟𝑡𝑒𝑐𝑖 𝑇𝑖𝑝 𝑛𝑖𝑡𝑒𝑙𝑒𝑦𝑖𝑐𝑖 𝑇𝑖𝑝 𝑘𝑎𝑟𝑎𝑘𝑡𝑒𝑟𝑙𝑒𝑟𝑖 şeklinde de gösterilebilir.
57
“Tip karakterleri” hariç diğerlerinin kullanımı zorunlu değildir.
Bu alt kısımlardaki karakterlerin anlamları Tablo 5.9 – 5.13 arasında verilmektedir.
64
c. Kontrol/çıkış: “\” işaretiyle başlayan bu karakterlerin anlamları Tablo 5.14’te verilmektedir.
66
C
67
Birinci sayıyı giriniz: 15
İkinci sayıyı giriniz: 30 15+30=45 dir.
68
C
69
pi sayısı= pi sayısı=3.1429 pi sayısı= e+00 pi sayısı= e+00 pi sayısı=3.14 pi sayısı= E+00
70
2. cprintf “printf” komutu renkli yazımlarda kullanılamazken, yerine “cprintf” ile renkli çıktılar oluşturulabilir. Kullanım şekli: cprintf (biçim ifadesi , değişkenler listesi) ;
71
3. putchar Belirtilen karakteri ekrana yazar. Kullanım şekli: putchar (karakter değişken) ;
72
4. puts Belirtilen alfasayısal veriyi ekrana yazar ve bir alt satıra geçer. Kullanım şekli: puts (değişken) ;
73
5. cputs Belirtilen alfasayısal veriyi ekrana, ayarlanan renkte yazar. Kullanım şekli: cputs (değişken) ;
74
C++’daki Veri Çıkış Komutları
1. cout C++ programlama dilindeki temel veri çıkış/yazdırma komutudur.
75
Kullanım şekilleri: cout << değişken ; cout << “ ifade “ ; cout<< biçimleyici << değişken ;
76
“ << “ işaretinden sonra yer alan ,’biçimleyici’ ifadeleri belirli gruplar altında toplanarak özetlenebilir ve bunları bazıları Tablo arasındaki tablolarda verilmektedir.
77
Not: Bazı biçimleyicileri kullanabilmek için “iomanip” kütüphanesi çağırılmalıdır. C++’daki “cout” ile birlikte C’deki kontrol/çıkış karakterleri de kullanılabilir.
82
Not: C++ programlama dilinde; C dilinde anlatılan veri çıkış komutları, ilgili kütüphaneler çağırılarak kullanılabilir.
83
C++
85
C++
87
C++
89
Döngü (Çevrim) Komutları
Ardışık (ardışıl) veya tekrarlı işlemlerin yapılmasını sağlayan komutlardır. Döngüler, üçe ayrılırlar:
90
i. Sayıcılı döngüler: Döngü işlemleri bir sayaca bağlı olarak gerçekleştirilir.
ii. Ön koşullu döngüler: Döngü içindeki işlemler koşula/koşullara bağlı olarak gerçekleştirilir ve bu koşul/koşullar döngü öncesinde kontrol edilebilir. iii. Son koşullu döngüler: Döngü içindeki işlemler koşula/koşullara bağlı olarak gerçekleştirilir ve bu koşul/koşullar döngü sonunda kontrol edilir.
91
Not: Ön koşullu ve son koşullu döngüler arasındaki temel farklar: Döngü koşulu/koşulları; -Ön koşullu döngüde, döngü başında -Son koşullu döngüde, döngü sonunda kontrol edilir.
92
Döngü işlemi/işlemleri;
-Ön koşullu döngüde, koşul/koşullar döngünün başında kontrol edildiğinden hiç gerçekleştirilmeyebilir. -Son koşullu döngüde, koşul/koşullar döngünün sonunda kontrol edildiğinden en az bir defa gerçekleştirilir.
93
Not: Ön koşullu ve son koşullu döngülerde; -Döngü değişkenine, döngü öncesinde başlangıç değeri verilmelidir. -Döngü değişkeni, döngü içerisinde arttırılmalı/azaltılmalıdır (değiştirilmelidir). Değiştirilmemesi durumunda; döngü, sonsuz çevrime girer.
94
C/C++ Döngü Komutları C ve C++ programlama dillerinde üç döngü yapısı da bulunmaktadır: ‘for’, ‘while’ ve ‘do-while’ Her iki dildeki komutlar aynı olduğu için bu döngü komutları, ayrı başlık altında incelenmeyip var olan küçük değişiklikler belirtilecektir.
95
1. for Sayıcılı döngü komutudur. “for” döngüsünde; koşul sağlandığı (doğru olduğu) sürece, döngü bloğu işlemler yapılır.
96
Kullanım şekli (C/C++):
for (başlangıç değeri ; koşul ; artım) { ………………………..………. ………………………………… }
97
Kullanım şekli (C++): for (tip başlangıç değeri ; koşul ; artım) { ………………………..………. ………………………………… }
99
C
100
C++
102
2. while C ve C++’daki ön koşullu döngü “while” dır. “while” ile verilen koşul sağlandığı (doğru olduğu) sürece, döngü içindeki işlemler gerçekleştirilir.
103
Kullanım şekli: while (koşul) { ………………………..………. ………………………………… }
105
C
106
C++
108
3. do-while Son koşullu döngüdür.. “while” ile belirtilen koşul sağlandığı (doğru olduğu) sürece, döngüdeki işlemler yapılır.
109
Kullanım şekli: do { ………………………..……… ………………………………… } while(koşul);
111
C
112
C++
114
Tablo 5.26’da C ve C++’daki döngü yapıları, karşılaştırmalı olarak verilmektedir.
Ayrıca bu dillerdeki döngü kontrol komutları da Tablo 5.27’de yer almaktadır.
115
“Sonlandır” komutu, döngüden (döngü bloğundan) çıkışı sağlarken, “Devam ettir” de işlem akışını döngü koşuluna yönlendirir (bir sonraki döngü değeriyle devam etmesini sağlar).
117
Karar (Karşılaştırma) Komutları – “Eğer”
Koşulların kontrolünde kullanılan komutlardır. Koşulların doğru olup olmamasına (sağlanıp sağlanmamasına) göre işlem akışını yönlendirirler. Karar komutları dört farklı yapıda olabilirler:
118
i. Yarım form: Sadece koşul/koşullar doğru olduğunda (doğru ise – evet ise) yapılacak işlem/işlemler vardır. ii. Tam form: Koşul/koşullar doğru ve yanlış olduğunda yapılacak işlem/işlemler vardır.
119
iii. Çok koşullu form: Birçok koşulun durumuna göre yapılacak işlem/işlemler vardır.
iv. Seçimli form: Seçim/kontrol değişkeninin değerine göre yapılacak işlem/işlemler vardır. Bu form; “çok koşullu form” un sade biçimidir.
120
C/C++ Karar Komutları 1. if-else
Yarım-tam-çok koşullu form yapılarında kullanılabilir.
121
Kullanım şekilleri (C/C++):
if (koşul veya koşul grubu) işlem; if (koşul veya koşul grubu) işlem-1; else işlem-2; if (koşul1 veya koşul grubu1) işlem-1; else if (koul2 veya koşul grubu2) işlem-2; else if (koşul3 veya koşul grubu3) işlem-3; …………………………………………………………… else işlem-n;
123
C
124
C++
126
2. switch Seçime göre program akışını yönlendiren komuttur (seçimli komut).
127
Kullanım şekilleri (C/C++):
switch (değişken) { case değer-1 : işlemler-1; case değer-2 : işlemler-2; case değer-3 : işlemler-3; ………………..……………………. case değer-n : işlemler-n; }
128
switch (değişken) { case değer-1 : işlemler-1; case değer-2 : işlemler-2; case değer-3 : işlemler-3; ……………….……………………. case değer-n : işlemler-n; default: varsayılan işlemler; }
130
“switch” ten sonra belirtilen ‘değişken’, “case” ten sonraki hangi değeri alırsa, karşılığındaki işlem yapılır. Eğer “değişken” e karşılık “case” te değer yoksa, “default” taki “varsayılan işlemler” gerçekleştirilir.
131
C
132
C++
134
3. ? Koşulun durumuna göre ilgili değeri veya işlem sonucunu, belirtilen değişkene aktarır. Kullanım şekli (C/C++): Değişken = (koşul) ? işlem/değer-1 : işlem/değer-2 ;
136
Yukarıdaki karar yapısı, “koşul” doğru ise “değişken” e “işlem/değer-1”; yanlış ise “işlem/değer-2” atanır.
137
C
138
C++
140
Tablo 5.28’de C ve C++’daki karar yapıları, karşılaştırmalı olarak verilmektedir.
142
Diğer Bazı Komutlar Bu alt başlıklarda, daha sonraki bölümlerdeki örneklerde, kullanılacak olan bazı komutlar tanıtılacaktır.
143
A. Ekran Komutları Ekranın belirtilen yerine imleci yönlendirme, ekranı temizleme, renk ayarları gibi işlemlerin yapılmasını sağlayan komutlardır (Tablo 5.29).
146
B. Matematiksel İşlem Komutları
Matematiksel işlemleri yapılmasını sağlayan komutlardır (Tablo ).
150
C. Alfasayısal İşlem Komutları
Karakter ve karakter grupları (kelime, cümle vb.) üzerinde işlem yapan komutlardır (Tablo 5.36).
152
D. Diğer Komutlar Bu alt başlıkta; daha sonraki bölümlerde yazılan programlarda kullanılan bazı komutlar verilmektedir (Tablo ).
Benzer bir sunumlar
© 2024 SlidePlayer.biz.tr Inc.
All rights reserved.