Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Progi / Lesson 4 / 1 / 9

.txt
Скачиваний:
28
Добавлен:
28.03.2015
Размер:
4.12 Кб
Скачать
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
class Nomer
{
private double summa;
private double dolg;
public double Dolg
{
get
{
return dolg;
}
set
{
if (value >= 0 && value < 1001)
{
dolg = value;
}
}
}
private string fam; // фамилия
private string ul; // фамилия


public void Init(double s, double d, string s1, string s2)
{
fam = s1;
ul = s2;
summa = s;
dolg = d;
}

public void Display()
{
string s, s1, s2;
s2 = "Фамилия: " + fam + ". Адрес: " + ul + ".";
Console.WriteLine(s2);
s1 = Convert.ToString(summa);
s = "Оплата за месяц: " + s1 + " ";
s1 = Convert.ToString(dolg);
s = s + "Долг: " + s1;
Console.WriteLine(s);
}
public void Read()
{
string s = "";
s = Console.ReadLine();
string[] s1;
s1 = s.Split(new char[] { ' ', '\t' },
StringSplitOptions.RemoveEmptyEntries);
summa = Convert.ToInt32(s1[0]);
dolg = Convert.ToInt32(s1[1]);
fam = Convert.ToString(s1[2]);
ul = Convert.ToString(s1[3]);
}
public double Numbersec()
{
return summa + dolg; // число секунд
}

public Nomer Add(Nomer a, Nomer b) // сложение 2 Record
{
Nomer k;
k = new Nomer();
k.summa = a.summa + b.summa;
k.dolg = a.dolg + b.dolg;
k.fam = b.fam;
k.ul = a.ul;
return k; // результат тип Record
}

//......Сложение двух объектов
public static Nomer operator +(Nomer a, Nomer b) // Record+Record
{
Nomer c;
c = new Nomer();
c.summa = a.summa + b.summa;
c.dolg = a.dolg + b.dolg;

return c;
}

//......Объект + число (Задание)
public static Nomer operator +(Nomer a, int b) // Record+int
{
Nomer c;
c = new Nomer();
c.summa = a.summa;
c.dolg = a.dolg + b;

return c;
}

//.......Число+Объект
public static Nomer operator +(int a, Nomer b) // int+Record
{
Nomer c;
c = new Nomer();
c.summa = b.summa;
c.dolg = a + b.dolg;

return c;
}

public static Nomer operator ++(Nomer b) // ++ один префикс и постфикс!
{
++b.summa;
return b;
}


}
class Program
{
static void Main(string[] args)
{
Nomer a = new Nomer();
a.Dolg = 26;
a.Dolg = 72; // не присвоилось a.sec=26 прежнее значение
double k;
k = a.Dolg; // k=26
Nomer b = new Nomer();
b.Init(2, 10, " Троицкий", "Сизова"); // 2 min, 10 sec
b.Display();
k = a.Numbersec();
Console.WriteLine("{0}", k);
Console.WriteLine(" ");
Nomer c = new Nomer();
c.Read();
c.Display();
Nomer d = new Nomer();
d = a.Add(b, c);
d.Display();

Nomer C1 = new Nomer();
Nomer C2 = new Nomer();
Nomer C3 = new Nomer();


C1.Init(55, 2, " "," ");
C2.Init(55, 2, " ", " ");
C3.Init(55, 2, " ", " ");

C2 = C2 + 50;
C2 = C2++;
C2 = ++C2;

Console.ReadKey();
}
}

}
Соседние файлы в папке 1