NİŞANTAŞI ÜNİVERSİTESİ

Slides:



Advertisements
Benzer bir sunumlar
Nesneye Yönelik Programlama
Advertisements

Fonksiyonlar - Functions
Soru1: 1’den 4’e kadar olan tamsayıları ekrana tek satırda görülecek şekilde yazdıran bir programı aşağıdaki metotları kullanarak yazınız. Bir printf ifadesi.
Fonksiyonlar.
Makine Müh. & Jeoloji Müh.
Bilgisayar Programlama Güz 2011
EKRAN ÇIKTISI.
C PROGRAMLAMA DİLİNE GİRİŞ
Bölüm 7 Fonksiyonlar GÖSTERGELER Gösterge Tanımı
Bölüm 2 C Dilinin Temelleri
C Programlama Diline Giriş
Atama ve Girdi/Çıktı Komutları
MATLAB’İN SAYI YUVARLAMA FONKSİYONLARI
Soru1: kuvvet(taban,us) Şeklinde bir yinelenen fonksiyon yazın
Bölüm 9 Dizgiler Dizgi Tanımı Dizgi Girdi İşlemleri
Bölüm 9 Dizgiler Dizgi Tanımı Dizgi Girdi İşlemleri
Fonksiyonlar ve Alt Programlar
Soru 1: Klavyeden girilen 2 tamsayının toplamını bularak ekrana yazdıran bir program yazınız. Problemin tanımı Klavyeden girilen 2 tamsayının toplamı bulunacak.
Bölüm 2 C Dilinin Temelleri Genel Kavramlar
Fonksiyonlar.
While Döngüsü Tekrarlama deyimidir. Bir küme ya da deyim while kullanılarak bir çok kez yinelenebilir. Yinelenmesi için koşul sınaması döngüye girilmeden.
C++ Yapısı Giriş-Çıkış Komutları Döngü Komutları
C++ Temelleri C++ genel amaçlı, nesne tabanlı, yüksek seviye programlama dilidir.
C ile Programlamaya Giriş
FONKSİYONLAR.
Diziler Adres Kavramı Nesnelerin Adresleri sizeof Operatörü
Bilgisayar Programlama
Fonksiyonlar Fonksiyon Tanımı Değer Döndürmeyen Fonksiyonlar
Fonksiyonlar Fonksiyon Tanımı
BPR152 ALGORİTMA VE PROGRAMLAMA - II Öğr. Gör. Bayram AKGÜL
Diğer Bazı Komutlar ve Alıştırmalar
C PROGRAMLAMA FONKSİYONLAR Hazır fonksiyonlar (math, rand) Kullanıcı Tanımlı Fonksiyonlar Değer ile Çağırma.
BM-103 Programlamaya Giriş Güz 2014 (4. Sunu)
C PROGRAMLAMA FONKSİYONLAR Adres ile Fonksiyon Çağırma Pointer (İşaretçiler) ile Fonksiyon Çağırma Rekürsif Fonksiyonlar.
Bölüm 6 Fonksiyonlar Fonksiyon Tanımı Değer Döndürmeyen Fonksiyonlar
Dizgiler Dizgi Tanımı Dizgi Girdi İşlemleri Dizgi Çıktı İşlemleri Dizgi Fonksiyonları Karakter Fonksiyonları Gösterge Dizgileri.
Örnek Adam asmaca oyununun programının yazılması.
Bilgisayar Programlama Güz 2011
1 Yapılandırılmamış programlama Prosedür/Fonksiyon gerekliliği Prosedural Programlama Fonksiyon Tanımlama/Prototip/Çağırma Örnek fonksiyonlar Fonksiyon.
SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz
Algoritmalar ve Programlama I Ders 10: ALTPROGRAM KAVRAMI ve FONKSİYON
Bölüm 3 Atama ve Girdi/Çıktı Komutları Bölüm 3 Atama ve Girdi/Çıktı Komutları Atama Komutu Operatörler İsim Sabitleri Veri Tipi Dönüşümü Çıktı Fonksiyonu.
BİLGİSAYAR programlama II
4. Hafta1 4. HAFTA. 4. Hafta2 Fonksiyonlar  Büyük problemler, küçük parçalara bölünerek kolay çözülür  Yazılımlar benzer modüller içerirler  Hata ayıklama.
Döngü Komutları. for deyimi bir alt limitten, bir üst limite kadar programın belirli bir parçasını tekrar eder. for deyiminde sayaç artış oranı da verilmelidir.
Fonksiyonlar.
SAYISAL ANALİZ Doç.Dr. Cüneyt BAYILMIŞ.
Bölüm 2 C Dilinin Temelleri Genel Kavramlar Yazım ve Noktalama Kuralları C Kütüphaneleri C Dilindeki Sözcükler Değer Sabitleri Veri Tipleri Değişkenler.
Programlamaya Giriş-I Bölüm-1. Algoritma Algoritma günlük yaşamımızda yaptığımız işler sırasında sıklıkla kullandığımız bir yöntemdir. Algoritma, bir.
Algoritma ve Akış Şemaları
Bölüm 3 Atama ve Girdi/Çıktı Komutları
Bilgisayar Programlama BIL 107
Fonksiyonlar ve Diziler
YAPISAL PROGRAMLAMA Hafta-5
Bölüm 6 Fonksiyonlar Fonksiyon Tanımı Değer Döndürmeyen Fonksiyonlar
C Programlama Dili Bilgisayar Mühendisliği.
BM-103 Programlamaya Giriş Güz 2016 (4. Sunu)
C’de Fonsiyonlar Aslı Ergün.
BİLGİSAYAR PROGRAMLAMA Ders 10: Dosyalama İşlemleri
C Programlama Diline Giriş
Bölüm 9 Dizgiler Dizgi Tanımı Dizgi Girdi İşlemleri
Bölüm 2 C Dilinin Temelleri
Bölüm 6: Kullanıcı Tanımlı Fonksiyonlar I
Akis diyagramı Örnekleri
Bölüm 3 Atama ve Girdi/Çıktı Komutları
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
Bölüm 2 C Dilinin Temelleri
C ile Programlamaya Giriş
4. HAFTA.
Sunum transkripti:

