คำอธิบำยโปรแกรม
#include<stdio.h> // pre-processor
#include<math.h> // pre-processor
//double pow(double base,double exp); // คำอธิบำยโปรแกรมแบบบรรทัดเดียว คือ
โปรโตไทป์ของฟังก์ชัน pow
//double sqrt(double x); // คำอธิบำยโปรแกรมแบบบรรทัดเดียว คือ โปรโตไทป์ของฟังก์ชัน sqrt
int main() // ฟังก์ชันหลัก
{
double b,x,s,p,e; // ประกำศตัวแปร b เพื่อเก็บค่ำฐำน ตัวแปร x เพื่อเก็บค่ำตัวเลขเข้ำฟังก์ชัน sqrt
ตัวแปร s เพื่อเก็บค่ำผลลัพธ์ของฟังก์ชัน sqrt ตัวแปร p
เพื่อเก็บค่ำผลลัพธ์ของฟังก์ชัน pow และตัวแปร e เพื่อเก็บค่ำกำลัง
printf("Input base : "); // รับค่ำฐำนผ่ำนทำงจอภำพ
scanf("%lf",&b); // เก็บค่ำฐำนที่รับเข้ำมำ ในตัวแปร b
printf("Input exp :"); // รับค่ำกำลังผ่ำนทำงจอภำพ
scanf("%lf",&e); // เก็บค่ำกำลังที่รับเข้ำมำในตัวแปร e
printf("Input number :"); // รับค่ำตัวเลขผ่ำนทำงจอภำพ
scanf("%lf",&x); // เก็บค่ำตัวเลขที่รับเข้ำมำในตัวแปร x
p = pow(b,e); // ใช้ฟังก์ชันมำตรฐำน pow หำผลลัพธ์ แล้วเก็บค่ำในตัวแปร p
printf("pow =%lfn",p); // แสดงค่ำ pow ออกทำงจอภำพ
s = sqrt(x); // ใช้ฟังก์ชันมำตรฐำน sqrtหำผลลัพธ์ แล้วเก็บค่ำในตัวแปร s
printf("sqrt =%lfn",s); //แสดงค่ำ sqrt ออกทำงจอภำพ
getch();
return 0;
}
ผลกำรรัน
คำอธิบำยโปรแกรม
#include<stdio.h> // pre-processor
int Area(int w, int l); // โปรโตไทป์ของฟังก์ชัน Area
int main() // ฟังก์ชันหลัก
{
int w,l,a; // ประกำศตัวแปร w เพื่อเก็บค่ำควำมกว้ำง ตัวแปร l เพื่อเก็บค่ำควำมยำว และตัวแปร a
เพื่อเก็บค่ำผลลัพธ์ของฟังก์ชัน Area
printf("Enter weight :"); // รับค่ำควำมกว้ำงจำกผู้ใช้
scanf("%d",&w);// เก็บค่ำควำมกว้ำงในตัวแปร w
printf("Enter lenght : "); // รับค่ำควำมยำวจำกผู้ใช้
scanf("%d",&l); // เก็บค่ำควำมยำวในตัวแปร l
a = Area(w,l); // เรียกใช้ฟังก์ชัน Area แล้วเก็บค่ำในตัวแปร a
printf("Area =%dn",a); // แสดงค่ำผลลัพธ์พื้นที่ออกทำงจอภำพ
getch();
return 0;
}
int Area(int w,int l) // เข้ำฟังก์ชัน Area
{
int A; // ประกำศตัวแปร A เพื่อเก็บค่ำผลลัพธ์กำรหำพื้นที่
A = w*l; // คำควณหำพื้นที่โดยนำตัวแปร w*l
return A; // ส่งค่ำตัวแปร A กลับไปในฟังก์ชันหลัก ตรงบรรทัดเรียกใช้ฟังก์ชัน
}
ผลกำรรัน
คำอธิบำยโปรแกรม
#include<stdio.h> // pre-processor
int Get_Fx(int x); // โปรโตไทป์ของฟังก์ชัน Get_Fx
int main() // ฟังก์ชันหลัก
{
int X,f=0; // ประกำศตัวแปร X เพื่อเก็บค่ำตัวเลขที่ผู้ใช้ป้อนเข้ำมำ แลตัวแปร f
เพื่อเก็บค่ำผลลัพธ์จำกฟังก์ชัน Get_Fx
printf("Enter X : "); // รับค่ำตัวเลขจำกผู้ใช้
scanf("%d",&X); // เก็บค่ำในตัวแปร X
f = Get_Fx(X); // เรียกใช้ฟังก์ชัน Get_Fx แล้วเก็บค่ำในตัวแปร f
printf("%d",f); // แสดงผลลัพธ์ออกทำงจอภำพ
getch();
return 0;
}
int Get_Fx(int x) // เข้ำฟังก์ชัน Get_Fx
{
int a; // ประกำศตัวแปร a เพื่อเก็บค่ำกำรคำนวณ
if(x < 0) // ถ้ำเข้ำเงื่อนไข ค่ำตัวเลขที่ป้อนเข้ำมำ น้อยกว่ำ 0
{
a = (x*x)+(2*x)+3; // คำนวณผลแล้วเก็บในตัวแปร a
}
if (x == 0) // ถ้ำเข้ำเงื่อนไข ค่ำตัวเลขที่ป้อนเข้ำมำเท่ำกับ 0
{
a = 0; // ให้ตัวแปร a เท่ำกับ 0
}
if (x>0) // ถ้ำเข้ำเงื่อนไข ค่ำตัวเลขที่ป้อนเข้ำมำมำกว่ำ 0
{
a = x-2; // คำนวรผลแล้วเก็บไว้ในตัวแปร a
}
return a; // รีเทรินค่ำ a กลับไปในฟังก์ชัน main ตรงบรรทัดเรียกใช้ฟังก์ชัน
}
ผลกำรรัน
คำอธิบำยโปรแกรม
#include<stdio.h> // Pre-processor
int Get_Fxy( int x, int y ); // โปรโตไทป์ของฟังก์ชัน Get_Fxy
int main() // ฟังก์ชันหลัก
{
int x,y,f; // ประกำศตัวแปร x และ y เพื่อเก็บค่ำที่รับมำจำกผู้ใช้ และ ตัวแปร f
เพื่อเก็บค่ำผลลัพธ์จำกกำรคำนวณในฟังก์ชัน Get_Fxy
printf("Enter x :"); // รับค่ำตัวเลขจำกผู้ใช้
scanf("%d",&x); // เก็บค่ำที่รับมำในตัวแปร x
printf("Enter y :"); // รับค่ำตัวเลขจำกผู้ใช้
scanf("%d",&y); // เก็บค่ำที่รับเข้ำมำในตัวแปร y
f = Get_Fxy(x,y); // เรียกใช้ฟังก์ชัน Get_Fxy แล้วเก็บค่ำที่ถูกส่งกลีมำในตัวแปร f
printf("f(x,y)=%d",f); // แสดงผลลัพธ์ออกทำงจอภำพ
getch();
return 0;
}
int Get_Fxy( int x, int y ) // เข้ำฟังก์ชัน Get_Fxy
{
int a; // ประกำศตัวแปร a เพื่อเก็บผลลัพธ์จำกกำรคำนวณ
if(x+y > 0) // เข้ำเงื่อนไข ถ้ำ ผลบวกของ ค่ำที่รับมำจำกผู้ใช้ 2ตัว มำกกว่ำ 0
{
a = x+y; // ให้นำ2 ค่ำที่รับมำนั้นบวกกันเก็บในตัวแปร a
}
if(x+y ==0) // ถ้ำผลบวกของ ค่ำที่รับมำจำกผู้ใช้ 2ค่ำ เท่ำกับ 0
{
a =0; // ให้a มีค่ำท่ำกับ 0
}
if(x+y < 0) // ถ้ำผลบวกของ ค่ำที่รับมำจำกผู้ใช้ 2 ค่ำ น้อยกว่ำ 0
{
a = -x+y; // ให้ –x( - ตัวเลขที่รับเข้ำมำตัวแรก) บวกด้วย ค่ำที่รับมำตัวที่ 2
เก็บค่ำผลลัพธ์ในตัวแปร a
}
return a; // รีเทรินค่ำ a กลับไปในฟังกัน main ตรงบรรทัดที่เรียกใช้ฟังก์ชัน
}
ผลกำรรัน
คำอธิบำยโปรแกรม
#include<stdio.h> // Pre-processor
#define PI 3.14159 // กำหนดค่ำ PI เท่ำกับ 3.14159 ทั้งโปรแกรม
float cylinder(float d , float h); // โปรโตไทป์ของฟังก์ชัน cylinder
int main() // ฟังก์ชันหลัก
{
float d,h,v; // ประกำศตัวแปร d เพื่อเก็บค่ำเส้นผ่ำนศูนย์กลำงที่รับมำจำกผู้ใช้ ตัวแปร h
เพื่อเก็บค่ำควำมสูงที่รับมำจำกผู้ใช้ และตัวแปร v เพื่อเก็บค่ำจำกหำรคำนวณหำปริมำตร
printf("Enter diameter :"); // รับค่ำเส้นผ่ำนศูนย์กลำงจำกผู้ใช้
scanf("%f",&d); // เก็บค่ำเส้นผ่ำนศูนย์กลำงไว้ในตัวแปร d
printf("Enter height :"); // รับค่ำควำมสูงจำกผู้ใช้
scanf("%f",&h); // เก็บค่ำควำมสูงไว้ในตัวแปร h
v = cylinder(d,h); // เรียกใช้ฟังก์ชัน cylinder
printf("V =%.2f",v); // แสดงค่ำปริมำตรของทรงกระบอกออกทำงจอภำพ
getch();
return 0;
}
float cylinder(float d , float h) // เข้ำฟังก์ชัน cylinder
{
float v; // ประกำศตัวแปร v เพื่อเก็บค่ำจำกหำรคำนวณหำปริมำตรของทรงกระบอก
v = PI*((d/2)*(d/2))*h; // คำนวณหำปริมำตรของทรงกระบอก เก็บผลลัพธ์ในตัวแปร v
return v; // รีเทรินค่ำตัวแปร v กลับไปในฟังก์ชันหลัก บรรทัดเรียกใช้ฟังก์ชัน
}
ผลกำรรัน
กำรทดลองที่ 5
ฟังก์ชัน (Function)
เสนอ
อำจำรย์กฤตศิลป์ ศิลำนนท์
จัดทำโดย
นำยธงชัย บุตรชำติ(sec 01)
รหัสประจำตัวนักศึกษำ 5835512017
รำยงำนนี้เป็นส่วนหนึ่งของวิชำ 242-101 Introduction to
Computer Programming
ภำคกำรศึกษำที่ 2 ปีกำรศึกษำ 2558
ภำควิชำวิศวกรรมคอมพิวเตอร์ คณะวิศวกรรมศำสตร์
มหำวิทยำลัยสงขลำนครินทร์ วิทยำเขตภูเก็ต

