Fonksiyon (Function)
Yazan : Şadi Evren ŞEKER
Bilgisayar programlama dillerinde bir veya birden çok eylemi gerçekleştirmek için yazılan ve ana programa parametre ve fonksiyon dönüş değeri ile bağlı olan alt programdır. Yapısal programlama veya Fonksiyonel Programlama yaklaşımlarında sıkça kulanılan fonksiyon kavramı aslında matematiksel fonksiyonlardan farksızdır.
Aşağıdaki matematiksel fonksiyonu ele alalım:
f(x,y) : x2 + 2x + y
Yukarıdaki matematiksel fonksiyon iki parametre alır ve sonuçta tek bir değer döndürür. Örneğin f(3,4) değeri 19 olarak bulunur.
Bilgisayar programlama dilleri için de durum bundan farksızdır. Örneğin aşağıdaki C dilinde yazılmış fonksiyonu ele alalım:
int f( int x, int y){
return x*x + 2*x + y;
}
Yukarıdaki fonksiyonu satır satır inceleyecek olursak, ilk satırda fonksiyonun tanım kısmı bulunmaktadır. Buna göre fonksiyonun ismi f, dönüş tipi int, ve parametreleri sırasıyla int x ve int y’dir.
Bir fonksiyonun dönüş değerinin programda kullanılması matematiksel fonksiyonlardan farksızdır. Buna göre aşağıdaki matematiksel işlemi ele alalım:
5 + 3 + f( 3,4)
Yukarıdaki bu işlemde soldan sağa doğru toplama işlemi yapılırken, öncelikle 5 sayısı ile 3 sayısı toplanır çünkü toplama işlemi bu sayılar arasında tanımlıdır. Ardından gelen f(3,4) ile toplama işlemi ise yapılamaz çünkü bu fonksiyonun değeri bilinmemektedir. Dolayısıyla öncelikle bu değerin hesaplanması gerekir. Örneğin C programlama dili bu fonksiyonu hesaplayarak 19 değerini bulur. Bu değeri toplama işlemine daha önceden hesapladığı 8 + 19 olarak hesaplar. Dolayısıyla fonksiyonun dönüş değeri (return value) hesaplanarak işlem içerisine yerleştirilir. Programlama dillerinde yapılan bu işlemin matematiksel hesaplamadan bir farkı bulunmamaktadır.
« C Dilinde Operatörler (işlemler, operators) | Otokutulama (Autoboxing) »
Yorumlar
Giriş yaparak yorum yazabilirsiniz.
Bilgisayar Kavramları üzerinde şu anda okumakta olduğunuz 'Fonksiyon (Function)' isimli yazı 12 Oct 2008 tarihinde, saat: 21:39 'de Şadi Evren ŞEKER tarafından gönderilmiş, toplam 152 defa okunmuştur.
Benzer yazıları Programlama Dilleri kategorilerinden okuyabilirsiniz. Yazar ile irtibat kurmak için email gönderebilirsiniz. Yazıya yorum yapabilir ya da yapılan yorumları RSS 2.0 ile takibe alabilirsiniz.
Eklenen Son Yazılar
- OpenGL İsim Dizisi
- OpenGL Nesne Seçimi (Object Picking)
- Java Bean
- Türkçe Netbeans
- C ile Zaman İşlemleri
- JSP Oturumları (JSP Sessions)
- JSP Direktifleri (JSP Directives)
- JSP ve HTML
- JSP Etiketleri (JSP Tags)
- Netbeans ile JSP
Yapılan Son Yorumlar
- Şadi Evren ŞEKER: Yukarıdaki şekilde en altta bulunan...
- hercumartesi: 777/10 mod23 işleminde takıldığım...
- hercumartesi: 2P = R olarak gösterip s için (3xP^2 + a)...
- Şadi Evren ŞEKER: Toplama işlemi sonucunda mod işlemi...
- bazenvebazen: n q b b w derken n q p b w demek istedik?...
Yakın Yazılar
Doğrusal Fonksiyon (Linear Function)
referans ile çağırma (call by reference)
fonksiyon göstericileri (function pointer)
Linear Programming (Doğrusal Programlama)
alt program (subprogram, subroutine)
OpenGL ile kullanıcılı iletişimi (user interaction)
Hopfield Ağları (Hopfield Net)
Dyanmic Scoping (dinamik alan değiþkenleri)
Özyineli Fonksiyonlar (Recursive Functions)
Brent Yöntemi (Brent's Method)
Doğrusal Şifreleme (Affine Cipher)
Eigenvalue (Özdeğer) Eigen vector (Öz yöney) Eigen Space (Öz Uzay)
Sonlu Ototmatlar (Finite Automaton)
Kuyruk Özyinelemesi (Tail Recursion, Birikimsel Tarz, Accumulation Style)
Bağlantılar