Реализовать класс "Экзамен" - C#

Узнай цену своей работы

Формулировка задачи:

1. Реализовать класс согласно условия по варианту. 2. Для каждого класса написать конструктор (по умолчанию и с параметром), 3. Добавить метод вывода данных на экран (в формате поле = значение). Работа с классом в методе main(): 1. Создать массив из минимум 5 объектов класса. 2. Объект с индексом 2 должен быть пустым. 3. Последний объект в массиве создается с помощью конструктора по умолчанию. Все остальные с помощью конструктора с параметром. 4. Вывести данные на экран. ЭКЗАМЕН: ФИО студента, дата, оценка, перечень вопросов.

Решение задачи: «Реализовать класс "Экзамен"»

textual
Листинг программы
using System;
using System.Collections.Generic;
 
namespace TestConsole
{
    /// <summary>
    /// Класс экзамен.
    /// </summary>
    class Exam
    {
        #region Fields
        /// <summary>
        /// ФИО студента.
        /// </summary>
        private string _fio;
        /// <summary>
        /// Дата экзамена.
        /// </summary>
        private DateTime _dateExam;
        /// <summary>
        /// Оценка.
        /// </summary>
        private int _appraisal;
        /// <summary>
        /// Перечень вопросов.
        /// </summary>
        private List<string> _listOfIssues;
        #endregion Fields
 
        #region Properties
        /// <summary>
        /// ФИО студента.
        /// </summary>
        public string FIO
        {
            get { return _fio; }
            set
            {
                if (_fio == value)
                    return;
                _fio = value;
            }
        }
        /// <summary>
        /// Дата экзамена.
        /// </summary>
        public DateTime DateExam
        {
            get { return _dateExam; }
            set
            {
                if (_dateExam == value)
                    return;
                _dateExam = value;
            }
        }
        /// <summary>
        /// Оценка.
        /// </summary>
        public int Appraisal
        {
            get { return _appraisal; }
            set
            {
                if (_appraisal == value)
                    return;
                _appraisal = value;
            }
        }
        /// <summary>
        /// Перечень вопросов.
        /// </summary>
        public List<string> ListOfIssues
        {
            get { return _listOfIssues; }
            set
            {
                if (_listOfIssues == value)
                    return;
                _listOfIssues = value;
            }
 
        }
        #endregion Properties
 
        #region Constructors
        /// <summary>
        /// Конструктор по умолчанию.
        /// </summary>
        public Exam()
        {
 
        }
        /// <summary>
        /// Конструктор с параметром.
        /// </summary>
        /// <param name="exam">Копируемый объект.</param>
        public Exam(Exam exam)
        {
            this._fio = exam._fio;
            this._dateExam = exam._dateExam;
            this._appraisal = exam._appraisal;
            this._listOfIssues = new List<string>(exam._listOfIssues);
 
        }
        #endregion Constructors
    }
 
    class Program
    {
        static void Main(string[] args)
        {
            Exam[] listExam = new Exam[5];
 
            listExam[0] = new Exam(new Exam()
            {
                FIO = "Иванов Иван Иванович",
                DateExam = new DateTime(2016, 12, 23),
                Appraisal = 5,
                ListOfIssues = new List<string>() { "Вопрос 1?", "Вопрос 2?" }
            });
 
            listExam[1] = new Exam(new Exam()
            {
                FIO = "Петров Петр Петрович",
                DateExam = new DateTime(2016, 12, 24),
                Appraisal = 5,
                ListOfIssues = new List<string>() { "Вопрос 3?", "Вопрос 4?" }
            });
 
            listExam[2] = new Exam();
 
            listExam[3] = new Exam(new Exam()
            {
                FIO = "Василий Васильевич Васильев",
                DateExam = new DateTime(2016, 12, 25),
                Appraisal = 5,
                ListOfIssues = new List<string>() { "Вопрос 5?", "Вопрос 6?" }
            });
 
            listExam[4] = new Exam();
            listExam[4].FIO = "Сидоров Сидор Сидорович";
            listExam[4].DateExam = new DateTime(2016, 12, 26);
            listExam[4].Appraisal = 3;
            listExam[4].ListOfIssues = new List<string>();
            listExam[4].ListOfIssues.Add("Вопрос 7?");
            listExam[4].ListOfIssues.Add("Вопрос 8?");
 
            _Show(listExam);
 
            Console.ReadKey();
        }
 
        #region Methods
        /// <summary>
        /// Выводит на экран список объектов типа Exam.
        /// </summary>
        /// <param name="listExam">Выводимый список объектов.</param>
        private static void _Show(Exam[] listExam)
        {
            for(int i = 0; i < listExam.Length; i++)
            {
                Console.WriteLine("Фио: " + listExam[i].FIO);
                Console.WriteLine("Дата проведения экзамена: " + 
                    listExam[i].DateExam.ToString("yyyy.MM.dd"));
 
                Console.WriteLine("Оценка: " + listExam[i].Appraisal);
                
                // Проверяем, проиниализирован список или нет
                if (listExam[i].ListOfIssues != null)
                {
                    for (int j = 0; j < listExam[i].ListOfIssues.Count; j++)
                    {
                        Console.WriteLine("Вопрос: " + listExam[i].ListOfIssues[j]);
                    }
                }
 
                Console.WriteLine();
            }
 
        }
        #endregion Methods
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4 из 5
Похожие ответы