Lab intro-5-1

  • 2.
    คำอธิบำยโปรแกรม #include<stdio.h> // pre-processor #include<math.h>// pre-processor //double pow(double base,double exp); // คำอธิบำยโปรแกรมแบบบรรทัดเดียว คือ โปรโตไทป์ของฟังก์ชัน pow //double sqrt(double x); // คำอธิบำยโปรแกรมแบบบรรทัดเดียว คือ โปรโตไทป์ของฟังก์ชัน sqrt int main() // ฟังก์ชันหลัก { double b,x,s,p,e; // ประกำศตัวแปร b เพื่อเก็บค่ำฐำน ตัวแปร x เพื่อเก็บค่ำตัวเลขเข้ำฟังก์ชัน sqrt ตัวแปร s เพื่อเก็บค่ำผลลัพธ์ของฟังก์ชัน sqrt ตัวแปร p เพื่อเก็บค่ำผลลัพธ์ของฟังก์ชัน pow และตัวแปร e เพื่อเก็บค่ำกำลัง printf("Input base : "); // รับค่ำฐำนผ่ำนทำงจอภำพ scanf("%lf",&b); // เก็บค่ำฐำนที่รับเข้ำมำ ในตัวแปร b printf("Input exp :"); // รับค่ำกำลังผ่ำนทำงจอภำพ scanf("%lf",&e); // เก็บค่ำกำลังที่รับเข้ำมำในตัวแปร e printf("Input number :"); // รับค่ำตัวเลขผ่ำนทำงจอภำพ scanf("%lf",&x); // เก็บค่ำตัวเลขที่รับเข้ำมำในตัวแปร x p = pow(b,e); // ใช้ฟังก์ชันมำตรฐำน pow หำผลลัพธ์ แล้วเก็บค่ำในตัวแปร p printf("pow =%lfn",p); // แสดงค่ำ pow ออกทำงจอภำพ s = sqrt(x); // ใช้ฟังก์ชันมำตรฐำน sqrtหำผลลัพธ์ แล้วเก็บค่ำในตัวแปร s printf("sqrt =%lfn",s); //แสดงค่ำ sqrt ออกทำงจอภำพ getch(); return 0; } ผลกำรรัน
  • 4.
    คำอธิบำยโปรแกรม #include<stdio.h> // pre-processor intArea(int w, int l); // โปรโตไทป์ของฟังก์ชัน Area int main() // ฟังก์ชันหลัก { int w,l,a; // ประกำศตัวแปร w เพื่อเก็บค่ำควำมกว้ำง ตัวแปร l เพื่อเก็บค่ำควำมยำว และตัวแปร a เพื่อเก็บค่ำผลลัพธ์ของฟังก์ชัน Area printf("Enter weight :"); // รับค่ำควำมกว้ำงจำกผู้ใช้ scanf("%d",&w);// เก็บค่ำควำมกว้ำงในตัวแปร w printf("Enter lenght : "); // รับค่ำควำมยำวจำกผู้ใช้ scanf("%d",&l); // เก็บค่ำควำมยำวในตัวแปร l a = Area(w,l); // เรียกใช้ฟังก์ชัน Area แล้วเก็บค่ำในตัวแปร a printf("Area =%dn",a); // แสดงค่ำผลลัพธ์พื้นที่ออกทำงจอภำพ getch(); return 0; }
  • 5.
    int Area(int w,intl) // เข้ำฟังก์ชัน Area { int A; // ประกำศตัวแปร A เพื่อเก็บค่ำผลลัพธ์กำรหำพื้นที่ A = w*l; // คำควณหำพื้นที่โดยนำตัวแปร w*l return A; // ส่งค่ำตัวแปร A กลับไปในฟังก์ชันหลัก ตรงบรรทัดเรียกใช้ฟังก์ชัน } ผลกำรรัน
  • 6.
    คำอธิบำยโปรแกรม #include<stdio.h> // pre-processor intGet_Fx(int x); // โปรโตไทป์ของฟังก์ชัน Get_Fx int main() // ฟังก์ชันหลัก { int X,f=0; // ประกำศตัวแปร X เพื่อเก็บค่ำตัวเลขที่ผู้ใช้ป้อนเข้ำมำ แลตัวแปร f เพื่อเก็บค่ำผลลัพธ์จำกฟังก์ชัน Get_Fx printf("Enter X : "); // รับค่ำตัวเลขจำกผู้ใช้ scanf("%d",&X); // เก็บค่ำในตัวแปร X f = Get_Fx(X); // เรียกใช้ฟังก์ชัน Get_Fx แล้วเก็บค่ำในตัวแปร f printf("%d",f); // แสดงผลลัพธ์ออกทำงจอภำพ getch(); return 0; } int Get_Fx(int x) // เข้ำฟังก์ชัน Get_Fx {
  • 7.
    int a; //ประกำศตัวแปร a เพื่อเก็บค่ำกำรคำนวณ if(x < 0) // ถ้ำเข้ำเงื่อนไข ค่ำตัวเลขที่ป้อนเข้ำมำ น้อยกว่ำ 0 { a = (x*x)+(2*x)+3; // คำนวณผลแล้วเก็บในตัวแปร a } if (x == 0) // ถ้ำเข้ำเงื่อนไข ค่ำตัวเลขที่ป้อนเข้ำมำเท่ำกับ 0 { a = 0; // ให้ตัวแปร a เท่ำกับ 0 } if (x>0) // ถ้ำเข้ำเงื่อนไข ค่ำตัวเลขที่ป้อนเข้ำมำมำกว่ำ 0 { a = x-2; // คำนวรผลแล้วเก็บไว้ในตัวแปร a } return a; // รีเทรินค่ำ a กลับไปในฟังก์ชัน main ตรงบรรทัดเรียกใช้ฟังก์ชัน } ผลกำรรัน
  • 8.
    คำอธิบำยโปรแกรม #include<stdio.h> // Pre-processor intGet_Fxy( int x, int y ); // โปรโตไทป์ของฟังก์ชัน Get_Fxy int main() // ฟังก์ชันหลัก { int x,y,f; // ประกำศตัวแปร x และ y เพื่อเก็บค่ำที่รับมำจำกผู้ใช้ และ ตัวแปร f เพื่อเก็บค่ำผลลัพธ์จำกกำรคำนวณในฟังก์ชัน Get_Fxy printf("Enter x :"); // รับค่ำตัวเลขจำกผู้ใช้
  • 9.
    scanf("%d",&x); // เก็บค่ำที่รับมำในตัวแปรx printf("Enter y :"); // รับค่ำตัวเลขจำกผู้ใช้ scanf("%d",&y); // เก็บค่ำที่รับเข้ำมำในตัวแปร y f = Get_Fxy(x,y); // เรียกใช้ฟังก์ชัน Get_Fxy แล้วเก็บค่ำที่ถูกส่งกลีมำในตัวแปร f printf("f(x,y)=%d",f); // แสดงผลลัพธ์ออกทำงจอภำพ getch(); return 0; } int Get_Fxy( int x, int y ) // เข้ำฟังก์ชัน Get_Fxy { int a; // ประกำศตัวแปร a เพื่อเก็บผลลัพธ์จำกกำรคำนวณ if(x+y > 0) // เข้ำเงื่อนไข ถ้ำ ผลบวกของ ค่ำที่รับมำจำกผู้ใช้ 2ตัว มำกกว่ำ 0 { a = x+y; // ให้นำ2 ค่ำที่รับมำนั้นบวกกันเก็บในตัวแปร a } if(x+y ==0) // ถ้ำผลบวกของ ค่ำที่รับมำจำกผู้ใช้ 2ค่ำ เท่ำกับ 0 { a =0; // ให้a มีค่ำท่ำกับ 0 } if(x+y < 0) // ถ้ำผลบวกของ ค่ำที่รับมำจำกผู้ใช้ 2 ค่ำ น้อยกว่ำ 0 { a = -x+y; // ให้ –x( - ตัวเลขที่รับเข้ำมำตัวแรก) บวกด้วย ค่ำที่รับมำตัวที่ 2 เก็บค่ำผลลัพธ์ในตัวแปร a } return a; // รีเทรินค่ำ a กลับไปในฟังกัน main ตรงบรรทัดที่เรียกใช้ฟังก์ชัน }
  • 10.
  • 11.
    คำอธิบำยโปรแกรม #include<stdio.h> // Pre-processor #definePI 3.14159 // กำหนดค่ำ PI เท่ำกับ 3.14159 ทั้งโปรแกรม float cylinder(float d , float h); // โปรโตไทป์ของฟังก์ชัน cylinder int main() // ฟังก์ชันหลัก { float d,h,v; // ประกำศตัวแปร d เพื่อเก็บค่ำเส้นผ่ำนศูนย์กลำงที่รับมำจำกผู้ใช้ ตัวแปร h เพื่อเก็บค่ำควำมสูงที่รับมำจำกผู้ใช้ และตัวแปร v เพื่อเก็บค่ำจำกหำรคำนวณหำปริมำตร printf("Enter diameter :"); // รับค่ำเส้นผ่ำนศูนย์กลำงจำกผู้ใช้ scanf("%f",&d); // เก็บค่ำเส้นผ่ำนศูนย์กลำงไว้ในตัวแปร d printf("Enter height :"); // รับค่ำควำมสูงจำกผู้ใช้ scanf("%f",&h); // เก็บค่ำควำมสูงไว้ในตัวแปร h v = cylinder(d,h); // เรียกใช้ฟังก์ชัน cylinder printf("V =%.2f",v); // แสดงค่ำปริมำตรของทรงกระบอกออกทำงจอภำพ getch(); return 0; } float cylinder(float d , float h) // เข้ำฟังก์ชัน cylinder {
  • 12.
    float v; //ประกำศตัวแปร v เพื่อเก็บค่ำจำกหำรคำนวณหำปริมำตรของทรงกระบอก v = PI*((d/2)*(d/2))*h; // คำนวณหำปริมำตรของทรงกระบอก เก็บผลลัพธ์ในตัวแปร v return v; // รีเทรินค่ำตัวแปร v กลับไปในฟังก์ชันหลัก บรรทัดเรียกใช้ฟังก์ชัน } ผลกำรรัน
  • 13.
    กำรทดลองที่ 5 ฟังก์ชัน (Function) เสนอ อำจำรย์กฤตศิลป์ศิลำนนท์ จัดทำโดย นำยธงชัย บุตรชำติ(sec 01) รหัสประจำตัวนักศึกษำ 5835512017 รำยงำนนี้เป็นส่วนหนึ่งของวิชำ 242-101 Introduction to Computer Programming ภำคกำรศึกษำที่ 2 ปีกำรศึกษำ 2558 ภำควิชำวิศวกรรมคอมพิวเตอร์ คณะวิศวกรรมศำสตร์ มหำวิทยำลัยสงขลำนครินทร์ วิทยำเขตภูเก็ต