Ders 5: Temel Kütüphane Fonksiyonlar

Benzer belgeler
Standart başlık dosyası bazı fonksiyonlar. Karakter Üzerinde İşlem Yapan Fonksiyonlar

FONKSİYONLAR. [geri dönüş değeri] <fonksiyon ismi>([paramatre]) { ANABLOK }

ALGORİTMA VE PROGRAMLAMA II

Fonksiyonlar (Altprogram)

Örnek : İki sayının toplama işlemini yapan programın algoritmasını yazınız.

Temel Giriş/Çıkış Fonksiyonları (Devam) Örnek :

BMT 101 Algoritma ve Programlama I 11. Hafta. Yük. Müh. Köksal Gündoğdu 1

Fonksiyonlar. Yrd.Doç.Dr.Bülent Çobanoğlu

Dr. Fatih AY Tel: fatihay@fatihay.net

BÖLÜM 1b: C++ PROGRAMLAMANIN YAPISI. C++, hard diskte TC, BIN, INCLUDE, LIB gibi alt dizinlere yüklenir.

JAVADA METOTLAR. BMÜ-111 Algoritma ve Programlama. Yrd. Doç. Dr. İlhan AYDIN

C Programlama. Öğr. Grv. Mustafa AKSOĞAN. Akçadağ MYO

C Programlama Dili'ne Giriş

Dr. Fatih AY Tel:

C Programlama Dili'ne Giriş

ALGORİTMA VE PROGRAMLAMA I DERS NOTU#10

Imports ifadesi, program satırlarının en üstüne (Public Class satırından önce) yazılmalıdır. Aksi halde hata mesajı ile karşılaşılır.

Ders 1: Giriş. İçindekiler. Ders 1: Giriş...1. Ders 2: Veri Tipleri, Değiş kenler ve Sabitler...9. Ders 3: Operatörler...17

Hazır Fonksiyonlar {\} /\ Suhap SAHIN Onur GÖK 1

MATEMATĠKSEL ĠġLEMLER

/ C Bilgisayar Programlama Yıliçi Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak.

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

Karakter Değişkenlere İlişkin Komutlar

Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : dak.

PROGRAMLAMAYA GİRİŞ DERS 2

ÜNİTE İÇİNDEKİLER HEDEFLER MATEMATİKSEL METOTLAR. NESNE TABANLI PROGRAMLAMA I Okt. Mustafa AKBUĞA. (Math Sınıfı ve Metotları)

AHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ

Programlama Dilleri 1. Ders 3: Rastgele sayı üretimi ve uygulamaları

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-12 Fonksiyonlar. Yrd. Doç. Dr. Ümit ATİLA

BÖLÜM 4: DEĞİŞKENLER, SABİTLER VE OPERATÖRLER

3. ARİTMETİK FONKSİYONLAR ~ (~ tamsayı)

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

MAK 1005 Bilgisayar Programlamaya Giriş C DİLİNE GİRİŞ. Prof. Dr. Necmettin Kaya

PROGRAMLAMAYA GİRİŞ FONKSİYONLAR

Fonksiyonlar -Genel Test- A

Programlamaya Giriş. Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi.

1.SORU. Genişlemiş ascii karakterlerinin kodlarını karşılarına yazan C programını

Hafta 13 Fonksiyonlar

BASİT C PROGRAMLARI Öğr.Gör.Dr. Mahmut YALÇIN

BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ

C Programlama Dili'ne Giriş

1. C dilinde fonksiyon bildirimi için hangisi gereklidir?

10. DOSYA GİRİŞ ÇIKIŞ FONKSİYONLARI

Bilgisayar programlama III Fonksiyonlar

Internet Programming II

Sınav tarihi : Süre : 60 dak. c) En başta #include<stdio.h> yazılmamıştır. c) zt d) Pi e) X0

Sınav tarihi : Süre : 60 dak. a) strstr b) strchr c) strcat d) strcpy e) strlen. a) b) d) e) 0

ALFASAYISAL BİLGİLER KARAKTER DİZİLERİ (STRING)

Giriş. ENF102 Jeoloji

BİLGİSAYAR PROGRAMLAMA MATLAB

STRİNG DİZİLER(KATARLAR)

Internet Programming II

