Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Bölüm 6: Kullanıcı Tanımlı Fonksiyonlar I

Benzer bir sunumlar


... konulu sunumlar: "Bölüm 6: Kullanıcı Tanımlı Fonksiyonlar I"— Sunum transkripti:

1 Bölüm 6: Kullanıcı Tanımlı Fonksiyonlar I
C++ Programming: Program Design Including Data Structures, Third Edition Bölüm 6: Kullanıcı Tanımlı Fonksiyonlar I

2 Amaçlar Bu Bölümde: Standart ön tanımlı (predefined) fonksiyonlar tanımlanacak ve program içerisindeki kullanımları araştırılacaktır. Kullanıcı tanımlı fonksiyonlar(user-defined functions) işlenecektir. Gerçek (actual) ve formal parametre içeren değer döndüren fonksiyonlar araştırılacaktır. Kullanıcı tanımlı bir fonksiyonda değer döndürmenin gerçekleştirilmesi örnek verilecektir.

3 Fonksiyonlar Fonksiyonlar kendi başlarına oluşturulmuş bloklar gibi çalışırlar. Karmaşık programların daha kolay yönetilebilmesi için, programı parçalara ayırır. Fonksiyonların olumlu özellikleri: Programcı programın sadece bir parçası üzerine odaklanabilir, bu parçayı mükemmel olarak yapılandırıp , hatalarını düzeltebilir ve çalıştırabilir. Farklı kullanıcıların bu fonksiyonu allanabilmelerine olanak sağlar. Fonksiyonlar bir programın farklı yerlerinde birden fazla defa kullanılabilir.

4 Fonksiyonlar Fonksiyonlar: Modüller olarak adlandırılır.
Küçük program parçalarıdır. Daha büyük bir programı oluşturmak üzere bir araya getirilirler ve birlikte değerlendirilirler C++ Programming: From Problem Analysis to Program Design, Third Edition

5 Öntanımlı Fonksiyonlar (Predefined Functions)
Cebir, herhangi bir fonksiyonu bir kural olarak ya da fonksiyonun argümanı olarak adlandırılan değerler arasındaki bağımlılığı gösterir; fonksiyonun dönen değeri bu argümanlarla ilişkilidir. Eğer f(x) = 2x + 5 ise , f(1) = 7, f(2) = 9, ve f(3) = 11 Burada : 1, 2, ve 3 argümanları 7, 9, ve 11 bu argümanlara karşılık değerlerdir. C++ Programming: From Problem Analysis to Program Design, Third Edition

6 Öntanımlı (Predefined) Fonksiyonlar
Ön tanımlı bazı fonksiyonlar: sqrt(x) pow(x,y) floor(x) Öntanımlı fonksiyonlar bağımsız kütüphanelerde tanımlıdır. I/O fonksiyonları iostream başlık dosyasında (header) Math fonksiyonları cmath başlık dosyasında (header) tanımlıdır. C++ Programming: From Problem Analysis to Program Design, Third Edition

7 Power Fonksiyonu (pow)
pow(x,y) fonksiyonu xy gösterir. pow(2,3) = 8.0 pow double veri tipinde değer gösterir. x ve y , fonksiyonun parametreleri (ya da argümanlarıdır) pow fonksiyonu iki parametrelidir. C++ Programming: From Problem Analysis to Program Design, Third Edition

8 sqrt Fonksiyonu sqrt(x) fonksiyonu
x >= 0.0 için bir x sayısının kare kökünü hesaplar sqrt(2.25) =1.5 Fonksiyonun double tipinde bir parametresi vardır. C++ Programming: From Problem Analysis to Program Design, Third Edition

9

10

11

12

13 Kullanıcı-Tanımlı Fonksiyonlar
Void fonksiyonu: Herhangi bir değer döndürmez Değer döndüren fonksiyonlar: Herhangi bir veri tipinde değer döndürür. Her iki tipteki fonksiyonun da kullanılması için: -Doğru başlık dosyasını (header file) içerir. Fonksiyonun ismi bilinir Eğer varsa, parametrelerinin sayını bilinir. Her parametrenin veri tipi bilinir. Fonksiyon tarafından hesaplanmış olan veri tipi bilinir. Buna fonksiyonun tipi denir. C++ Programming: From Problem Analysis to Program Design, Third Edition

14 Değer Döndüren Fonksiyonlar
Değer döndürüldüğü için, bu tür fonksiyonlar tekildir. -Sonraki hesaplama için değer kaydedilir Değer birtakım hesaplamalarda kullanılır. Değer yazdırılır. Değer döndüren bir fonksiyon bir atama (assignment) deyimi ile ya da bir çıktı (output) deyimi ile kullanılır. C++ Programming: From Problem Analysis to Program Design, Third Edition

