R Programlama 3. Bölüm | R Programlama Fonksiyon

CapsLock

Enough
Ultra Member
Joined
Nov 5, 2019
Topics
342
Messages
952
Reaction score
720
Location
Peak
R programlama dilinde fonksiyonlar oluşturmayı öğrendiğimiz bu yazımızda bu dildeki nesnelere ve veri yapılarına değineceğiz. Gelin yazımızı beraber inceleyelim.
resimler.png

a1.jpg
a2.jpg

R Programlama Dilinde Fonksiyonlar

Fonksiyonlar kodumuzun işlevi bozulmadan okunmasını, anlaşılmasını ve tekrar çağırılmasını kolaylaştıracak şekilde basit parçalara bölmek için kullanılır.

Aşağıda R programlama üzerinde pow() isimli bir fonksiyon yarattık. İki argüman alıp, birinci argümanın ikinci dereceden kuvvetini yazdıran bu fonksiyonda dizeleri birleştirmek için paste() fonksiyonundan faydalandık.

R-Programlam-Bolum3-elektrikport-1.jpg

Pow() fonksiyonunu yarattıktan sonra içine argüman göndererek pow(4,3) şeklinde fonksiyonumuzu çağırdık.

R-Programlam-Bolum3-elektrikport-2.jpg

Bir fonksiyonu çağırırken, argümanların sırası önemli değildir. Örneğin, aşağıda verilen tüm fonksiyon çağrıları, sonuçlarından da anlayacağımız üzere eşdeğerdir.
R-Programlam-Bolum3-elektrikport-3.jpg

Bazı durumlarda fonksiyonların argümanlarına kendimiz değer atayabiliriz. Böyle bir durumda fonksiyonun çalışmasında bir sorun gözlenmeyecektir. Aşağıdaki örnekte, verilen herhangi bir sayının 2. dereceden kuvvetini alan bir pow fonksiyonu yarattık. Bu fonksiyonu daha sonra çağırıp içine tek bir argüman gönderdiğimizde fonksiyonumuz gönderilen sayının ikinci dereceden kuvvetini alır. Varsayılan olarak belirlenen y argümanına, fonksiyon çağırıldığında başka bir değer ataması yapılırsa y argümanı için en son atanan değer geçerli olacaktır. İkinci örnekte de görüldüğü gibi 2 olarak önceden belirlenen y argümanına 4 tamsayısı gönderilirse pow fonksiyonu 4. dereceden kuvvet alan bir fonksiyona dönüşecektir.

R-Programlam-Bolum3-elektrikport-4.jpg

R Programlama Dilinde Fonksiyonların Dönüş Değeri

R programlamada çoğunlukla fonksiyonumuzun bir dizi işlemler yapmasını ve sonra sonucu bize döndürmesini isteriz. Böylelikle bu sonucu başka fonksiyonlarda da kullanabiliriz. Bu işlem R programlama dilinde return() fonksiyonu ile gerçekleştirilir.
Aşağıdaki kod parçasında kontrol isimli fonksiyonumuzda if-else kalıbının içindeki kod parçasının dönüş değerini “sonuc” değişkenine atayarak, gönderilen argümanın pozitif, negatif ya da sıfır olduğuna karar veren bir fonksiyon tanımladık.

R-Programlam-Bolum3-elektrikport-5.jpg

R Programlama Dilinde Özyinelemeli Fonksiyonlar

Kendisini çağıran fonksiyonlara özyinelemeli (recursive) fonksiyonlar denir. Bu teknik bazı durumlarda sorunları daha küçük ve basit parçalara ayırarak çözmeyi kolaylaştırır. Bir örnekle bu kavramı netleştirelim. 1’den 5’e kadar olan tamsayıların faktöriyelini hesaplayan özyinelemeli bir fonksiyon yazalım. Özyinelemeli fonksiyon x sayısı 0’a eşit olmadığı sürece kendisini çağırmaya devam edecektir.

R-Programlam-Bolum3-elektrikport-6.jpg
 

Attachments

  • R-Programlam-Bolum3-elektrikport-1.jpg
    R-Programlam-Bolum3-elektrikport-1.jpg
    15.1 KB · Views: 0

Top