Cvičení – výpočet součtů hodin kreditu a bodů známek
V tomto cvičení vypočítáte a uložíte celkový počet hodin kreditu a celkový počet bodů známek získaných pro každý kurz. Tyto hodnoty se později použijí k výpočtu zásad skupiny. Vzhledem k tomu, že hodnoty hodin kreditu i známek jsou reprezentované jako celá čísla, uložíte součty pomocí datového typu Celé číslo.
Vytvoření proměnných pro uložení průměru
Vzpomeňte si, že k výpočtu GPA studenta potřebujete celkový počet hodin kreditu a celkový počet získaných bodů známek. Získané body známek pro kurz se rovnají součinu počtu hodin kreditu pro daný kurz a získané číselné hodnoty známek. Příklad:
Course Credit Credit Hours Grade Points
English 101 4 3 12
V této úloze vytvoříte proměnné pro uložení hodnot potřebných k výpočtu zásad skupiny. Vytvoříte proměnnou pro uložení součtu celkových hodin kreditu pro každý kurz a další proměnnou pro uložení součtu bodů známek, které student získal pro každý kurz.
V editoru .NET vyhledejte
Console.WriteLine()
příkazy, které se používají k zobrazení informací o kurzu.Vytvořte prázdný řádek kódu nad
Console.WriteLine()
příkazy.Na prázdném řádku kódu, který jste vytvořili, vytvořte proměnnou, která bude uchovávat celkový počet hodin kreditu, zadejte následující kód:
int totalCreditHours = 0;
Všimněte si, že součet je inicializován na
0
. Tato inicializace umožňuje zvýšit součet a zároveň udržovat kód uspořádaný.Pokud chcete zvýšit součet tak, aby představoval celkový počet hodin kreditu, zadejte následující kód:
totalCreditHours += course1Credit; totalCreditHours += course2Credit; totalCreditHours += course3Credit; totalCreditHours += course4Credit; totalCreditHours += course5Credit;
Vzpomeňte si, že
+=
operátor je zkratka pro přidání hodnoty do proměnné. Tyto řádky kódu mají stejný výsledek jako přidání každécourseCredit
proměnné na jeden řádek, například:totalCreditHours = course1Credit + course2Credit + course3Credit + course4Credit + course5Credit;
Pokud chcete vytvořit proměnnou, která bude uchovávat celkový počet bodů známek získaných pro každý kurz, zadejte následující kód:
int totalGradePoints = 0;
Pokud chcete zvýšit součet o body známky získané pro první kurz, zadejte následující kód:
totalGradePoints += course1Credit * course1Grade;
Vzpomeňte si, že body známek získané pro kurz se rovnají hodině kreditu kurzu vynásobené získanou známkou. V tomto řádku kódu použijete operátor složeného přiřazení k přidání součinu
course1Credit * course1Grade
dototalGradePoints
.Pokud chcete zvýšit součet o body známky získané po zbytek kurzů, zadejte následující kód:
totalGradePoints += course2Credit * course2Grade; totalGradePoints += course3Credit * course3Grade; totalGradePoints += course4Credit * course4Grade; totalGradePoints += course5Credit * course5Grade;
Než si kód prohlédnou, udělejte si chvilku.
Všimněte si, že kód, který jste napsali, rozdělí problém na spravovatelné části, místo abyste se pokusili vypočítat GPA v jedné velké operaci. Nejprve jste inicializovali a vypočítali hodnotu
totalCreditHours
. Pak jste inicializovali a vypočítali hodnotutotalGradePoints
. Potom tyto hodnoty použijete v konečném výpočtu.Teď, když kód počítá hodnotu ,
totalGradePoints
pojďme před pokračováním ověřit správnost výpočtů. Je důležité pravidelně zastavovat a kontrolovat vaši práci. Kontrola práce v rané fázi procesu vývoje usnadňuje vyhledání a opravu chyb v kódu.Pokud chcete zobrazit hodnoty
totalGradePoints
atotalCreditHours
zadejte následující kód:Console.WriteLine($"{totalGradePoints} {totalCreditHours}");
Tento
WriteLine()
příkaz později odeberete, protože není v konečném výstupu potřeba.
Kontrola práce
V této úloze spustíte kód a ověříte správnost výstupu.
Zkontrolujte, jestli je váš kód podobný následujícímu:
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}");
Pokud chcete spustit kód a zobrazit aktuální hodnoty
totalGradePoints
atotalCreditHours
vyberte Spustit.Ověřte, že výstup vaší aplikace odpovídá následujícímu výstupu:
57 17 English 101 4 3 Algebra 101 3 3 Biology 101 3 4 Computer Science I 3 4 Psychology 101 4 3
Pokud váš kód zobrazuje různé výsledky, budete muset zkontrolovat kód, abyste našli chybu a aktualizovali ji. Spusťte kód znovu, abyste zjistili, jestli jste problém vyřešili. Pokračujte v aktualizaci a spouštění kódu, dokud váš kód nevygeneruje očekávané výsledky.
Důležité
Nezapomeňte odstranit žádný kód, který jste zatím napsali. Tento kód vytvoříte v dalším cvičení.