แบบฝึกหัด การสร้างฟังก์ชัน (Python) พร้อมเฉลย

วันที่โพสต์

หมวดหมู่

ตัวอย่างแบบฝึกหัดเรื่องการสร้างฟังก์ชัน ในภาษา Python พร้อมเฉลย

1. ฟังก์ชันทักทาย

สร้างฟังก์ชันชื่อ greet() ที่รับชื่อเป็นอาร์กิวเมนต์ ฟังก์ชันนี้ควรพิมพ์ข้อความทักทาย เช่น “สวัสดีครับ/ค่ะ [ชื่อ]”

ตัวอย่างการใช้งาน:

greet("บอย")
greet("พิม")

เฉลย:

def greet(name):
  """ฟังก์ชันทักทาย

  Args:
      name: ชื่อบุคคล

  Returns:
      ไม่มี
  """
  print(f"สวัสดีครับ/ค่ะ {name}")

# ตัวอย่างการใช้งาน
greet("บอย")
greet("พิม")

2. ฟังก์ชันตรวจสอบความเป็นคู่

สร้างฟังก์ชันชื่อ is_even() ที่รับจำนวนเต็มเป็นอาร์กิวเมนต์ ฟังก์ชันนี้ควรส่งกลับ True หากจำนวนที่ป้อนเป็นเลขคู่ และส่งกลับ False หากจำนวนที่ป้อนเป็นเลขคี่

ตัวอย่างการใช้งาน:

is_even(8)
is_even(9)

เฉลย:

def is_even(num):
  """ตรวจสอบว่าจำนวนเป็นเลขคู่หรือไม่

  Args:
      num: จำนวนเต็ม

  Returns:
      True: จำนวนเป็นเลขคู่
      False: จำนวนเป็นเลขคี่
  """
  return num % 2 == 0

# ตัวอย่างการใช้งาน
is_even(8)
is_even(9)

3. ฟังก์ชันหาพื้นที่สี่เหลี่ยมจัตุรัส

สร้างฟังก์ชันชื่อ calculate_square_area() ที่รับความยาวด้านของสี่เหลี่ยมจัตุรัสเป็นอาร์กิวเมนต์ ฟังก์ชันนี้ควรส่งกลับพื้นที่ของสี่เหลี่ยมจัตุรัส

ตัวอย่างการใช้งาน:

calculate_square_area(5)
calculate_square_area(10)

เฉลย:

def calculate_square_area(side_length):
  """หาพื้นที่สี่เหลี่ยมจัตุรัส

  Args:
      side_length: ความยาวด้านของสี่เหลี่ยมจัตุรัส

  Returns:
      พื้นที่ของสี่เหลี่ยมจัตุรัส
  """
  return side_length * side_length

# ตัวอย่างการใช้งาน
calculate_square_area(5)
calculate_square_area(10)

4. ฟังก์ชันแปลงอุณหภูมิจากเซลเซียสเป็นฟาเรนไฮต์

สร้างฟังก์ชันชื่อ convert_celsius_to_fahrenheit() ที่รับอุณหภูมิในหน่วยเซลเซียสเป็นอาร์กิวเมนต์ ฟังก์ชันนี้ควรส่งกลับอุณหภูมิที่แปลงเป็นหน่วยฟาเรนไฮต์

ตัวอย่างการใช้งาน:

convert_celsius_to_fahrenheit(0)
convert_celsius_to_fahrenheit(20)

เฉลย:

def convert_celsius_to_fahrenheit(celsius):
  """แปลงอุณหภูมิจากเซลเซียสเป็นฟาเรนไฮต์

  Args:
      celsius: อุณหภูมิในหน่วยเซลเซียส

  Returns:
      อุณหภูมิในหน่วยฟาเรนไฮต์
  """
  return celsius * 9/5 + 32

# ตัวอย่างการใช้งาน
convert_celsius_to_fahrenheit(0)
convert_celsius_to_fahrenheit(20)

5. ฟังก์ชันหาตัวหารร่วมมากที่สุด

สร้างฟังก์ชันชื่อ find_gcd() ที่รับจำนวนเต็มสองตัวเป็นอาร์กิวเมนต์ ฟังก์ชันนี้ควรส่งกลับตัวหารร่วมมากที่สุดของสองจำนวนนั้น

ตัวอย่างการใช้งาน:

find_gcd(8, 12)
find_gcd(17, 5)

เฉลย:

def find_gcd(x, y):

  """
  ฟังก์ชันนี้หาตัวหารร่วมมากที่สุด (GCD) ของสองจำนวนเต็ม

  Args:
    x (int): จำนวนเต็มตัวแรก
    y (int): จำนวนเต็มตัวที่สอง

  Returns:
    int: ตัวหารร่วมมากที่สุดของ x และ y

  ตัวอย่าง:
    >>> find_gcd(8, 12)
    4
    >>> find_gcd(17, 5)
    1
  """

  while(y):
    x, y = y, x % y

  return x

# ตัวอย่างการใช้งาน
num1 = 8
num2 = 12
gcd = find_gcd(num1, num2)
print(f"ตัวหารร่วมมากที่สุดของ {num1} และ {num2} คือ {gcd}")