NİŞANTAŞI ÜNİVERSİTESİ ALGORİTMA VE PROGRAMLAMAYA GİRİŞ Fonksİyon tanımı, fonksİyon çağırma, FONKSİYONLARIN PROTOTİPİ, BAŞLIK DOSYALARI NİŞANTAŞI ÜNİVERSİTESİ © İktisadi, İdari ve Sosyal Bilimler Fakültesi iisbf.nisantasi.edu.tr

FONKSİYON TANIMI Büyük programların yazılması kadar değiştirilmeleri, hatalarının bulunması ve düzeltilmesi oldukça zordur. Bu nedenle büyük programlar modül veya fonksiyon denilen küçük program parçalarına ayrılır. Buna modüler programlama denir.

FONKSİYON TANIMI tip fonksiyon_adı (parametre listesi) { yerel değişkenler; komutlar; return (ifade); }

FONKSİYON ÇAĞIRMA Bir fonksiyonu çağırmak, yani çalıştırmak için ana programda fonksiyon adının yanına parantez içinde fonksiyona geçirilmek istenilen değerler listesi yazılır: fonksiyon_adı (argüman listesi); Burada argüman listesi birbirinden virgülle ayrılmış bulunan değerler veya bu değerleri taşıyan değişkenlerdir. Buradaki fonksiyona çağıran fonksiyon denir. Çağıran fonksiyondaki argümanların tipi ile çağrılan fonksiyonda argümanlara karşılık gelen parametrelerin tipi aynı olmalıdır. Bunların sayısı en çok 31’dir.