Fonksiyonlar. C++ ve NESNEYE DAYALI PROGRAMLAMA 51. /* Fonksiyon: kup Bir tamsayının küpünü hesaplar */ long int kup(int x) {

MATLAB MATLAB MAT LAB MAT LAB MATLAB

BLM111 Programlama Dilleri I. Hafta 10 Diziler. Yrd. Doç. Dr. Caner ÖZCAN

C Programlama printf() Fonksiyonu

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Fall Object-Oriented Programming Laboratory 03

RAPOR VE FORMLARDA KULLANILAN FONKSİYONLAR

BÖLÜM 7: DÖNGÜ KONTROL YAPILARI

C PROGRAMLAMA D İ L İ

MATLAB Temelleri. EEM104 - Bilgisayar Programlama. Matlab ın Açılış Ekranı. Dr. Mehmet Siraç Özerdem EEM Dicle Üniversitesi. Launch Pad.

Programlama Dilleri 1. Ders 4: Diziler

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-8 Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri

KOCAELİ ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ. BİLGİSAYAR LABORATUVARI II FİNAL SINAVI SORU ve CEVAPLARI(I. ogr)

elemanlı bir dizide bir sinyalin 1 er saniye aralıklarla ölçülen gerilim değerleri tutulmaktadır. Bu sinyalin tepeden tepeye genliğini,

C PROGRAMLAMA DİLİNE GİRİŞ

Ders 4: Temel Giriş/Çıkış Fonksiyonları

Sınav tarihi : Süre : 60 dak.

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-10 Diziler. Yrd. Doç. Dr. Ümit ATİLA

sayi=3 harf=a reelsayi=8.72 Bellek durumu 5. İşaretç iler (pointers)

ELN1001 BİLGİSAYAR PROGRAMLAMA I

Döngü Komutları. Komutu. while Komutu Diğer Operatörler Bileşik Komut for Komutu. İçiçe Döngüler break ve continue Komutları

2 PYTHON A GIRIŞ 13 PyCharm İle Python Projesi Oluşturma 15 Projenin Çalıştırılması 18 İlk Python Programımız 19 Açıklama Satırları 21

Ders 2: Veri Tipleri, Değişkenler ve Sabitler

C Programlama Ders Notları

C++ Giriş Ders 5 MSGSU Fizik Bölümü Ferhat ÖZOK

Hafta 8 C Dilinde Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri

Adım Adım C. Dr. Hidayet Takcı

Program Çözümleme. Aşağıdaki örneklerde printf() ve scanf() fonksiyonlarının işlevleri gösterilmektedir. Liste 1.1. Çözümleme:

Fonksiyonlar - Functions. Örnek. Örneğin. C dilinde 5/13/2011. ENF-102 Jeoloji

AHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ

Yrd. Doç. Dr. Caner ÖZCAN

Temel Giriş/Çıkış Fonksiyonları

BLM-112 PROGRAMLAMA DİLLERİ II. Ders-1 Kapsama Kuralları & Rasgele Sayı Üretimi & Rekürsif (Özyinelemeli) Fonksiyonlar

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK

10/17/2007 Nesneye Yonelik Programlama 3.1

mod ile açılacak olan dosyanın ne amaçla açılacağı belirlenir. Bunlar:

C PROGRAMLAMA D İ L İ

2) /* Kullanıcıdan alınan iki sayının obebini alt fonksiyon yardımı ile hesaplayan C programı*/

Örnek: İki fonksiyondan oluşan bir program. Fonksiyon Tanımı

ENF-101 DERS NOTLARI EXCEL PROGRAMINDA KULLANILAN TEMEL İŞLEVLER Hazırlayan: Arş. Gör. Erdal IRMAK 1. EĞER FONKSİYONU

Genel Programlama I

YAPILAR BİRLİKLER SAYMA SABİTLERİ/KÜMELERİ. 3. Hafta

Temel Bilgisayar Bilimleri Ders Notu #4-2. kısım

3. VERİ GİRİŞ-ÇIKIŞI (4ncü hafta)

BLM 111 ALGORİTMA VE PROGRAMLAMA I

Bigisayar Programlama

Diziler. Yrd.Doç.Dr.Bülent ÇOBANOĞLU

Karakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır

Transkript:

Ders 5: Temel Kütüphane Fonksiyonlar Giriş Bu kısımda, C Programlama Dili'nde sık kullanılan ve diğer bölümlerde yararlanacağımız kütüphane fonksiyonlarının bazıları işlenecektir. Kütüphane fonksiyonu C dilinde önceden tanımlanmış hazır fonksiyonlarıdır. C dilinde birçok iş bu fonksiyonlarla yapılmaktadır. Her kütüphane fonksiyonu bir başlık dosyasında tanımlanmıştır. Bu yüzden bir kütüphane fonksiyonunu kullanmadan önce, onun hangi başlık dosyası ile kullanılması gerektiğini bilmelisiniz. 5. Matematiksel Fonksiyonlar (math.h) Matematiksel fonksiyonların hemen hemen hepsi double veri tipindedir. Bu fonksiyonlardan biri program içinde kullanılacaksa math.h başlık dosyası program içine eklenmelidir. En çok kullanılan matematiksel fonksiyonlar Tablo 5.'de listelenmiştir. Tablo 5.: math.h kütüphanesinde tanımlı bazı fonksiyonlar Fonksiyon Bildirimi Açıklama Örnek Sonuç int abs(int x); x tamsayısının mutlak değerini abs(-4) 4 double fabs(double x); x gerçel sayısının mutlak değerini fabs(-4.) 4. int floor(double x); x'e (x'den büyük olmayan) en yakın tamsayıyı gönderir abs(-.5) - int ceil(double x); x'e (x'den küçük olmayan) en yakın tamsayıyı gönderir ceil(-.5) double sqrt(double x); pozitif x sayısının karekökünü sqrt(4.) 2. double pow(double x, double y); x y değerini pow(2., 3.) 8. double log(double x); pozitif x sayısının doğal logaritmasını, ln(x) log(4.).386294 double log(double x); pozitif x sayısının tabanındaki logaritmasını log(4.).626 double sin(double x); radyan cinsinden girilien x sayısının sinüs değerini sin(3.4).593 double cos(double x); radyan cinsinden girilien x sayısının kosinüs değerini - cos(3.4).999999 double tan(double x); radyan cinsinden girilien x sayısının tanjant değerini - tan(3.4).593 double asin(double x); sinüs değeri x olan açıyı gönderir. Açı -pi/2 ile pi/2 arasındadır. asin(.5).523599 double acos(double x); cosinüs değeri x olan açıyı gönderir. Açı -pi/2 ile pi/2 acos(.5) arasındadır..4798 double atan(double x); tanjant değeri x olan açıyı gönderir. Açı -pi/2 ile pi/2 atan(.5) arasındadır..463648

Trigonometrik (sin, cos, tan) fonksiyonlar kendisine parametre olarak gelen değeri radyan olarak kabul eder ve sonucu. Eğer açılar derece cinsinden hesaplanması gerekiyorsa şu dönüşüm kullanılanılabilir: radyan = (3.4593/8.) * derece; Program 5.: sin(), cos(), and tan() fonksiyonlarının kullanımı : 2: 3: 4: 5: 6: 7: 8: 9: : : 2: 3: 4: 5: 6: 7: 8: 9: 2: 2: 22: ÇIKTI /* 5prg.c 3 dercelik açının sinüs, kosinüs, tanjant ve kotanjant değerleri */ #include <stdio.h> #include <math.h> #define PI 3.4593 int main() double aci = 3.; aci *= PI/8.; /* radyana çevir */ puts("3 derecenin"); printf("sinusu : %lf\n", sin(aci)); printf("kosinusu : %lf\n", cos(aci)); printf("tanjanti : %lf\n", tan(aci)); printf("kotanjanti: %lf\n",./tan(aci)); return ; NOT Bir programda math.h kütüphanesi kullanılacakca, GCC derleyicisi - lm seçeneği ile birlikte kullanılmalıdır. Örneğin test.c içinde math.h'i kullanıyorsa derleme: gcc -lm test.c -o test şeklinde yapılmalıdır. Aksi halde bir hata mesajı ile karşılaşılır. 3 derecenin sinusu :.5 kosinusu :.86625 tanjanti :.57735 kotanjanti:.7325

