ฟังก์ชัน (Function).

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
โครงสร้างของภาษา C ในโปรแกรมที่พัฒนาด้วยภาษา C ทุกโปรแกรมจะมีโครงสร้างการพัฒนาไม่แตกต่างกัน ซึ่งประกอบด้วย 6 ส่วนหลัก ๆ โดยที่แต่ละส่วนจะมีหน้าที่แตกต่างกัน.
Advertisements

Introduction to C Introduction to C.
รายวิชา ง40102 หลักการแก้ปัญหาและการโปรแกรม
โครงสร้างภาษาซี เบื้องต้น
ข้อมูลชนิดสตริง String บทที่ 8
Department of Computer Business
Chapter 7 ขอบเขตของตัวแปร Variable Scope.
Control structure part II
Data Type part.III.
Data Structures and Algorithms
CS Assembly Language Programming
Structure Programming
Structure Programming
Computer Programming 1 LAB # 6 Function.
Week 6 ประกาศค่าตัวแปร.
โครงสร้างภาษาซี.
ขอความสั่ง Switch/case/break/default
ฟังก์ชั่น function.
ปฏิบัติการครั้งที่ 9 ฟังก์ชัน.
โปรแกรมย่อย : Pascal Procedure
Lecture no. 2: Overview of C Programming
ฟังก์ชัน (Function).
บทที่ 6 ตัวแปรอาร์เรย์ (Array of Variable)
C Programming Lecture no. 6: Function.
PROCEDURE <<โปรแกรมย่อย>>
ข้อมูลชนิดอาร์เรย์ ประเภทของข้อมูลที่ผ่านมาส่วนใหญ่ในตอนต้นๆจะเป็นข้อมูลเดี่ยว โดยตัวแปรหนึ่งตัวสามารถเก็บข้อมูลได้หนึ่งตัว ถ้าหากต้องการเก็บข้อมูลหลายตัวจะต้องประกาศตัวแปรหลายตัว.
บทที่ 1 หลักการเขียนโปรแกรมเชิงวัตถุ
ข้อมูลพื้นฐานและตัวดำเนินการ
หน่วยที่ 1 พื้นฐานภาษา C
หน่วยที่ 14 การเขียนโปรแกรมย่อย
บทที่ 7 รีเคอร์ซีฟ ระหว่างการออกแบบเขียนโปรแกรมแบบบนลงล่าง (Top-down Design) จะมีงานย่อย(Subtask) เพื่อแก้ปัญหาในแต่ละเรื่อง และผู้เขียนโปรแกรมต้องการใช้งานย่อยในลักษณะที่เรียกตัวเองขึ้นมาทำงานลักษณะของฟังก์ชั่นมีความรอบรัดสั้นกว่าแบบวนลูป.
ตัวแปรกับชนิดของข้อมูล
การสร้างฟังก์ชั่นเพื่อพัฒนาโปรแกรม Interactive C
ฟังก์ชัน ง30212 การเขียนโปรแกรมด้วยภาษาคอมพิวเตอร์ ศูนย์คอมพิวเตอร์
ง30212 พื้นฐานการเขียนโปรแกรม ศูนย์คอมพิวเตอร์ โรงเรียนปลวกแดงพิทยาคม
ง30212 การเขียนโปรแกรมด้วยภาษาคอมพิวเตอร์ โรงเรียนปลวกแดงพิทยาคม
อาจารย์นัณฑ์ศิตา ชูรัตน์
C language W.lilakiatsakun.
ประวัติความเป็นมาภาษาซี
Chapter 16 / Unit 77 : VB : Subprogram & Function Senior Cybernaut ศูนย์การศึกษาต่อเนื่องแห่ง จุฬาลงกรณ์มหาวิทยาลัย SL102017/04C /ISSUE2.
ตัวแปรกับชนิดของข้อมูล
Method of Class อ.สุพจน์ สิงหัษฐิต
Week 2 Variables.
Week 12 Engineering Problem 2
เสรี ชิโนดม ฟังก์ชัน เสรี ชิโนดม
การประมวลผลสายอักขระ
Week 12 Engineering Problem 2
Computer Programming for Engineers
Call by reference.
Recursion การเรียกซ้ำ
วิทยา กรระสี (วท.บ. วิทยาการคอมพิวเตอร์)
ฟังก์ชัน.
วิชา COSC2202 โครงสร้างข้อมูล (Data Structure)
หลักการเขียนโปรแกรม ( )
คำสั่งเกี่ยวกับการรับ และแสดงผล
Computer Programming การเขียนโปรแกรมคอมพิวเตอร์
Java Programming Java Structure and Datatype,Variable
การเขียนโปรแกรมคอมพิวเตอร์ 1
1. Global variable คือ ตัวแปรที่กำหนดหรือประกาศไว้นอกฟังก์ชันใด ๆ ทุกฟังก์ชัน สามารถนำตัวแปรประเภท Global ไปใช้ได้ทุกฟังก์ชัน.
บทที่ 2 โครงสร้างของภาษา C.
Function ธนวัฒน์ แซ่ เอียบ. What is a function ฟังก์ชันในภาษา C เป็นโปรแกรมที่ถูกออกแบบมาเพื่อ ใช้แก้ปัญหางานใดงานหนึ่งโดยเฉพาะ ฟังก์ชันจะเปลี่ยน input.
1 Functions กนกวรรธน์ เซี่ยงเจ็น สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา.
Function. วัตถุประสงค์การเรียนรู้ ให้รู้จักว่าฟังก์ชันคืออะไร ให้รู้จักว่าเราสร้างฟังก์ชันเพื่อจุดประสงค์ใด หรือ เพื่อประโยชน์ใด ให้รู้จักประเภทของฟังก์ชัน.
Programming assignments ชื่องาน (subject) : program เขียนด้วยภาษา C หรือ C++ มีทั้งหมด 7 ข้อ กำหนดส่ง 29 กรกฎาคม 2554.
บทที่ 5 โปรแกรมย่อย.
รูปแบบของการใช้คำสั่ง for for( ตัวแปร = ค่าเริ่มต้น ; นิพจน์ตรรกะ ; ค่าเพิ่มหรือค่าลด ) { statement(s); } ตัวอย่าง กรณีกำหนดการวนซ้ำเป็นค่าคงที่ For(n=1;n
หลักการโปรแกรม 1 Lecture 14: โปรแกรมย่อย ( การส่งพารามิเตอร์ แบบ pass by reference)
ระบบการควบคุมการเงินของหน่วยงานย่อย พ.ศ ของ
Chapter 7 ฟังก์ชัน Function.
โปรแกรมย่อย (Sub Program)
ใบสำเนางานนำเสนอ:

ฟังก์ชัน (Function)

Outline รูปแบบในการกำหนดฟังก์ชัน ตัวอย่างการกำหนดฟังก์ชันในภาษาซี รูปแบบในการเรียกใช้ฟังก์ชัน ขอบเขตของตัวแปร โปรโตไทป์ (prototype) การเวียนเกิด (Recursion)

รูปแบบในการกำหนดฟังก์ชัน [type] function-name ([formal parameters]) 1. statement 1 2. statement 2 … [return function-variable] n. end type : int , float , char , user-defined formal parameters : datatype parameter-name

ตัวอย่างการกำหนดฟังก์ชันในภาษาซี กรณีที่ 1 ไม่มีพารามิเตอร์ และไม่มีการส่งค่ากลับ void prn () { int i; for(i=1;i<=15;i++) printf(“*”); printf(“\n”); }

ตัวอย่างการกำหนดฟังก์ชันในภาษาซี กรณีที่ 2. ไม่มีพารามิเตอร์ แต่มีการส่งค่ากลับ int sum () { int i,n,s=0; scanf(“%d”,&n); for(i=1;i<=n;i++) s += i; return s; }

ตัวอย่างการกำหนดฟังก์ชันในภาษาซี กรณีที่ 3. มีพารามิเตอร์ และมีการส่งค่ากลับ int fac (int m) { int i,ans=1; for(i=1;i<=m;i++) ans *= i; return ans; }

ตัวอย่างการกำหนดฟังก์ชันในภาษาซี กรณีที่ 4 มีพารามิเตอร์ แต่ไม่มีการส่งค่ากลับ void func (int x , float y) { printf(“answer = %f\n”, y / (x * x)); }

รูปแบบในการเรียกใช้ฟังก์ชัน มีการส่งค่ากลับ ans  sum()  ไม่มีพารามิเตอร์ ans  fac(int m)  มีพารามิเตอร์ var  function-name ([arguments])

รูปแบบในการเรียกใช้ฟังก์ชัน ไม่มีการส่งค่ากลับ prn ()  ไม่มีพารามิเตอร์ func (int x , float y)  มีพารามิเตอร์ function-name ( [arguments] )

ตัวอย่างการกำหนดและการเรียกใช้ฟังก์ชัน float area (float a , float b) { return 1.0/2 * a * b; } void func (int x , float y) { printf(“answer = %f\n”, y / (x * x)); void main() { int a; float triangle, b; triangle = area(3.5,4.0); scanf(“%d %f”,&a,&b); func(a,b); การกำหนดฟังก์ชัน การเรียกใช้ฟังก์ชัน (มีการส่งค่ากลับ) การเรียกใช้ฟังก์ชัน (ไม่มีการส่งค่ากลับ)

ขอบเขตของตัวแปร Global Local Static Extern

ขอบเขตของตัวแปร: Global & Local int i , n; int sumi2 () { int j=0, i, n; …. } void func (int a , int b , int c) { int i, n; float j; …. void main() { int ans, j; ….. Global variables ทุกฟังก์ชันมองเห็นและสามารถเรียกใช้ได้ Local variables ใช้งานได้ภายในฟังก์ชันเท่านั้น ฟังก์ชันอื่น ๆ มองไม่เห็น ถูกประกาศไว้ในฟังก์ชันใด ก็ถูกเรียกใช้ได้เฉพาะในฟังก์ชันนั้น

ขอบเขตของตัวแปร: Static รูปแบบการประกาศตัวแปร: static data-definition; Ex. static int i; ถ้ากำหนดใช้ในฟังก์ชัน จะทำให้ค่าของตัวแปรยังคงถูกเก็บไว้หลังจากทำงานในฟังก์ชันเสร็จสิ้นและเมื่อเรียกใช้ฟังก์ชันอีกครั้ง ค่าดังกล่าวจะถูกนำมาใช้ต่อไปได้เลย

ขอบเขตของตัวแปร: Extern รูปแบบ extern data-definition; extern function-prototype; เป็นการเรียกใช้ตัวแปรหรือฟังก์ชันที่กำหนดไว้นอกโปรแกรม Ex. extern int c; extern int fac (int);

ตัวอย่างโปรแกรมใช้ตัวแปรแบบ extern #include<stdio.h> extern int c; extern int fac(int); void main() { b = fac(5); printf("5! = %d\n",b); } #include <stdio.h> int c; int fac(int m) { int i, f=1; for (i=1;i<=m;i++) f *= i; return f; }

โปรโตไทป์ (Prototype) Prototype declaration เป็นการประกาศรูปแบบฟังก์ชันที่มีใช้ในโปรแกรมซึ่งเขียนต่อจากส่วนโปรแกรมหลัก ทั้งนี้เพื่อให้ตัวแปลภาษารู้จักก่อนมีการเรียกใช้งานฟังก์ชันนั้น

ตัวอย่างการเขียนโปรโตไทป์ float area (float , float); void func (int , float); void main() { int a; float triangle, b; triangle = area(3.5,4.0); scanf(“%d %f”,&a,&b); func(a,b); } float area (float a , float b) { return 1.0/2 * a * b; void func (int x , float y) { printf(“answer = %f\n”, y / (x * x)); การเขียนโปรโตไทป์ เขียนฟังก์ชันไว้หลัง main จึงต้องมีการประกาศโปรโตไทป์

การเวียนเกิด (Recursion) คือการเรียกตัวเองซ้ำของฟังก์ชัน โดยต้องมีส่วนที่ทำการเรียกตัวฟังก์ชันเอง และจุดที่ทำให้จบการเรียกซ้ำตัวเอง เช่น n! (n factorial) 1! = 1 2! = 2 x 1 = 2 x 1! 3! = 3 x 2 x 1 = 3 x 2! … n! = n x (n-1) x (n-2) x … x 2 x 1 = n x (n-1)!

การเวียนเกิด (Recursion) Algorithm n factorial Input: a number of n Output: n! Read n n!  fac(n) Write n! fac(n) 1. if (n=1) then return 1 2. else return n * fac(n-1) ฟังก์ชัน fac() มีการเรียกใช้ฟังก์ชัน fac() (เรียกใช้ตัวมันเอง)

การเวียนเกิด (Recursion) Algorithm power n Input: ค่า n Output: Xn Read n power(n) 1. if (n=0) then return 1 2. else write x * power(n-1) ฟังก์ชัน power() มีการเรียกใช้ฟังก์ชัน power() (เรียกใช้ตัวมันเอง)

Class Exercise เขียนขั้นตอนวิธีด้วยรหัสลำลองเพื่อคำนวณหาค่าผลรวมของ โดยมีการเรียกใช้ฟังก์ชัน xn