ÖRNEK Bir sayının küpünü hesaplayıp geri döndüren C fonksiyonunu yazınız. Bu fonksiyonu kullanarak klavyeden girilen 5 sayının küpünü hesaplayıp ekrana yazdıran C programını yazınız.

ÖRNEK Çağırıldığı zaman ekrana “Merhaba C” mesajını yazan fonksiyonu tasarlayınız. Bu fonksiyonu kullanarak ekrana 10 kez “Merhaba C” yazdıran C programını yazınız.

ÖRNEK 3 adet tamsayıdan en büyüğünü bulup geri döndüren bir C fonksiyonu yazınız. Bu fonksiyonu kullanarak klavyeden girilen 3 tamsayıdan en büyüğünü bulup ekrana yazdıran C programını yazınız.

ÖRNEK Bir kullanıcı Celsius cinsinden verilen bir sıcaklık değerini Fahrenheit; Fahrenheit cinsinden verilen değeri ise Celsius cinsinden bulmak istemektedir. Kullanıcıya hangi tür çevrim yapacağını soran ve buna göre çevirmeyi yapan C programını yazınız. Eğer kullanıcı f girerse çevirme Celcius’tan Fahrenheit’a; c girerse Fahrenheit’dan Celsius’a olmalıdır. Formül olup F: Fahrenheit, C: Celsius’u ifade etmektedir. Bu programı tasarlarken 2 ayrı fonksiyon yazınız. Fonksiyonlardan biri Celsius’u parametre olarak almalı ve Farheinheit değerini geri döndürmeli; diğer fonksiyon ise Fahrenheit değerini parametre olarak almalı ve Celsius değerini geri döndürmelidir.

ÖRNEK

ÖRNEK Adları topla, cikar,carp ve bol olan dört fonksiyon tanımlayarak, klavyeden girilen iki sayı ve bir karaktere göre (+, -, *, /), seçilen işlemi gerçekleştirerek sonucu ekrana yazdıran C programını yazınız.

ÖRNEK

FONKSİYON ÇAĞIRMA Fonksiyonlar iki farklı şekilde çağrılır ; 1) değerle çağırma (call by value) 2) adresle çağırma (call by refrence) Değerle çağırma yönteminde argümanın değeri, çağrılan fonksiyon içinde karşısındaki parametreye kopyalanır. Kopyalanan değerin içinde kullanılması veya değiştirilmesi argümandaki değeri değiştirmez. İkinci yöntemi gösterici konusunu incelerken ele alacağız.

FONKSİYON ÇAĞIRMA Bir programda istenildiği kadar fonksiyon kullanılabilir ve bu fonksiyonlardan her biri bir diğerini çağırabilir. Özellikle main() fonksiyonu diğer bütün fonksiyonları çağırabilir Fonksiyonlar bir programda herhangi bir sırada veya alfabetik sıraya göre veya sırasına göre yer alabilir. main( ) bile istenilen herhangi bir yere konabilir, ilk başta yer alması zorunlu değildir.

FONKSİYONLARIN PROTOTİPİ ANSI C’nin çok önemli özelliklerinden biri de fonksiyonun prototipi ile ilgilidir. Derleyici, fonksiyonun prototipine bakarak fonksiyonun tipini, parametre sayısını, parametrelerinin tipini ve bu parametrelerin sırasını belirler. Programda fonksiyonun çağrılması veya kullanılması sırasında bir uyumsuzluk olması halinde derleyici uyarı mesajı verir. Bu da programın daha sağlıklı çalışmasını sağlar.

FONKSİYONLARIN PROTOTİPİ Fonksiyon prototipi formatı: tip fonksiyon_adı (tip degisken_ismi_1, …… ,tip degisken_ismi_n) Fonksiyon prototipinde parametre isimleri yer almayabilir: tip fonksiyon_adı (tip,tip, …… ,tip) Fonksiyonlar genelde main() ‘den önce yer alır. Kaynak: İbrahim Güney, C Programlama Dili, Nobel Yayıncılık

BAŞLIK DOSYALARI Her standart kitaplığın ilgili olduğu bir başlık dosyası vardır. Bu dosyada, kitaplık­taki tüm fonksiyonların prototipleri ve bu fonksiyonlar için gerekli olan değişik veri tipleri ile sabitlerin tanımları yer alır. Programcı, kendisi için de bir başlık dosyası oluştu­rabilir. Önceden hazırlanmış ve kullanıcının hizmetine sunulan özel amaçlı fonksiyonların prototipleri, bazı makro ve sembolik sabit tanımlamaları değişik başlık dosyalarında toplanmıştır. Programlarda hangi başlık dosyasının fonksiyonu kullanılacaksa o başlık dosyası #include yanında yer almalıdır. Kaynak: İbrahim Güney, C Programlama Dili, Nobel Yayıncılık

BAŞLIK DOSYALARI <ctype.h>. Bu dosyada karakterlerle ilgili işlemler(testler) yapan fonksiyonların prototipleri bulunur. tolower(ch): ch küçük harf ise aynı bırakır, büyük ise küçük yapar. toupper(ch): ch büyük harf ise aynı bırakır, küçük ise büyük yapar. < conio.h>. Bazı özel giriş/ çıkış fonksiyonların prototipini içerir: getch(),getche(),getchar(): klavyeden karakter okur. putchar(ch): ekrana ch deki karakteri görüntüler. <math.h>. matematik fonksiyonlann prototiplerini içerir. Dosyadaki fonksiyon listesi aşağıda verilmiştir. Kaynak: İbrahim Güney, C Programlama Dili, Nobel Yayıncılık

BAŞLIK DOSYALARI xy exp(x) ex exp(1.0) = 2.71828 log(x) lnx <math.h>. matematik fonksiyonlann prototiplerini içerir. Dosyadaki fonksiyon listesi aşağıda verilmiştir. Fonksiyon Açıklama Örnek sqrt(x) karekök x sqrt(900.0) = 30.0 exp(x) ex exp(1.0) = 2.71828 log(x) lnx log(2.71828) =1.0 fabs(x) |x| fabs(-3.0) = 3.0 ceil(x) < x olan tamsayı ceil(9.2) = 10.0 floor(x) > x olan tam sayı floor(9.2) = 9.0 pow(x,y) xy pow(9,2) = 81 Kaynak: İbrahim Güney, C Programlama Dili, Nobel Yayıncılık

BAŞLIK DOSYALARI <stdio.h>. giriş/çıkış yapan fonksiyonların prototipleri ve bazı sabitlerle ilgili bilgiler içerir: printf( ), scanf(), puts( ), gets()....: giriş/çıkış ile ilgili fonksi­yonlar. <stdlib.h>. Rastgele sayılarla ilgili fonksiyonların prototipleri bulunur. rand( ) veya srand() : Her çağırılışında 0-RAND_MAX arasında bir sayı üretir. Randomize( ), random(n): birlikte kullanılır. İlk komut üretilen rasgele sayıların Farklı olmasını sağlar. 0-(n 1) arasında rasgele sayı üretir. Kaynak: İbrahim Güney, C Programlama Dili, Nobel Yayıncılık

ÖRNEK basamak.h isimli bir başlık dosyası oluşturunuz. Bu başlık dosyasında basamaksayisi isimli bir fonksiyon tanımlayınız. Bu fonksiyon parametre olarak aldığı tamsayının basamak sayısını geri döndürecektir. Daha sonra bu fonksiyonu çağırarak girilen sayıların basamak sayısını hesaplayan bir program yazınız. Program negatif bir tamsayı girilene kadar çalışmaya devam edecektir.

ÖRNEK

KayNAKlar Fahri Vatansever, Algoritma Geliştirme ve Programlamaya Giriş, Seçkin Yayıncılık İbrahim Güney, C Programlama Dili, Nobel Yayıncılık