5.2 Standart Kütüphane Fonksiyonları (stdlib.h) Standart kütüphanede, programı sonlandıran, dinamik bellek yönetiminde kullanılan veya rastgele sayı üretme vb. işlevleri yerine getiren bir çok fonksiyon mevcuttur. Bu kısımda, bunlardan bir kaçı Tablo 5.2'de listelenmiştir. Tablo 5.2: stdlib.h kütüphanesinde tanımlı bazı fonksiyonlar Fonksiyon Bildirimi Açıklama Örnek Sonuç int atoi(const char Bir karakter topluluğunu tamsayıya çevirir atoi("-2345") -2345 *s); long atol(const char *s); double atof(const char *s); void exit(int durum); int rand(void); max(a,b) min(a,b) Program 5.2: rand() fonksiyonu kullanımı : 2: 3: 4: 5: 6: 7: 8: 9: : : 2: 3: 4: 5: 6: 7: 8: 9: Bir karakter topluluğunu uzun tamsayıya çevirir atol("23456789") 23456789 Bir karakter topluluğunu gercel sayıya çevirir atof("-23.546") -23.456 Programı sonlandırarak kontrolü işletim sistemine geri verir. ile RAND_MAX arasında rastgele sayı üretir. RAND_MAX, stdlib.h içinde tanımlanmış bir sembolik sabittir stdlib.h'de tanımlanmış iki sayıdan en büyüğünü bulan makro fonksiyon stdlib.h'de tanımlanmış iki sayıdan en küçüğünü bulan makro fonksiyon /* 5prg2.c - arasında tane rasgele sayı üretir */ #include <stdio.h> #include <stdlib.h> int main() int i, ri; for(i=; i<=; i++) ri = rand() % ; /* - arası tamsayı */ printf("\%d\t%d\n",i,ri); puts(" tane rasgele sayi uretildi."); return ; exit() - rand() 548532 max(5, 9) 9 min(5, 9) 5

ÇIKTI 5.3 Karakter Üzerinde İşlem Yapan Fonksiyonlar (ctype.h) Tablo 5.3: ctype.h Kütüphanesinde tanımlı fonksiyonlar Fonksiyon Bildirimi Açıklama Örnek Sonuç isalpha(c) c bir harf ise dan farklı, değilse gönderir isalpha('a') 8 isalnum(c) c A-Z, a-z veya -9 arasında ise dan farklı, değilse gönderir isalnum('a') isascii(c) c bir ASCII karakter ise dan farklı, değilse gönderir isascii('a') isdigit(c) c bir rakam ise dan farklı, değilse gönderir isdigit('4') 2 islower(c) c a-z arasında ise dan farklı, değilse gönderir islower('p') isupper(c) c A-Z arasında ise dan farklı, değilse gönderir islower('p') 4 toascii(c) c sayısı ile verilen ASCII koda sahip karakteri elde eden makro toascii(65) A tolower(c) c karakterini küçük harfe çevirir tolower('d') d toupper(c) c karakterini büyük harfe çevirir toupper('b') B Program 5.3: ctype.h kütüphansinde bulunan bazı makroların kullanımı : 2: 3: 4: 5: 6: 7: 8: 9: : : 2: 3: 4: 5: 6: 7: 8: 9: 2: /* 5prg3.c ASCII kodları 32-27 arasında olan karakterler üzerinde ctype.h kütüphanesinde tanımlı bazı makroların kullanımı */ #include <stdio.h> #include <ctype.h> int main(void) int i; char c; for(i=32; i<27; i++) c = toascii(i); printf("%d\t%c\t%c\t%d\n", i,c,tolower(c),isdigit(c)); return ;

ÇIKTI 32 33!! 34 " " 35 36 # $ # $ 37 % % 38 39 & ' & ' 4 ( ( 4 42 ) * ) * 43 + + 44,, 45 - - 46.. 47 48 / / 49 5 5 2 3 2 3 52 4 4 53 54 5 6 5 6 55 7 7 56 8 8 57 9 9 58 : : 59 6 ; < ; < 6 = = 62 63 >? >? 64 @ @ 65 66 A B a b 67 C c 68 69 D E d e 7 F f 7 72 G H g h 73 I i 74 75 J K j k 76 L l 77 M m 78 N n 79 O o 8 8 P Q p q 82 83 R S r s 84 T t 85 U u 86 87 V W v w 88 X x 89 Y y 9 Z z 9 [ [ 92 93 \ ] \ ] 94 ^ ^ 95 96 ` ` 97 a a 98 99 b c b c

d d e e 2 f f 3 g g 4 h h 5 i i 6 j j 7 k k 8 l l 9 m m n o n o 2 p p 3 q q 4 r r 5 s s 6 7 t u t u 8 9 v w v w 2 x x 2 y y 22 23 z z 24 25 26 ~ ~