На языке c# много определить класс person, который имеет · закрытое поле типа string, в котором хранится имя; · закрытое поле типа string, в котором хранится фамилия; · закрытое поле типа system.datetime для даты рождения. в классе person определить конструкторы: · конструктор c тремя параметрами типа string, string, datetime для инициализации всех полей класса; · конструктор без параметров, инициализирующий все поля класса некоторыми значениями по умолчанию. в классе person определить свойства c get и set: · свойство типа string для доступа к полю с именем; · свойство типа string для доступа к полю с фамилией; · свойство типа datetime для доступа к полю с датой рождения; · свойство типа int c get и set для получения информации(get) и изменения (set) года рождения в закрытом поле типа datetime, в котором хранится дата рождения. в классе person определить · перегруженную(override) версию виртуального метода string tostring() для формирования строки со значениями всех полей класса; · виртуальный метод string который возвращает строку, содержащую только имя и фамилию. определить тип education - перечисление(enum) со значениями specialist, вachelor, secondeducation. определить класс exam, который имеет три открытых автореализуемых свойства, доступных для чтения и записи: · свойство типа string, в котором хранится название предмета; · свойство типа int, в котором хранится оценка; · свойство типа system.datetime для даты экзамена. в классе exam определить: · конструктор с параметрами типа string, int и datetime для инициализации всех свойств класса; · конструктор без параметров, инициализирующий все свойства класса некоторыми значениями по умолчанию; · перегруженную(override) версию виртуального метода string tostring() для формирования строки со значениями всех свойств класса. определить класс student, который имеет · закрытое поле типа person, в котором хранятся данные студента; · закрытое поле типа education для информации о форме обучения; · закрытое поле типа int для номера группы; · закрытое поле типа exam [] для информации об экзаменах, которые сдал студент. в классе student определить конструкторы: · конструктор c параметрами типа person, education, int для инициализации соответствующих полей класса; · конструктор без параметров, инициализирующий поля класса значениями по умолчанию. в классе student определить свойства c get и set: · свойство типа person для доступа к полю с данными студента; · свойство типа education для доступа к полю с формой обучения; · свойство типа int для доступа к полю с номером группы; · свойство типа exam [] для доступа к полю со списком экзаменов. в классе student определить · свойство типа double ( только с методом get), в котором вычисляется средний как среднее значение оценок в списке сданных экзаменов; · индексатор булевского типа (только с методом get) с одним параметром типа education; значение индексатора равно true, если значение поля с формой обучения студента совпадает со значением индекса, и false в противном случае; · метод void addexams ( params exam [] ) для добавления элементов в список экзаменов; · перегруженную версию виртуального метода string tostring() для формирования строки со значениями всех полей класса, включая список экзаменов; · виртуальный метод string который формирует строку со значениями всех полей класса без списка экзаменов, но со значением среднего . в методе main() 5. создать один объект типа student, преобразовать данные в текстовый вид с метода toshortstring() и вывести данные. 6. вывести значения индексатора для значений индекса education.specialist, education.bachelor и education.secondeducation. 7. присвоить значения всем определенным в типе student свойствам, преобразовать данные в текстовый вид с метода tostring() и вывести данные. 8. c метода addexams( params exam[] ) добавить элементы в список экзаменов и вывести данные объекта student, используя метод
289
294
Ответы на вопрос:
Using system; namespace nonamespace.task020 { static class program { //в методе main() //7. присвоить значения всем определенным в типе student свойствам, преобразовать данные в текстовый вид с метода tostring() и вывести данные. //8. c метода addexams(params exam[] ) добавить элементы в список экзаменов и вывести данные объекта student, используя метод public static void main() { //5. создать один объект типа student, преобразовать данные в текстовый вид с метода toshortstring() и вывести данные. var s = new student( new person("орк", "рыжий", new datetime(2000, 2, education.secondeducation, 21 ); console.writeline(s.; console.writeline(""); //6. вывести значения индексатора для значений индекса education.specialist, education.bachelor и education.secondeducation. foreach (education element in enum.getvalues(typeof( console.writeline($"{element} = {s[element]}"); console.writeline(""); console.writeline(s); console.writeline(""); s.addexams( new exam("плевание в потолок", 2, new datetime(2005, 2, new exam("поедание конфет", 3, new datetime(2005, 2, new exam("разбивание черепа врага", 10, new datetime(2005, 2, new exam("сквернословие", 12, new datetime(2005, 2, new exam("", 3, new datetime(2005, 2, ; console.writeline(s); console.writeline(""); console.readline(); } } public class person { public string name { get; set; } // · закрытое поле типа string, в котором хранится имя; использовано autoproperty public string surname { get; set; } // · закрытое поле типа string, в котором хранится фамилия; использовано autoproperty public datetime birthday { get; set; } // · закрытое поле типа system.datetime для даты рождения.использовано autoproperty public int birthyear // · свойство типа int c get и set для получения информации(get) и изменения(set) года рождения в закрытом поле типа datetime, в котором хранится дата рождения. { get => this.birthday.year; set => this.birthday = new datetime(value, this.birthday.month, this.birthday.day); } public person(string name, string surname, datetime birthday) // · конструктор c тремя параметрами типа string, string, datetime для инициализации всех полей класса; { this.name = name; this.surname = surname; this.birthday = birthday; } public person() // · конструктор без параметров, инициализирующий все поля класса некоторыми значениями по умолчанию. { this.name = "вася"; this.surname = "пупкин"; this.birthday = new datetime(2000, 1, 1); } // · перегруженную(override) версию виртуального метода string tostring() для формирования строки со значениями всех полей класса; public override string tostring() => $"{this.name} {this.surname} [{this.birthday: dd.mm.yy}]"; //· виртуальный метод string который возвращает строку, содержащую только имя и фамилию. public virtual string toshortstring() => $"{this.name} {this.surname}"; } public enum education //определить тип education - перечисление(enum) со значениями specialist, вachelor, secondeducation. { specialist, вachelor, secondeducation } public class exam //определить класс exam, который имеет три открытых автореализуемых свойства, доступных для чтения и записи: { public string subject { get; set; } //· свойство типа string, в котором хранится название предмета; public int mark { get; set; } //· свойство типа int, в котором хранится оценка; public datetime date { get; set; } //· свойство типа system.datetime для даты экзамена. public exam(string subject, int mark, datetime date) //· конструктор с параметрами типа string, int и datetime для инициализации всех свойств класса; { this.subject = subject; this.mark = mark; this.date = date; } public exam() //· конструктор без параметров, инициализирующий все свойства класса некоторыми значениями по умолчанию; { this.date = new datetime(2000, 1, 1); } //· перегруженную(override) версию виртуального метода string tostring() для формирования строки со значениями всех свойств класса. public override string tostring() => $"{this.subject} [{this.date: dd.mm.yy}] = {this.mark} "; } }
Большой овал- это животные, в нем маленький овал- животные, еще один маленький овал- дикие животные- они входят в понятие большой овал- листья деревьев. в нем маленькие овалы- дубовые листья, березовые листья и т.д.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
LOKI4620.10.2022 16:32
-
matv24.05.2020 16:15
-
Бегемот50530.09.2021 15:12
-
Sveto4ka34210.01.2020 04:41
-
Vladislav110824.08.2020 09:38
-
Nadezhda13618.06.2023 13:30
-
hamaturov18.08.2021 03:42
-
arina04030412.12.2020 22:20
-
sadovskaya0209.03.2023 07:48
-
Brain111t21.08.2021 10:33
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.