Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Программа с Листами, Программа для отслеживания успеваемости  
:(
    Опции темы
VendeTTAA
Дата 20.8.2020, 13:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 20.8.2020

Репутация: нет
Всего: нет



Код
 internal class Program
    {
        public static void Main(string[] args)
        {
            Student alex = new Student("Alex");
            alex.Diary.AddMark(4);
            alex.Diary.AddMark(5);
            alex.Diary.AddMark(5);
            alex.Diary.AddMark(3);
            alex.Diary.AddMark(5);
 
            Console.WriteLine($"Max mark:\t{alex.Diary.MaxMark}");
            Console.WriteLine($"Min mark:\t{alex.Diary.MinMark}");
            Console.WriteLine($"Average mark:\t{alex.Diary.AverageMark}");
        }
    }
 
    public class Diary
    {
        private readonly IList<int> marks;
 
        public int this[int index]
        {
            get
            {
                if (index >= 0 && index < marks.Count)
                {
                    return marks[index];
                }
 
                throw new IndexOutOfRangeException();
            }
            // На случай ошибочно выставленной оценки
            set
            {
                if (index >= 0 && index < marks.Count)
                {
                    marks[index] = value;
                }
 
                throw new IndexOutOfRangeException();
            }
        }
 
        public Diary()
        {
            marks = new List<int>();
        }
 
        public void AddMark(int mark)
        {
            // Проверка корректности оценки (по 5-ти бальной системе)
            if (mark > 0 && mark <= 5)
            {
                marks.Add(mark);
                return;
            }
 
            throw new IndexOutOfRangeException(nameof(mark));
        }
 
        public int MaxMark => marks.Max();
 
        public int MinMark => marks.Min();
 
        public double AverageMark => marks.Average();
    }
 
    public class Student
    {
        public string Name { get; set; }
 
        public Diary Diary { get; private set; }
 
        public Student(string name)
        {
            if (string.IsNullOrWhiteSpace(name)) throw new ArgumentException(nameof(name));
 
            Name = name;
            Diary = new Diary();
        }
    }





Здравствуйте помогите пожалуйста написать программу для отслеживания успеваемости школьника используя листы . В ней
должны быть следующие возможности:

программа запрашивает имя ученика

программа добавляет оценки в дневник

программа определяет максимальную оценку

программа определяет минимальную оценку

программа определяет среднюю оценку

Например: Ты вводишь имя ученика и программа спрашивает если хочешь вести оценку ученика нажмите на 1,ты вводишь оценку далее возвращается в начало и снова спрашивает что ты хочешь выбрать


Часть кода написал не знаю правильно или так дальше нужно меню для работы но не как не получается

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.1123 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.