Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 22.09.2013
Сообщений: 4
1

Задание С# (исключительные ситуации)

22.09.2013, 23:44. Показов 1281. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дан код к нему задание:
Модифицируйте решения задачи 2 предыдущей лабораторной работы таким образом, чтобы в случае
записи некорректных данных в любой свойства класса или вызова конструктора по
некорректными данными вызывалась исключительная ситуация с сообщением об ошибке.
Условиями некорректности данных являются:
- Запись в свойства Фамилии, Имя или Отчество значение, которое начинается с большой
буквы;
- Запись в свойства «Дата рождения» даты, которая не входит в диапазон 15-120 лет в
прошлом по отношению к нынешней даты.
Для обоих ситуаций создайте собственный класс исключительной ситуации, наследуемый от класса
System.Exception.
2. Совершите перехвата возможных исключений в коде (методе Main) с
выводом сообщения об ошибке на экран и продолжением выполнения программы.
3. Проиллюстрируйте вызов исключений присвоением некорректных значений свойствам в
коде (методе Main).
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplication1
{
    class All
    {
        private string _Familia;
        public string Familia
        {
            set { _Familia = value; }
            get { return _Familia; }
        }
        private string _Name;
        public string Name
        {
            set { _Name = value; }
            get { return _Name; }
        }
        private string _Otchestvo;
        public string Otchestvo
        {
            set { _Otchestvo = value; }
            get { return _Otchestvo; }
        }
        private DateTime _BirthDate;
        public DateTime BirthDate
        {
            set { _BirthDate = value; }
            get { return _BirthDate; }
        }
        public All(string F, string N, string O, DateTime B)
        {
            Familia = F;
            Name = N;
            Otchestvo = O;
            BirthDate = B;
        }
        public int GetAge()
        {
            return (int)(DateTime.Now.Subtract(BirthDate).Days / 365.25);
        }
        public string FullName
        {
            get { return (_Familia + " " + _Name + " " + _Otchestvo); }
        }
 
    }
    class Student : All
    {
        private string _Group;
        public string Group
        {
            set { _Group = value; }
            get { return _Group; }
        }
        public Student(string Familia, string Name, string Otchestvo, DateTime BirthDate, string g)
            : base(Familia, Name, Otchestvo, BirthDate)
        {
            Group = g;
        }
        private string _Otchestvo;
 
        public new string Otchestvo
        {
            set { _Otchestvo = value; }
            get { return _Otchestvo; }
        }
    }
    class Dekan : All
    {
        private string _Fakultet;
        public string Fakultet
        {
            set { _Fakultet = value; }
            get { return _Fakultet; }
        }
        public Dekan(string Familia, string Name, string Otchestvo, DateTime BirthDate, string g)
            : base(Familia, Name, Otchestvo, BirthDate)
        {
            Fakultet = g;
        }
    }
    class Teacher : All
    {
        private string _Predmet;
        public string Predmet
        {
            set { _Predmet = value; }
            get { return _Predmet; }
        }
        public Teacher(string Familia, string Name, string Otchestvo, DateTime BirthDate, string g)
            : base(Familia, Name, Otchestvo, BirthDate)
        {
            Predmet = g;
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            Student S1 = new Student("Новохацкая ", "Виктория ", "Викторовна ", new DateTime(1994, 5, 13), "ЭК-21");
            Student S2 = new Student("Вишневская", "Инна", "Сергеевна", new DateTime(1994, 12, 21), "МЭ-22");
            Student S3 = new Student("Иванова", "Ирина", "Валентиновна", new DateTime(1995, 12, 21), "ПР-31");
            Teacher T1 = new Teacher("Ключинская", "Людмила", "Владимировна", new DateTime(1987, 12, 21), "ПО математического анализа");
            Teacher T2 = new Teacher("Луняков", "Олег", "Владимирович", new DateTime(1976, 12, 21), "Политэкономия");
            Dekan D1 = new Dekan("Новак", "Сергей", "Николаевич", new DateTime(1966, 12, 21), "Банковские технологии");
            Console.WriteLine("Студенты:");
            Console.WriteLine("1) {0} {1} {2}\n Возраст: {3} лет\n Группа: {4}", S1.Familia, S1.Name, S1.Otchestvo, S1.GetAge(), S1.Group);
            Console.WriteLine("2) {0}\n Возраст: {1} лет\n Группа: {2} ", S2.FullName, S2.GetAge(), S2.Group);
            Console.WriteLine("3) {0}\n Возраст: {1} лет\n Группа: {2} ", S3.FullName, S3.GetAge(), S3.Group);
 
            Console.ReadKey();
        }
 
    }
}
Если у Вас есть какие-то предложение или улучшения, а лучше сам код, то пожалуйста =)))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.09.2013, 23:44
Ответы с готовыми решениями:

Исключительные ситуации
Помогите пожалуйста написать программу. Не понимаю как с помощью исключений выполнить данную...

Исключительные ситуации
private void button1_Click(object sender, EventArgs e) { int a; ...

Исключительные ситуации(не понятен один момент)
using System; class Arrays { static void Main(string args) { ...

Как универсально обрабатывать исключительные ситуации?
Добрый вечер. как универсально обрабатывать исключительные ситуации в C#? вот к примеру try...

4
Master of Orion
Эксперт .NET
6100 / 4956 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
23.09.2013, 00:05 2
В первом приближении как-то так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
    class All
    {
        public string Lastname{ get; set; }
 
        public string Name { get; set; }
 
        public string SecondName { get; set; }
        public DateTime BirthDate { get; set; }
 
        public All(string name, string lastname, string secondName, DateTime birthDate)
        {
            Name = name;
            Lastname = lastname;
            SecondName = secondName;
            BirthDate = birthDate;
        }
 
        public int GetAge()
        {
            return new DateTime(DateTime.Now.Ticks - BirthDate.Ticks).Year - 1;
        }
 
        public string FullName
        {
            get { return (Lastname + " " + Name + " " + SecondName); }
        }
 
    }
    class Student : All
    {
        public Student(string name, string lastname, string secondName, DateTime birthDate, string studentGroup) 
            : base(name, lastname, secondName, birthDate)
        {
            Group = studentGroup;
        }
 
        public string Group { get; set; }
    }
    class Dean : All //Декан
    {
        public Dean(string name, string lastname, string secondName, DateTime birthDate, string faculty) : base(name, lastname, secondName, birthDate)
        {
            Faculty = faculty;
        }
 
        public string Faculty { get; set; }
 
    }
    class Teacher : All
    {
        public Teacher(string name, string lastname, string secondName, DateTime birthDate, string discipline) : base(name, lastname, secondName, birthDate)
        {
            Discipline = discipline;
        }
 
        public string Discipline { get; set; }
    }
1
0 / 0 / 0
Регистрация: 22.09.2013
Сообщений: 4
23.09.2013, 00:18  [ТС] 3
Psilon, а что по поводу try, catch?
0
Master of Orion
Эксперт .NET
6100 / 4956 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
23.09.2013, 00:33 4
Middle27, а что с ними? Почитайте книжечку, это несложно 50 страниц за час легко прочитать, всего шилдта за выходные осилить можно.
0
tezaurismosis
23.09.2013, 18:12     Задание С# (исключительные ситуации)
  #5

Не по теме:

Цитата Сообщение от Psilon Посмотреть сообщение
50 страниц за час легко прочитать, всего шилдта за выходные осилить можно
976 / 50 = 19,52 ~ 20 часов за 2 дня = 10 часов день. Сильно, очень сильно 8-)

0
23.09.2013, 18:12
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.09.2013, 18:12
Помогаю со студенческими работами здесь

Исключительные ситуации
вот есть такая программа: 12. Треугольник задан величинами своих углов и радиусом описанной...

исключительные ситуации
Подскажите, как сделать переполнение в этой задаче: Создать класс для хранения обыкновенных...

Исключительные ситуации
Здрасте всем, у меня проблемка помогите зделать эту прогу как исключительные ситуации. Очень срочно...

Исключительные ситуации
Доброго времени суток. Возникла такая проблема. Никак не могу разобраться с исключительными...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
В чем отличие между INNER JOIN и OUTER JOIN
bytestream 22.01.2025
В современных базах данных информация часто распределена между множеством взаимосвязанных таблиц, что делает операции объединения JOIN неотъемлемой частью работы с SQL. Эти операции позволяют. . .
Как сделать первую букву заглавной в JavaScript
bytestream 22.01.2025
JavaScript предоставляет разработчикам множество инструментов для эффективной работы с текстовыми данными. Одной из часто встречающихся задач при обработке строк является преобразование первой буквы. . .
Что такое Big O нотация и алгоритмическая сложность
bytestream 22.01.2025
Введение в алгоритмическую сложность В мире разработки программного обеспечения эффективность алгоритмов играет crucial роль в создании качественных приложений. Алгоритмическая сложность. . .
Как решать конфликты слияния (merge) в Git
bytestream 22.01.2025
Конфликты слияния в системе контроля версий Git возникают в ситуациях, когда две или более ветки разработки содержат несовместимые изменения в одних и тех же участках кода. Эти конфликты представляют. . .
Как использовать регулярные выражения
bytestream 22.01.2025
Регулярные выражения представляют собой мощный инструмент для работы с текстовыми данными, который позволяет осуществлять поиск, проверку и манипуляцию строками на основе определенных шаблонов. Этот. . .
Как выйти из Vim
bytestream 22.01.2025
Vim (Vi IMproved) представляет собой один из самых влиятельных текстовых редакторов в истории компьютерной индустрии, эволюционировавший из своего предшественника Vi, созданного Биллом Джоем в 1976. . .
NoSQL базы данных: что это такое и какие существуют
bytestream 22.01.2025
В современную эпоху цифровой трансформации объемы данных растут экспоненциально, создавая новые вызовы для традиционных систем управления базами данных. NoSQL (Not Only SQL) представляет собой. . .
Обновление исследования от команды MCM (январь 2025 г.)
Programma_Boinc 22.01.2025
Обновление исследования от команды MCM (январь 2025 г. ) Мы продолжаем изучать молекулярные сигнатуры, связанные с раком легких, с текущим фокусом на GCM1, факторе транскрипции, участвующем в. . .
Как работать с Kafka в Go (Golang)
bytestream 22.01.2025
Apache Kafka представляет собой распределенную платформу потоковой передачи данных, которая произвела революцию в области обработки событий и интеграции микросервисов. Эта система, изначально. . .
Как использовать RabbitMQ в Go (Golang)
bytestream 22.01.2025
RabbitMQ представляет собой надежный и широко используемый брокер сообщений, который играет ключевую роль в построении современных распределенных систем и микросервисной архитектуры. В основе работы. . .
Как преобразовать список списков в простой список в Python
bytestream 22.01.2025
При работе с Python разработчики часто сталкиваются с необходимостью обработки сложных структур данных, среди которых особое место занимают вложенные списки. Эти структуры представляют собой списки,. . .
Что такое GUID / UUID и как их создать
bytestream 22.01.2025
В мире разработки программного обеспечения существует постоянная потребность в уникальной идентификации объектов, записей и ресурсов. Эта задача становится особенно актуальной в распределенных. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru