03. Graduation pt.2
Моят проблем не се основава на това, че не мога да я реша. Напротив решил съм я. Проблема ми е в това, че не знам доколко ми е правилен и хубаво написан кода, защото поне за мен я реших по малко странен начин. Някой ако може да съкрати, поправи някой неща за да го разбера ще съм му благодарен!
Това е моето решение!
using System;
namespace While3
{
class While
{
static void Main()
{
string name = Console.ReadLine();
int num = 1;
double sum = 0;
while (num <= 12)
{
double grade = double.Parse(Console.ReadLine());
if (grade >= 4.00)
{
sum += grade;
num++;
if (num == 13)
{
double average = sum / 12;
Console.WriteLine($"{name} graduated. Average grade: {average:f2}");
}
}
if (grade < 4.00)
{
double nextGrade = double.Parse(Console.ReadLine());
sum += nextGrade;
num++;
if (num == 13)
{
double average = sum / 12;
Console.WriteLine($"{name} graduated. Average grade: {average:f2}");
}
else
{
double gradeex = num - 1;
Console.WriteLine($"{name} has been excluded at {gradeex} grade");
break;
}
}
}
}
}
}
Нещо малко по-кратко:
using System;
namespace _5._8Graduation_pt._2
{
class Program
{
static void Main(string[] args)
{
string name = Console.ReadLine();
int yearOfEducation = 0;
double total = 0;
while (yearOfEducation < 12)
{
double grade = double.Parse(Console.ReadLine());
yearOfEducation++;
total += grade;
if (grade < 4.00)
{
Console.WriteLine($"{name} has been excluded at {yearOfEducation} grade");
break;
}
}
if (yearOfEducation == 12)
{
total = total / 12;
Console.WriteLine($"{name} graduated. Average grade: {total:F2}");
}
}
}
}