연습 - 크레딧 시간 및 성적 포인트의 합계 계산
이 연습에서는 총 크레딧 시간 수와 각 과정에 대해 획득한 총 성적 포인트를 계산하고 저장합니다. 이러한 값은 나중에 GPA를 계산하는 데 사용됩니다. 크레딧 시간과 성적 값이 모두 정수로 표시되므로 정수 데이터 형식을 사용하여 합계를 저장합니다.
평균을 저장할 변수 만들기
학생의 GPA를 계산하려면 총 크레딧 시간 수와 획득한 총 성적 포인트 수가 필요합니다. 과정에 대해 획득한 성적 포인트는 해당 과정의 크레딧 시간 수와 획득한 숫자 성적 값의 곱과 같습니다. 예를 들면 다음과 같습니다.
Course Credit Credit Hours Grade Points
English 101 4 3 12
이 작업에서는 GPA를 계산하는 데 필요한 값을 저장하는 변수를 만듭니다. 각 과정의 총 크레딧 시간 합계를 저장하는 변수와 학생이 각 과정에서 획득한 성적 포인트의 합계를 저장하는 또 다른 변수를 만듭니다.
.NET 편집기에서 과정 정보를 표시하는 데 사용되는
Console.WriteLine()
문을 찾습니다.Console.WriteLine()
문 위에 빈 코드 줄을 만듭니다.만든 빈 코드 줄에서 총 크레딧 시간의 수를 저장할 변수를 만들려면 다음 코드를 입력합니다.
int totalCreditHours = 0;
합계가
0
으로 초기화됩니다. 이 초기화를 사용하면 코드를 체계적으로 유지하면서 합계를 증분할 수 있습니다.총 크레딧 시간 수를 나타내기 위해 합계를 증분하려면 다음 코드를 입력합니다.
totalCreditHours += course1Credit; totalCreditHours += course2Credit; totalCreditHours += course3Credit; totalCreditHours += course4Credit; totalCreditHours += course5Credit;
+=
연산자는 변수에 값을 추가하는 약식 표기법입니다. 이러한 코드 줄은 각courseCredit
변수를 한 줄에 추가하는 것과 동일한 결과를 갖습니다. 예를 들면 다음과 같습니다.totalCreditHours = course1Credit + course2Credit + course3Credit + course4Credit + course5Credit;
각 과정에 대해 획득한 총 성적 포인트 수를 저장하는 변수를 만들려면 다음 코드를 입력합니다.
int totalGradePoints = 0;
첫 번째 과정에 대해 획득한 성적 포인트로 합계를 증분하려면 다음 코드를 입력합니다.
totalGradePoints += course1Credit * course1Grade;
과정에 대해 획득한 성적 포인트는 과정 크레딧 시간에 획득한 성적을 곱한 것과 동일하다는 점을 기억하세요. 이 코드 줄에서는 복합 할당 연산자를 사용하여
course1Credit * course1Grade
의 곱을totalGradePoints
에 추가합니다.나머지 과정 동안 획득한 성적 포인트로 합계를 증분하려면 다음 코드를 입력합니다.
totalGradePoints += course2Credit * course2Grade; totalGradePoints += course3Credit * course3Grade; totalGradePoints += course4Credit * course4Grade; totalGradePoints += course5Credit * course5Grade;
이 코드를 검토하는 데 몇 분 정도가 걸립니다.
작성한 코드는 하나의 대규모 작업에서 GPA를 계산하는 대신 문제를 관리 가능한 부분으로 세분화합니다. 먼저
totalCreditHours
의 값을 초기화하고 계산했습니다. 그런 다음totalGradePoints
의 값을 초기화하고 계산했습니다. 그런 다음 최종 계산에서 이러한 값을 사용합니다.이제 코드가
totalGradePoints
에 대한 값을 계산하고 있으므로 계속하기 전에 계산이 올바른지 확인하겠습니다. 작업을 정기적으로 중지하고 검사 것이 중요합니다. 개발 프로세스 초기에 작업을 확인하면 코드에서 오류를 더 쉽게 찾아 수정할 수 있습니다.totalGradePoints
및totalCreditHours
의 값을 표시하려면 다음 코드를 입력하세요.Console.WriteLine($"{totalGradePoints} {totalCreditHours}");
이
WriteLine()
문은 최종 출력에 필요하지 않으므로 나중에 제거합니다.
작업 결과 확인
이 작업에서는 코드를 실행하고 출력이 올바른지 확인합니다.
코드가 다음과 유사한지 확인합니다.
string studentName = "Sophia Johnson"; string course1Name = "English 101"; string course2Name = "Algebra 101"; string course3Name = "Biology 101"; string course4Name = "Computer Science I"; string course5Name = "Psychology 101"; int course1Credit = 3; int course2Credit = 3; int course3Credit = 4; int course4Credit = 4; int course5Credit = 3; int gradeA = 4; int gradeB = 3; int course1Grade = gradeA; int course2Grade = gradeB; int course3Grade = gradeB; int course4Grade = gradeB; int course5Grade = gradeA; int totalCreditHours = 0; totalCreditHours += course1Credit; totalCreditHours += course2Credit; totalCreditHours += course3Credit; totalCreditHours += course4Credit; totalCreditHours += course5Credit; int totalGradePoints = 0; totalGradePoints += course1Credit * course1Grade; totalGradePoints += course2Credit * course2Grade; totalGradePoints += course3Credit * course3Grade; totalGradePoints += course4Credit * course4Grade; totalGradePoints += course5Credit * course5Grade; Console.WriteLine($"{totalGradePoints} {totalCreditHours}"); Console.WriteLine($"{course1Name} {course1Grade} {course1Credit}"); Console.WriteLine($"{course2Name} {course2Grade} {course2Credit}"); Console.WriteLine($"{course3Name} {course3Grade} {course3Credit}"); Console.WriteLine($"{course4Name} {course4Grade} {course4Credit}"); Console.WriteLine($"{course5Name} {course5Grade} {course5Credit}");
코드를 실행하고
totalGradePoints
및totalCreditHours
의 현재 값을 표시하려면 실행을 선택합니다.애플리케이션의 출력이 다음 출력과 일치하는지 확인합니다.
57 17 English 101 4 3 Algebra 101 3 3 Biology 101 3 4 Computer Science I 3 4 Psychology 101 4 3
코드가 다른 결과를 표시하는 경우 코드를 검토하여 오류를 찾고 업데이트해야 합니다. 코드를 다시 실행하여 문제가 해결되었는지 확인합니다. 코드가 예상 결과를 생성할 때까지 코드를 계속 업데이트하고 실행합니다.
중요
지금까지 작성한 코드를 삭제하지 마세요. 다음 연습에서 이 코드를 기반으로 빌드합니다.