15 Değer Döndüren Fonksiyonlar
Fonksiyon tanımını oluşturan özellikler: Fonksiyonun ismi Parametrelerin sayısı Her parametrenin veri tipi Fonksiyonun tipi Fonksiyonun gövdesi, diğer bir ifade ile işlemleri gerçekleştiren kod C++ Programming: From Problem Analysis to Program Design, Third Edition

16

17 Değer Döndüren Fonksiyon
Başlık (Heading): Önceki slayttaki ilk dört özellikler Formal Parametre: Başlıkta bildirilen değişken Gerçek (Actual)Parametre: bir fonksiyona çağrıyı listeleyen değişken veya ifade C++ Programming: From Problem Analysis to Program Design, Third Edition

18 Değer Döndüren Fonksiyonlar
functionType: Fonksiyon tarafından döndürülen değerin tipidir. Çağrılan veri tipi olarak ta adlandırılır C++ Programming: From Problem Analysis to Program Design, Third Edition

19 Sözdizimi Formal parametre listesinin sözdizimi
Fonksiyon çağrısının sözdizimi: Gerçek parametre listesinin sözdizimi C++ Programming: From Problem Analysis to Program Design, Third Edition

20 Değer Döndüren Fonksiyonlar
Değer döndüren bir fonksiyonu çağırmak için -Fonksiyonun ismi parantez içerisindeki gerçek parametreleri ile (eğer varsa )kullanılır. -Gerçek ve formal parametreler arasında bire-bir eşleşme vardır. C++ Programming: From Problem Analysis to Program Design, Third Edition

21 Değer Döndüren Fonksiyonlar
Değer döndüren bir fonksiyon bir ifade içerisinde çağrılır. İfade bir atama deyiminin bir parçası veya bir çıktı deyimi olabilir Bir programdaki fonksiyon çağrısı, fonksiyonun gövdesindeki kodların çalışması ile sonlanır. C++ Programming: From Problem Analysis to Program Design, Third Edition

22 return Deyimi Fonksiyon değerini hesapladığında, return deyimi ile bu değeri döndürür return deyiminin sözdizimi: return deyimi çalıştırıldığında -fonksiyon sonlanmıştır -kontrol çağıran programa geri döner Bir return deyimi main fonksiyonu içerisinde çalıştırıldığında program sonlanır. C++ Programming: From Problem Analysis to Program Design, Third Edition

23

24

25 Fonksiyon Prototipi Fonksiyon Prototipi : Fonksiyonun gövdesi olmadan fonksiyonun başlığıdır Parametre listesi içerisinde değişken isminin belirlenmesine gerek yoktur. Her parametrenin tipi belirlenmiş olmalıdır. C++ Programming: From Problem Analysis to Program Design, Third Edition

26

27

28 Program Analizi Giriş datası aşağıdaki şekilde verilmiştir. Bu sayıları okuyacağınız değişkenin ismi num olsun Çözüme başlamak için veri setindeki ilk sayıyı okuyun Okuduğunuz ilk sayının en büyük sayı olduğunu kabul ederek max isimli bir değişkene atayın İkinci sayıyı(num) okuyun; bu değişkeni önceden en büyük kabul ettiğiniz max değişkeni ile karşılaştırın ve sonuç daha büyük ise, okuduğunuz ikinci sayıyı max değişkenine atayın.

29 Program Analizi Bu aşamada(verilen giriş değerlerinden) max iki sayının daha büyüğünü içermektedir. Üçüncü sayıyı okuyun ve bu sayıyı max değişkeni ile karşılaştırarak daha büyük olan sayıyı max değişkenine atayın. Bu noktada , max en büyük ilk üç sayıyı içermektedir. Sonraki sayıyı okuyun ve bu sayıyı max değişkeni ile karşılaştırın , daha sonra sonucu max değişkeninde depolayın. Aynı işlemleri veri setindeki tüm değerler için tekrarlayın

30 Algoritma Tasarımı İlk sayıyı oku. Tek sayı olduğu için bu sayı en büyük sayı olacaktır. Bu sayıyı max değişkenine atayın. Listedeki diğer tüm sayılar için: - Sonraki sayıyı okuyun Bu değeri num isimli bir değişkende depolayın num ve max değerlerini karşılaştırın. C++ Programming: From Problem Analysis to Program Design, Third Edition

31 Algoritma Tasarımı Eğer max < num
num en büyük sayıdır. O nedenle max değişkenin değeri num olur. Yani, max değişkenin değeri güncellenir. Bunun için num değişkeni max değişkenine atanır. Eğer max >= num ise, num değişkenini göz önüne almayın max değişkeni en büyük sayıdır. Bu sayıyı yazdırılır. C++ Programming: From Problem Analysis to Program Design, Third Edition


"Bölüm 6: Kullanıcı Tanımlı Fonksiyonlar I" indir ppt

Benzer bir sunumlar


Google Reklamları