4 2

4
แบบฝ กทักษะการเข ยนโปรแกรมภาษาซ เล ม 4 ฟงก ชันน ารู กลุมฟงกชันทางคณิตศาสตร เปนฟงกชันที่ใชสําหรับการคํานวณทางคณิตศาสตร และกอนที่จะใชฟงกชันประเภทนี้ จะตองใช คําสั่ง #include <math.h> แทรกอยูตอนตนของโปรแกรม และตัวแปรที่จะใชฟงกชันประเภทนี้จะตอง มีชนิด (type) เปน จํานวนจริงเนื่องจากผลลัพธที่ไดจากฟงกชันประเภทนี้จะไดคาสงกลับของขอมูลเปน จํานวนจริง เชนกัน #include <math.h> ฟงก ชัน ประโยชน การใช งาน ตัวอย างการใช าท ่ได sqrt(x); หารากท ่ 2 ของ x sqrt(9.0) 3.0 exp(x); ฟงก ชันเอกโปเนนต exp(2.0) 7.389056 log(x); ล็อกการ มของ x (base e) log(9) 2.197225 log10(x); ล็อกการ มของ x (base 10) log10(10) 1.00000 fabs(x); หาค าสัมบูรณ ของ x fabs(-5) 5 ceil(x); ปดเศษทศน ยม x ceil( 9.852) 10.000 floor(x); ปดทศน ยม x ลง floor(9.852) 9.000 pow(x,y) หาค าของ x ยกกําลัง y pow(3,5) 243.000 11

Upload: mrsomsak-phoolpherm

Post on 02-Nov-2014

230 views

Category:

Documents


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: 4 2

แบบฝกทกัษะการเขียนโปรแกรมภาษาซี เลม 4 ฟงกชันนารู

กลุมฟงกชันทางคณิตศาสตร

เปนฟงกชันที่ใชสําหรับการคํานวณทางคณิตศาสตร และกอนที่จะใชฟงกชันประเภทน้ี จะตองใช

คําสั่ง #include <math.h> แทรกอยูตอนตนของโปรแกรม และตัวแปรที่จะใชฟงกชันประเภทน้ีจะตอง

มีชนิด (type) เปน จํานวนจริงเน่ืองจากผลลัพธที่ไดจากฟงกชันประเภทน้ีจะไดคาสงกลบัของขอมลูเปน

จํานวนจรงิ เชนกัน #include <math.h>

ฟงกชัน ประโยชนการใชงาน ตัวอยางการใช คาที่ได

sqrt(x); หารากที่ 2 ของ x sqrt(9.0) 3.0

exp(x); ฟงกชันเอกโปเนนต exp(2.0) 7.389056

log(x); ล็อกการทิมึของ x (base e) log(9) 2.197225

log10(x); ล็อกการทิมึของ x (base 10) log10(10) 1.00000

fabs(x); หาคาสัมบูรณของ x fabs(-5) 5

ceil(x); ปดเศษทศนิยม x ข้ึน ceil(9.852) 10.000

floor(x); ปดทศนิยม x ลง floor(9.852) 9.000

pow(x,y) หาคาของ x ยกกําลัง y pow(3,5) 243.000

11

Page 2: 4 2

แบบฝกทกัษะการเขียนโปรแกรมภาษาซี เลม 4 ฟงกชันนารู

ตัวอยางโปรแกรมที ่4.5 โปรแกรมแสดงใชงานฟงกชัน ทางคณิตศาสตร

บรรทดัที ่ คําสั่ง 1 #include <stdio.h>

2 #include <conio.h>

3 #include <math.h>

4 main()

5 {

6 printf("sqrt( . ) =%. f\n",sqrt( . ));

7 printf("exp( . ) =%f\n",exp( . ));

8 printf("log( ) =%f\n",log( ));

9 printf("log ( ) =%. f\n",log ( ));

10 printf("fabs(- ) =%. f\n",fabs(- ));

11 printf("ceil( . ) =%. f\n",ceil( . ));

12 printf("floor( . ) =%. f\n",floor( . ));

13 printf("pow( , ) =%. f\n",pow( , ));

14 getche();

15 }

ผลการรันโปรแกรม

12

Page 3: 4 2

แบบฝกทกัษะการเขียนโปรแกรมภาษาซี เลม 4 ฟงกชันนารู

กลุมฟงกชันการแปลงขอมูล

#include <stdlib.h>

ฟงกชัน ประโยชนการใชงาน

atoi แปลงตัวอักษรเปนจํานวนเต็ม

atof แปลงตัวอักษรเปนจํานวนจรงิ

atol แปลงตัวอักษรเปนจํานวนเต็มแบบ long

ตัวอยางโปรแกรมที่ 4.6 ใชฟงกชันแสดงขอมูล

บรรทดัที ่ คําสั่ง 1 #include<stdio.h>

2 #include<stdlib.h>

3 #include<conio.h>

4 main() {

5 char s [ ] = " ";

6 char s [ ] = " . ";

7 char s [ ] = " ";

8 int as ; float fs ; long ls ;

9 as = atoi(s )- ;

10 fs = * atof(s );

11 ls = atol(s );

12 printf("convert BE \" \" to BCE = %d\n",as );

13 printf("FS = %f\n",fs );

14 printf("LS = %ld\n",ls );

15 getch();

16 }

13

Page 4: 4 2

แบบฝกทกัษะการเขียนโปรแกรมภาษาซี เลม 4 ฟงกชันนารู

บรรทัดที่ 9 ใชฟงกชัน atoi เปลี่ยนคาขอความใน s1 ใหเปนจํานวนเต็มแลว

ลบดวย 543 เก็บไวในตัวแปร as1

บรรทัดที่ 10 ใชฟงกชัน atof( ) เปลี่ยนคาขอความ s2 ใหเปนตัวเลขทศนิยม

ท่ีสามารถนําไปคํานวณได ซึ่งในคําสั่งน้ีจะใชคูณกับเลข 2 เก็บไว

ท่ีตัวแปร fs2

บรรทัดท่ี 11 ใชฟงกชัน atol( ) เปลี่ยนคาขอความ s3 ใหเปนตัวเลขจํานวน

เต็มชนิด long integer เก็บไวท่ีตัวแปร ls3

บรรทัดที่ 12-14 แสดงคาในตัวแปร

ผลการรันโปรแกรม

14