พี่ๆ ช่วยสอน ภาษา C# หน่อยครับ ในการคำนวนเกรดเฉลี่ยหน่อยครับ

อันนี้คือการบ้านนะครับ...
----------------------------------------------------------------------------
จงเขียนโปรแกรม (แบบ Object Oriented Programming)
รับค่าเกรด และ หน่วยกิต อย่างน้อย 3 วิชา แล้วให้คิดเกรดเฉลี่ย

ตัวอย่าง 

เกรดวิชาที่ 1 : B
หน่วยกิตวิชาที่ 1 : 3

เกรดวิชาที่ 2 : C
หน่วยกิตวิชาที่ 2 : 3

เกรดวิชาที่ 3 : A
หน่วยกิตวิชาที่ 3 : 3

เกรดเฉลี่ย = 3.00
----------------------------------------------------------------------------
โดยที่ Method Main ต้องมีตามนี้เท่านั้น

        static void Main(string[] args)
        {
            AVGrade1 g = new AVGrade1();
            g.Input();
            g.Input();
            g.Input();
            g.Show()  
            Console.ReadLine();
        }
--------------------------------------------------------------------------------------------------
ปัญหาคือ ผม ต้องการป้อนค่า เกรด เเละ หน่วยกิต 3 รอบ ตามจำนวนที่ผมเรียกใช้ method g.Input(); เเล้วเอา method g.Input(); 3 method มาคำนวน กันออกมาเป็นเกรดเฉลี่ยครับ พี่ๆ พอจะมีไอเดียในการเขียนไหมครับ ขอบคุณครับ
-------------------------------------โค้ดที่ผมเขียนครับ---------------------------------------
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace AVGrade1
{
    internal class AVGrade1
    {
        public string input_score = "";
        public double input_credit = 0.00;

        public double nValGrade = 0.00;
        public double nValCredit = 0.00;

        public void Input()
        {
            Console.Write("Enter Grade : ");
            input_score = Console.ReadLine();
            Console.Write("Enter Credit : ");
            double.TryParse(Console.ReadLine(), out input_credit);
        }
        public double getGrade()
        {
            switch (input_score)
            {
                case "A":
                case "a":
                    nValGrade = 4.00;
                    break;
                case "B+":
                case "b+":
                    nValGrade = 3.50;
                    break;
                case "B":
                case "b":
                    nValGrade = 3.00; 
                    break;
                case "C+":
                case "c+":
                    nValGrade = 2.50;
                    break;
                case "C":
                case "c":
                    nValGrade = 2.00;
                    break;
                case "D+":
                case "d+":
                    nValGrade = 1.50;
                    break;
                case "D":
                case "d":
                    nValGrade = 1.00;
                    break;
                case "F":
                case "f":
                    nValGrade = 0.00;
                    break;
            }
            return nValGrade;
        }

        public double getCredit()
        {
            switch (input_credit)
            {
                case 4.00:
                    nValCredit = 4.00;
                    break;
                case 3.50:
                    nValCredit = 3.50;
                    break;
                case 3.00:
                    nValCredit = 3.00;
                    break;
                case 2.50:
                    nValCredit = 2.50;
                    break;
                case 2.00:
                    nValCredit = 2.00;
                    break;
                case 1.50:
                    nValCredit = 1.50;
                    break;
                case 1.00:
                    nValCredit = 1.00;
                    break;
                case 0.00:
                    nValCredit = 0.00;
                    break;
            }
            return nValCredit;
        }

        public double resultAVGrade()
        {
            double result_AVGrade = (getGrade() * getCredit());
            result_AVGrade = result_AVGrade / getCredit();
            return result_AVGrade;
        }

        public void ShowGrade()
        {
            Console.WriteLine("You GPA = " + resultAVGrade().ToString());
        }
    }
}
--------------------------------------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace AVGrade1
{
    internal class Program
    {
        static void Main(string[] args)
        {
            AVGrade1 g = new AVGrade1();
            g.Input();       
            g.Input();
            g.Input();
            g.ShowGrade();
            Console.ReadLine();
        }
    }
}
แสดงความคิดเห็น
โปรดศึกษาและยอมรับนโยบายข้อมูลส่วนบุคคลก่อนเริ่มใช้งาน อ่านเพิ่มเติมได้ที่นี่