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

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

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

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

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

textual
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3.  
  4. namespace TestConsole
  5. {
  6.     /// <summary>
  7.     /// Класс экзамен.
  8.     /// </summary>
  9.     class Exam
  10.     {
  11.         #region Fields
  12.         /// <summary>
  13.         /// ФИО студента.
  14.         /// </summary>
  15.         private string _fio;
  16.         /// <summary>
  17.         /// Дата экзамена.
  18.         /// </summary>
  19.         private DateTime _dateExam;
  20.         /// <summary>
  21.         /// Оценка.
  22.         /// </summary>
  23.         private int _appraisal;
  24.         /// <summary>
  25.         /// Перечень вопросов.
  26.         /// </summary>
  27.         private List<string> _listOfIssues;
  28.         #endregion Fields
  29.  
  30.         #region Properties
  31.         /// <summary>
  32.         /// ФИО студента.
  33.         /// </summary>
  34.         public string FIO
  35.         {
  36.             get { return _fio; }
  37.             set
  38.             {
  39.                 if (_fio == value)
  40.                     return;
  41.                 _fio = value;
  42.             }
  43.         }
  44.         /// <summary>
  45.         /// Дата экзамена.
  46.         /// </summary>
  47.         public DateTime DateExam
  48.         {
  49.             get { return _dateExam; }
  50.             set
  51.             {
  52.                 if (_dateExam == value)
  53.                     return;
  54.                 _dateExam = value;
  55.             }
  56.         }
  57.         /// <summary>
  58.         /// Оценка.
  59.         /// </summary>
  60.         public int Appraisal
  61.         {
  62.             get { return _appraisal; }
  63.             set
  64.             {
  65.                 if (_appraisal == value)
  66.                     return;
  67.                 _appraisal = value;
  68.             }
  69.         }
  70.         /// <summary>
  71.         /// Перечень вопросов.
  72.         /// </summary>
  73.         public List<string> ListOfIssues
  74.         {
  75.             get { return _listOfIssues; }
  76.             set
  77.             {
  78.                 if (_listOfIssues == value)
  79.                     return;
  80.                 _listOfIssues = value;
  81.             }
  82.  
  83.         }
  84.         #endregion Properties
  85.  
  86.         #region Constructors
  87.         /// <summary>
  88.         /// Конструктор по умолчанию.
  89.         /// </summary>
  90.         public Exam()
  91.         {
  92.  
  93.         }
  94.         /// <summary>
  95.         /// Конструктор с параметром.
  96.         /// </summary>
  97.         /// <param name="exam">Копируемый объект.</param>
  98.         public Exam(Exam exam)
  99.         {
  100.             this._fio = exam._fio;
  101.             this._dateExam = exam._dateExam;
  102.             this._appraisal = exam._appraisal;
  103.             this._listOfIssues = new List<string>(exam._listOfIssues);
  104.  
  105.         }
  106.         #endregion Constructors
  107.     }
  108.  
  109.     class Program
  110.     {
  111.         static void Main(string[] args)
  112.         {
  113.             Exam[] listExam = new Exam[5];
  114.  
  115.             listExam[0] = new Exam(new Exam()
  116.             {
  117.                 FIO = "Иванов Иван Иванович",
  118.                 DateExam = new DateTime(2016, 12, 23),
  119.                 Appraisal = 5,
  120.                 ListOfIssues = new List<string>() { "Вопрос 1?", "Вопрос 2?" }
  121.             });
  122.  
  123.             listExam[1] = new Exam(new Exam()
  124.             {
  125.                 FIO = "Петров Петр Петрович",
  126.                 DateExam = new DateTime(2016, 12, 24),
  127.                 Appraisal = 5,
  128.                 ListOfIssues = new List<string>() { "Вопрос 3?", "Вопрос 4?" }
  129.             });
  130.  
  131.             listExam[2] = new Exam();
  132.  
  133.             listExam[3] = new Exam(new Exam()
  134.             {
  135.                 FIO = "Василий Васильевич Васильев",
  136.                 DateExam = new DateTime(2016, 12, 25),
  137.                 Appraisal = 5,
  138.                 ListOfIssues = new List<string>() { "Вопрос 5?", "Вопрос 6?" }
  139.             });
  140.  
  141.             listExam[4] = new Exam();
  142.             listExam[4].FIO = "Сидоров Сидор Сидорович";
  143.             listExam[4].DateExam = new DateTime(2016, 12, 26);
  144.             listExam[4].Appraisal = 3;
  145.             listExam[4].ListOfIssues = new List<string>();
  146.             listExam[4].ListOfIssues.Add("Вопрос 7?");
  147.             listExam[4].ListOfIssues.Add("Вопрос 8?");
  148.  
  149.             _Show(listExam);
  150.  
  151.             Console.ReadKey();
  152.         }
  153.  
  154.         #region Methods
  155.         /// <summary>
  156.         /// Выводит на экран список объектов типа Exam.
  157.         /// </summary>
  158.         /// <param name="listExam">Выводимый список объектов.</param>
  159.         private static void _Show(Exam[] listExam)
  160.         {
  161.             for(int i = 0; i < listExam.Length; i++)
  162.             {
  163.                 Console.WriteLine("Фио: " + listExam[i].FIO);
  164.                 Console.WriteLine("Дата проведения экзамена: " +
  165.                     listExam[i].DateExam.ToString("yyyy.MM.dd"));
  166.  
  167.                 Console.WriteLine("Оценка: " + listExam[i].Appraisal);
  168.                
  169.                 // Проверяем, проиниализирован список или нет
  170.                 if (listExam[i].ListOfIssues != null)
  171.                 {
  172.                     for (int j = 0; j < listExam[i].ListOfIssues.Count; j++)
  173.                     {
  174.                         Console.WriteLine("Вопрос: " + listExam[i].ListOfIssues[j]);
  175.                     }
  176.                 }
  177.  
  178.                 Console.WriteLine();
  179.             }
  180.  
  181.         }
  182.         #endregion Methods
  183.     }
  184. }

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


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

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

5   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы