C++ Fonksiyonlar
C++ dilinde fonksiyonlar önemli yer tutarlar. Fonksiyonlar bir bütünü parçalara ayırarak işi bölümlere ayırmaya yarayan bir kodlama sistematiğidir. Bu derste fonksiyonlar hakkında detaylı açıklama ve örnek kodlamalar ile c plus plus dilinde daha etkin olmanızı sağlamaya çalışacağım.
Konu anlatımı sonunda program ve slaytların olduğu link paylaşılmıştır.
1)Fonksiyon Kavramı
Bir C programı bir yada daha çok fonksiyonun bir araya gelmesi ile oluşur.
Fonksiyonlar ana amacı gerçekleştirmek için parçalanmış programlardır.
Bir C programı bir yada daha çok fonksiyonun bir araya gelmesi ile oluşur. Fonksiyonlar ana amacı gerçekleştirmek için parçalanmış programlardır.
Kod:
[COLOR="Yellow"][B]int topla(int x,int y)
{
int topla(int x,int y){int sonuc;sonuc=x+y;return sonuc;}
}[/B][/COLOR]
Fonksiyonlar, belirli sayıda verileri işleyen ve sonuç üreten komut grubudur.
Her fonksiyonun bir adı ve fonksiyona gelen değerleri gösteren argümanları (bağımsız değişkenleri) vardır.
Bir fonksiyona gönderilen veri sayısı;
Hiç parametre gönderilmeyebilir.[ rand() ]
Bir parametre gönderilebilir. [ sqrt(4) ]
Birden çok parametre gönderilebilir. [ pow (2,4) ]
Bir fonksiyondan alınan sonuç sayısı;
Hiç sonuç döndürmeyebilir.
Tek sonuç döndürebilir.
Birden fazla sonuç asla döndürmez.
Fonksiyon Kullanımı
Fonk.Tipi Fonk.Adı(Argüman Listesi)
Argümanların Tipleri
{
Yerel değişken bildirimleri
Fonksiyona ait deyimler
return geri dönüş değeri;
}
Örnek;
1
int topla(int x,int y){int sonuc;sonuc=x+y;return sonuc;}
2)Fonksiyon Bildirimi
Program içerisinde fonksiyonlar bildirimi iki şekilde yapılır;
Ana programdan önce
Bu kullanımda ana main den önce fonksiyonlarımızı tanımlarız ve gerekli yerler de kullanırız.
Ana programdan sonra
Bu kullanımda fonksiyonlarımızı main den önce prototiplerini tanımlamak zorundayız. Sonrasın da main fonksiyon ve ondan sonra da fonksiyonlarımızın tanımlamaları yapılarak fonksiyonlar kullanılır.
Ana programdan önce
Kod:
[COLOR="yellow"][B]int topla(int x,int y) //fonksiyon tanımı
{
fonksiyon deyimleri
}
. . .
main()
{ . . . . }[/B][/COLOR]
Ana programdan sonra
Kod:
[COLOR="yellow"][B]int topla(int x,int y); //fonksiyon prototip tanımlaması
. . .
main()
{ . . . . }
int topla(int x,int y) // fonksiyon tanımı
{ fonksiyon deyimleri }[/B][/COLOR]
3)Fonksiyonların Tanımlaması
Kod:
[COLOR="yellow"][B]#include <stdio.h>
#include <iostream>
int topla(int x,int y); //Fonksiyon prototipleri
int cikart (int x,int y);
float ortala (int x,int y);
//Ana Program Başlangıcı
int main(****)
{
int toplam,fark,a,b; //Değişken tanımlamaları
printf("iki sayi giriniz\nBirinci sayi:");
scanf("%d",&a); printf("Ikinci sayi:"); scanf("%d",&b);
toplam = topla(a,b); //Fonksiyonların çağrılması
printf("%d + %d = %d\n",a,b,topla(a,b));
fark = cikart(a,b);
printf("%d - %d = %d\n",a,b,fark);
//ortalama = ortala(a,b);
printf("%d ve %d sayilari ortalamasi = %f\n",a,b,ortala(a,b));
system("pause");
}
//Fonksiyon tanımlamaları
int topla(int x,int y)
{
int sonuc;
sonuc = x+y;
return sonuc;
}
int cikart(int x,int y)
{
int sonuc;
sonuc = x-y;
return (int)sonuc;
}
float ortala(int x,int y)
{
float sonuc;
sonuc = ((float)x+(float)y)/2;
return sonuc;
}[/B][/COLOR]
4)Geri Dönüş Değerleri
return komutunun iki anlamı vardır ;
Fonksiyonun sonuçlanmış değerini döndürür.
Fonksiyonun bittiğini ifade eder.
Sonucunuz bir değere göre değişiyorsa;
Kod:
[COLOR="yellow"][B]char harf(int not)
{
if(not>=0 && not<50) return "F"; if(not>=50 && not<70) return "D"; if(not>=70 && not<80) return "C"; if(not>=80 && not<90) return "B"; if(not>=90) return "A";
}[/B][/COLOR]
return komutu birden fazla kullanılmış gibi gözükse de program içerisinde sadece bir return komutu çalışmaktadır.
Yani bir fonksiyon birden fazla sonuç döndüremez.
Bir fonksiyon return değeri döndürmek zorunda değildir. Bu tip fonksiyonlar **** (boş,hükümsüz) olarak nitelendirilir.
Fonksiyon Parametreleri
Parametrelerin amacı; dışarıda ki bir veriyi fonksiyona göndermek ve o veriyi oluşturduğumuz fonksiyon ile işlemektir.
Örnekler;
ornek (int x)
ornek (int x,int y)
ornek (double a)
ornek (char k)
ornek (****)
5)main Fonksiyonu
Aslında C diline başladığımız günden beri sürekli kullandığımız bir fonksiyon vardır. Onca örnekten sonra anlayacağınız gibi Main()de bir fonksiyondur.
Main() fonksiyonu özel bir fonksiyon olup programımızın başlangıcını ve bitişini temsil eden ana kod kısmıdır.


