Перегрузка простейших операций в простейших классах - C# (216658)

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

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

Реализовать класс из индивидуального задания. Каждый разрабатываемый класс должен содержать: скрытые данные перегрузку конструкторов свойства класса индексаторы (если необходимо) указанные перегруженные операции. При возникновении ошибок должны генерироваться исключения. В программе должна выполняться работоспособность всех разработанных элементов класса. Вот само задание: Класс “Комплексное число”. Перегрузить +, --

Решение задачи: «Перегрузка простейших операций в простейших классах»

textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace Console
{
    class Program
    {
        private class Kompleks
        {
            private Int32 a, b;
 
            public Kompleks() { }
            public Kompleks(params Int32[] list)
            {
                a = list[0];
                b = list[1];
            }
 
            public void Enter()
            {
                Console.WriteLine("Введите a");
                a = Convert.ToInt32(Console.ReadLine());
                Console.WriteLine("Введите b");
                b = Convert.ToInt32(Console.ReadLine());
 
                Console.WriteLine();
            }
 
            public void Print(String str1)
            {
                Console.WriteLine(str1);
                Console.WriteLine("a = " + a.ToString());
                Console.WriteLine("b = " + b.ToString());
 
                Console.WriteLine();
            }
 
            public static Kompleks operator --(Kompleks x)      //перегрузка унарного оператора --
            {
                Kompleks temp = new Kompleks();
                temp.a = --x.a;
                temp.b = --x.b;
 
 
                return temp;
            }
 
            public static Kompleks operator +(Kompleks x, Kompleks y)
            {
                Kompleks temp = new Kompleks();
                temp.a = x.a + y.a;
                temp.b = x.b + y.b;
 
 
                return temp;
            }
        }
 
        static void Main(string[] args)
        {
            try
            {
                Kompleks kom1 = new Kompleks(1, 2);
                kom1.Print("1ое комплексное число");
                kom1--;
                kom1.Print("Перегрузка операции --");
 
                Kompleks kom2 = new Kompleks();
                kom2.Enter();
                kom2.Print("2ое комплексное число");
 
                Kompleks kom3 = new Kompleks();
                kom3 = kom1 + kom2;
                kom3.Print("3ее комплексное число(его вещественные показатели равны сумме вещественных показателей 1-ого и 2-ого числа)");
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
 
            Console.ReadLine();
            Console.ReadKey();
        }
    }
}

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


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

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

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