Procedures & functions · กระบวนการและฟังก์ชัน
A function is a named block
- A function is a named block of code you can run again and again.
- Define it once with
def, then call it by name. - This avoids repeating yourself and keeps programs tidy.
ฟังก์ชันคือบล็อกที่มีชื่อ
- ฟังก์ชัน คือบล็อกโค้ดที่มีชื่อ ซึ่งคุณสามารถเรียกใช้งานได้ซ้ำๆ
- กำหนดไว้ครั้งเดียวด้วย
defแล้ว เรียกใช้ โดยชื่อ - สิ่งนี้ช่วยหลีกเลี่ยงการซ้ำซ้อนและทำให้โปรแกรมเป็นระเบียบ
def greet():
print("Hello!")
greet()
greet()
Parameters pass data in
- A parameter is a value the function receives.
- Put it in the brackets, and pass an argument when you call.
- Keep the number of parameters small so the function stays easy to read.
Parameters ส่งข้อมูลเข้า
- พารามิเตอร์ (parameter) คือค่าที่ฟังก์ชันรับเข้ามา
- วางไว้ในวงเล็บ และส่ง อาร์กิวเมนต์ (argument) เมื่อเรียกใช้
- รักษาจำนวนพารามิเตอร์ให้อยู่ในระดับน้อยเพื่อให้ฟังก์ชันอ่านง่าย
def greet(name):
print("Hello, " + name)
greet("Ada")
greet("Sam")
Functions return a value
- A function hands a value back with
return. - A block that only does something and returns nothing is a procedure.
ฟังก์ชันส่งคืนค่า
- ฟังก์ชัน ส่งค่ากลับด้วย
return - บล็อกที่ทำสิ่งใดสิ่งหนึ่งเพียงอย่างเดียวและไม่ส่งคืนอะไรคือ พรอสีเจอร์ (procedure)
def square(n):
return n * n
answer = square(6)
print(answer) # 36
Call and return · การเรียกใช้และการคืนค่า
Calling runs the function's body; return hands a value back. · การเรียกใช้จะรันโค้ดภายในฟังก์ชัน; return จะส่งค่ากลับออกมา
In the exam: PROCEDURE and FUNCTION
- Pseudocode separates a
PROCEDURE(no result) from aFUNCTION(returns a value).
ในการสอบ: PROCEDURE และ FUNCTION
- ปูโดโคดแยก
PROCEDURE(ไม่มีผลลัพธ์) ออกจากFUNCTION(ส่งคืนค่า)
FUNCTION Square(N : INTEGER) RETURNS INTEGER
RETURN N * N
ENDFUNCTION
Common mistakes
- A function returns a value with
return; a procedure just does a job. - Call it with
(). - Parameters receive the arguments in order.
ข้อผิดพลาดที่พบบ่อย
- ฟังก์ชันส่งคืนค่าด้วย
return; พรอสีเจอร์แค่ทำงานให้เสร็จสิ้น - เรียกใช้它以
(). - พารามิเตอร์จะรับอาร์กิวเมนต์ตามลำดับ
Now you try
- Write each function — it is then called for you in the check.
- Press Check answer to test your code.
ลองดูเลย
- เขียนฟังก์ชันแต่ละตัว — แล้วจะถูกเรียกใช้โดยอัตโนมัติในการตรวจสอบ
- กด Check answer เพื่อทดสอบโค้ดของคุณ
Write a function double(n) that returns n times 2. · เขียน ฟังก์ชัน double(n) ที่ ส่งกลับ ผลคูณของ n กับ 2
Click Run to see the output here. · คลิก Run เพื่อดูผลลัพธ์ที่นี่
Write a function is_even(n) that returns True when n is even, otherwise False. · เขียนฟังก์ชัน is_even(n) ที่ส่งกลับ True เมื่อ n เป็นเลขคู่ มิฉะนั้นส่งกลับ False
Click Run to see the output here. · คลิก Run เพื่อดูผลลัพธ์ที่นี่
Write a procedure print_stars(n) that prints a line of n star (*) characters, then call it with 4 so it prints ****. · เขียน พรอซีเดอร์ print_stars(n) ที่พิมพ์บรรทัดของดาว n ดวง (ตัวอักษร *) จากนั้นเรียกใช้ด้วย 4 เพื่อให้พิมพ์ ****
Click Run to see the output here. · คลิก Run เพื่อดูผลลัพธ์ที่นี่