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

Перегрузка операций

26.06.2019, 18:21. Показов 332. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Полный текст задания: Создать массив объектов класса «Автобус» с элементами данных «марка», «количество пассажиров», «максимальная скорость», «цена». Перегрузить следующие операции: ==,! =,,, +. Сравнивать в цикле предыдущий и текущий объекты и результаты показывать на экране.

Текст программы:

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
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace prac11
{
    class airbus
 {
        string marka;
        int pass;
        double v;
        public int cina;
        public void vvod(int a) {
            Console.WriteLine("Введите информацию про самолет {0}", a+1);
            Console.Write("Марка : ");
            marka = Console.ReadLine();
            Console.Write("Количество пассажиров : ");
            pass = Convert.ToInt32(Console.ReadLine());
            Console.Write("Скорость : ");
            v = Convert.ToDouble(Console.ReadLine());
            Console.Write("Цена : ");
            cina = Convert.ToInt32(Console.ReadLine());
        }
        public void vivod( int a) {
            Console.WriteLine("Инфо про самолет {0}", a+1);
            Console.WriteLine("Марка : {0}\nКоличество пассажиров : {1}\nСкорость : {2}\nЦена : {3}", marka, pass, v, cina);
        }
        public static bool operator == (airbus a, airbus b){
            if(a.pass == b.pass){
                return true;
            }
            else
            {
                return false;
            }
        }
        public static bool operator !=(airbus a, airbus b)
        {
            if (a.v != b.v)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
        public static bool operator <=(airbus a, airbus b)
        {
            if (a.cina <= b.cina)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
        public static bool operator >=(airbus a, airbus b)
        {
            if (a.cina >= b.cina)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
        public static airbus  operator +(airbus a, airbus b) {
            airbus c = new airbus();
            c.cina = a.cina + b.cina;
            return c;
        }
    }
    class Program
    {
        public void analyz(bool a, bool b, bool c, bool d)
        {
            if (a)
            {
                Console.WriteLine("Количество пассажиров совпадает");
            }
            else
            {
                Console.WriteLine("Количество пассажиров не совпадает");
            }
            if (b)
            {
                Console.WriteLine("Скорость отличается");
            }
            else
            {
                Console.WriteLine("Скорость совпадает");
            }
            if (c)
            {
                if (d)
                {
                    Console.WriteLine("Цены отличаются");
                }
                else
                {
                    Console.WriteLine("Цена текущего больше");
                }
            }
            else
            {
                Console.WriteLine("Цена текущего меньше");
            }
        }
        static void Main(string[] args)
        {
            Program q = new Program();
            int count;
            Console.WriteLine("Введите количество самолетов");
            count = Convert.ToInt32(Console.ReadLine());
            airbus[] X = new airbus[count];
            X[0] = new airbus();
            X[0].vvod(0);
            X[0].vivod(0);
            airbus c = X[0];
            for (int i = 1; i < X.Length; i++ )
            {
                X[i] = new airbus();
                X[i].vvod(i );
                X[i].vivod(i);
                Console.WriteLine();
                q.analyz(X[i-1]==X[i], X[i-1] != X[i], X[i-1] <= X[i], X[i-1] >= X[i]);
                Console.WriteLine();
                c = c + X[i];
            }
            Console.WriteLine("Суммарная цена равна {0,3:F2}", c.cina);
            Console.ReadKey();
        }
    }
}
Программа рабочая, вопросов никаких нет. Просто сливаю в инет свои лабы, может кому-то пригодится.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.06.2019, 18:21
Ответы с готовыми решениями:

Перегрузка операций + и ++
“Квадратное уравнение ax^2+bx+c”. Обязательно включить метод вычисления корней уравнения....

перегрузка операций
в чем причина? public static bool operator ==(Card card1, Card card2) { ...

Перегрузка операций
Добрый день! Есть задача: &quot;Добавьте в класс Distance перегруженную операцию, которая вычисляет...

Перегрузка операций
Здравствуйте. Не могли бы вы мне помочь изменить программу? Мне нужно из обычной программы сделать...

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

Перегрузка операций в С#
Абстрактный тип данных (АТД ) – множество с элементами типа char. Дополнительно перегружать...

Перегрузка методов и операций.
:wall: Задание:Создайте проект, в котором опишите класс для решения задачи Вашего варианта....

Перегрузка операций в классах
Каждый разрабатываемый класс должен содержать: -скрытые данные -перегрузку конструкторов...

Перегрузка операций отношения
Есть класс &quot;Stroka&quot;. для этого класса перегружены операции отношений. Код работает. НО когда я...

Перегрузка функций (методов) и операций
Добрый день. Мне тут помогли написать код... нужно пояснение полное в коде что тут и как...

Перегрузка операций: умножение векторов
Доброго времени суток! Делал задание на перегрузку операций в C#, сделал метод статическим, но...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru