My GPA
แถวที่ใช้ในการคำนวณค่าต่าง ๆ ของแต่ละภาคการศึกษา จะใช้เครื่องหมายดอกจันทน์ละไว้ในคอลัมน์ รหัสวิชา, ชื่อวิชา, หน่วยกิต และตอนเรียน โดยจะมีรหัสประจำตัวนักศึกษา ปีการศึกษา และภาคการศึกษากำกับอยู่
การแสดงตัวอย่าง จะใช้ค่าในปีการศึกษา 2017 ภาคการศึกษาที่ 1 ในการคำนวณ
การคำนวณค่าเกรดและเกรดเฉลี่ย
การคำนวณเกรดเฉลี่ย จะมีค่าเท่ากับผลรวมของผลคุณระหว่างเกรดที่ได้ในแต่ละรายวิชากับน้ำหนักหน่วยกิต แล้วหารด้วยผลรวมของน้ำหนักหน่วยกิต ซึ่งก็คือการหาค่าเฉลี่ยเลขคณิตแบบถ่วงน้ำหนักนั่นเองการคำนวณค่าเกรด (grade)
ใช้สูตรดังนี้=AVERAGE.WEIGHTED(SWITCH(H22:H28, "A", 4, "B+", 3.5, "B", 3, "C+", 2.5, "C", 2, "D+", 1.5, "D", 1, "F", 0, "W", ""), D22:D28)
SWITCH จะเป็นการตรวจสอบค่าเป้าหมาย หากตรงกับเงื่อนไข จะส่งออกค่าตามเงื่อนไขที่ระบุ ในที่นี่ ให้ตรวจสอบค่าเกรดที่เป็นตัวอักษร ที่อยู่ในช่วง H22:H28 แล้วส่งออกค่าที่เป็นตัวเลขออกมา โดยจากตารางจะได้ค่าเป็น ["C", "C", D", "B", "F", "F", "A"] => [2, 2, 1, 3, 0, 0, 4]
AVERAGE.WEIGHTED เป็นการคำนวณค่าเฉลี่ยเลขคณิตแบบถ่วงน้ำหนัก โดยจะใช้ค่าที่ได้ในฟังก์ชัน SWITCH มาคำนวณกับค่าที่อยู่ในช่วง D22:D28 ซึ่งก็คือน้ำหนักหน่วยกิตนั่นเอง ในที่นี้กำหนดให้อยู่ในรูปทศนิยม 6 ตำแหน่ง
ดังนั้นจึงได้ผลลัพธ์เท่ากับ 1.578947 ในเซลล์ H21
การคำนวณค่าเกรดเฉลี่ย (GPA)
จะนำเกรดที่คำนวณได้มาตัดทศนิยมให้เหลือ 2 ตำแหน่ง โดยปัดเศษลง ในที่นี้ใช้สูตร=ROUNDDOWN(H21, 2)
ROUNDDOWN เป็นการส่งออกค่าเป้าหมายให้จำกัดอยู่ในรูปตำแหน่งทศนิยมที่ระบุ โดยปัดเศษลงทั้งหมด ในที่นี้ ให้อยู่ในรูปทศนิยมสองตำแหน่ง
ผลลัพธ์จึงเท่ากับ 1.57 ในเซลล์ I21
การคำนวณค่าหน่วยกิตที่ลง (r_weight)
ในที่นี้ใช้สูตร=SUM(FILTER(D22:D28, H22:H28 <> "W"))
FILTER เป็นการส่งออกค่าของแต่ละเซลล์ในแต่ละแถวที่เป็นไปตามเงื่อนไขที่อยู่ในเซลล์ที่ระบุ ในรูปของอาร์เรย์ ในที่นี้ จะส่งออกค่าในช่วง D22:D28 หากค่าในช่วง H22:H28 ไม่เท่ากับ "W" หากมีเซลล์ใดที่อยู่ในช่วงที่ระบุ ไม่เป็นไปตามเงื่อนไข ฟังก์ชันนี้จะไม่ส่งออกค่าในเซลล์นั้น ๆ ซึ่งในที่นี้ ไม่มีค่า "W" ในช่วง H22:H28 ดังนั้นจึงส่งออกค่าทุกค่าในช่วง D22:D28 => [3, 3, 3, 1, 3, 3, 3]
SUM เป็นฟังก์ชันหาผลรวมของค่าที่อยู่ในช่วงที่ระบุ ในที่นี้ จะนำค่าที่ได้จากฟังก์ชัน FILTER มาคำนวณ SUM([3, 3, 3, 1, 3, 3, 3])
ผลลัพธ์จึงเท่ากับ 19 ในเซลล์ J21
การคำนวณค่าหน่วยกิตที่ลงสะสม (cum_r_weight)
มีสูตรดังนี้=K12+J21
จะเห็นได้ว่าเป็นผลรวมของค่าหน่วยกิตที่ลงสะสมของภาคการศึกษาก่อนหน้า (เซลล์ K12) กับค่าหน่วยกิตที่ลงของภาคการศึกษาปัจจุบัน (เซลล์ J21)
ผลลัพธ์จึงเท่ากับ 54 ในเซลล์ K21
การคำนวณค่าหน่วยกิตที่ได้ (g_weight)
มีสูตรดังนี้=SUM(FILTER(D22:D28, H22:H28 <> "W", H22:H28 <> "F"))
สูตรข้างต้นจะมีความคล้ายคลึงกับสูตรที่ใช้ในการคำนวณค่าหน่วยกิตที่ลง แต่จะเพิ่มเงื่อนไขเข้าไปอีกเงื่อนไขหนึ่งว่า หากค่าในช่วง H22:H28 ไม่เท่ากับ "F" จะส่งออกค่าที่อยู่ในช่วง D22:D28 ออกมา จึงได้เป็น [3, 3, 3, 1, 3] แล้วนำไปหาผลรวม
ผลลัพธ์จึงเท่ากับ 13 ในเซลล์ L21
การคำนวณค่าหน่วยกิตที่ได้สะสม (cum_g_weight)
มีสูตรดังนี้=M12+L21
จะเห็นได้ว่าเป็นผลรวมของค่าหน่วยกิตที่ได้สะสมของภาคการศึกษาก่อนหน้า (เซลล์ M12) กับค่าหน่วยกิตที่ลงของภาคการศึกษาปัจจุบัน (เซลล์ L21)
ผลลัพธ์จึงเท่ากับ 48 ในเซลล์ M21
การคำนวณค่าระดับคะแนน (score)
มีสูตรดังนี้=H21*J21
จะเห็นได้ว่าเป็นผลคูณระหว่างเกรด (เซลล์ H21) และหน่วยกิตที่ลง (เซลล์ J21) ของภาคการศึกษาปัจจุบัน โดยการคำนวณดังกล่าวจะต้องอยู่ในรูปทศนิยมหนึ่งตำแหน่ง
ผลลัพธ์จึงเท่ากับ 30.0 ในเซลล์ N21
การคำนวณค่าระดับคะแนนสะสม (cum_score)
มีสูตรดังนี้=O12+N21
การคำนวณค่าระดับคะแนนสะสม จะมีค่าเท่ากับ ผลรวมของค่าระดับคะแนนสะสมของภาคการศึกษาก่อนหน้า (เซลล์ O12) กับ ค่าระดับคะแนนของภาคการศึกษาปัจจุบัน (เซลล์ N21)
ผลลัพธ์จึงเท่ากับ 134.5 ในเซลล์ O21
การคำนวณค่าเกรดเฉลี่ยสะสม (GPAX)
มีสูตรดังนี้=ROUNDDOWN(AVERAGE.WEIGHTED({H2, H12, H21}, {J2, J12, J21}), 2)
การคำนวณข้างต้นจะเป็นการคำนวณค่าเฉลี่ยเลขคณิตแบบถ่วงน้ำหนักระหว่างเกรดของภาคการศึกษาปัจจุบันลงไปถึงภาคการศึกษาแรกในอาร์เรย์ [H2, H12, H21] และค่าหน่วยกิตที่ลงของภาคการศึกษาปัจจุบันลงไปถึงภาคการศึกษาแรกในอาร์เรย์ [J2, J12, J21] แล้วตัดทศนิยมให้เหลือสองตำแหน่งแบบปัดเศษลง
ผลลัพธ์จึงเท่ากับ 2.49 ในเซลล์ P21
ผลลัพธ์
https://docs.google.com/spreadsheets/d/1-LtO-vvVxMGBK-ZNn6x_Gz3wZhqo-7bwptS_JBlu1hg/edit?usp=sharingสิ่งที่ได้รับ
- ได้ฝึกใช้งานฟังก์ชันต่าง ๆ
- ได้ฝึกการเก็บและคำนวณข้อมูล
No comments:
Post a Comment