เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

การ Return ค่าก่อนกำหนด

บางครั้งไม่จำเป็นต้องรันโค้ดทุกบรรทัดในฟังก์ชันเพื่อให้ได้คำตอบ ในกรณีนั้น สามารถออกจากฟังก์ชันได้ก่อนกำหนดโดยใช้ return()

หากต้องการตรวจสอบว่า x หารด้วย n ลงตัวหรือไม่ ให้ใช้ is_divisible_by(x, n) จากไลบรารี assertive

หรืออีกทางหนึ่ง ใช้ตัวดำเนินการโมดูโล %% โดย x %% n จะให้ค่าเศษจากการหาร x ด้วย n ดังนั้น x %% n == 0 จะบอกได้ว่า x หารด้วย n ลงตัวหรือเปล่า ลองรัน 1:10 %% 3 == 0 ใน console ดู

สำหรับแบบฝึกหัดนี้ ต้องรู้ว่าปีอธิกสุรทินคือทุกๆ ปีที่ 400 (เช่น ปี 2000) หรือทุกๆ ปีที่ 4 ที่ไม่ใช่ปีศตวรรษ (เช่น 1904 แต่ไม่ใช่ 1900 หรือ 1905)

โหลด assertive ไว้แล้ว

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Introduction to Writing Functions in R

ดูคอร์ส

คำแนะนำการฝึกหัด

  • เติมโค้ดในฟังก์ชัน is_leap_year() ให้สมบูรณ์ โดยตรวจสอบเงื่อนไขตามลำดับว่า year หารด้วย 400, 100 และ 4 ลงตัวหรือไม่ แล้ว return ค่าออกจากฟังก์ชันในแต่ละกรณี

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

is_leap_year <- function(year) {
  # If year is div. by 400 return TRUE
  if(___) {
    return(___)
  }
  # If year is div. by 100 return FALSE
  if(___) {
    ___
  }  
  # If year is div. by 4 return TRUE
  ___
  
  
  # Otherwise return FALSE
  ___
}
แก้ไขและรันโค้ด