using System;
using System.Collections .Generic ;
using System.Linq ;
using System.Text ;
using System.Threading .Tasks ;
namespace ConsoleApplication1
{
class ResidenceType
{
static void Main( string[ ] args)
{
Residence[ ] houses = new Residence[ ]
{
new Residence( 5 , 5 , 10 , 125000000 , "Особняк" , 1 , 1 )
} ;
foreach ( Residence house in houses)
Console.WriteLine ( house.ToString ( ) ) ;
Console.ReadKey ( ) ;
}
}
class Residence
{
public int porchCount;
public int floorCount;
private int roomsOnFloor;
private double meterCost;
public string type;
public int garage;
public int garden;
public int Porchs
{
get { return porchCount; }
set { porchCount = value; }
}
public int Floors
{
get { return floorCount; }
set { floorCount = value; }
}
public int RoomsOnFloor
{
get { return roomsOnFloor; }
set { roomsOnFloor = value; }
}
public double Cost
{
get { return meterCost; }
set { meterCost = value; }
}
public string Type
{
get { return type; }
set { type = value; }
}
public int Garage
{
get { return garage; }
set { garage = value; }
}
public int Garden
{
get { return garden; }
set { garden = value; }
}
public Residence( )
{
}
public Residence( int porchCount, int floorCount, int roomsOnFloor, double cost, string type, int garage, int garden)
{
this.porchCount = porchCount;
this.floorCount = floorCount;
this.roomsOnFloor = roomsOnFloor;
this.meterCost = cost;
this.type = type;
this.garage = garage;
this.garden = garden;
}
public int GetRoomsCountInPorch( )
{
return roomsOnFloor * floorCount;
}
public int GetRoomsCountInHouse( )
{
return GetRoomsCountInPorch( ) * porchCount;
}
public double HouseCost( )
{
return ( double ) GetRoomsCountInHouse( ) * Cost;
}
public double TheCostOfMaintainingTheGarden( )
{
return ( double ) Garden;
}
public override string ToString( )
{
return string.Format ( "Количество этажей: {0} \n Количество подъездов: {1} \n Количество комнат: {2} \n Жилье куплено за: {3} \n Тип жилья: {4} \n Гараж: {5} \n Сад: {6} \n Стоимость жилья: {7} \n Затраты на содержание сада: {8} " , Floors, Porchs, RoomsOnFloor, Cost, Type, Garage, Garden, HouseCost( ) , TheCostOfMaintainingTheGarden( ) ) ;
}
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLkxpbnE7CnVzaW5nIFN5c3RlbS5UZXh0Owp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwoKbmFtZXNwYWNlIENvbnNvbGVBcHBsaWNhdGlvbjEKewogICAgY2xhc3MgUmVzaWRlbmNlVHlwZQogICAgewogICAgICAgIHN0YXRpYyB2b2lkIE1haW4oc3RyaW5nW10gYXJncykKICAgICAgICB7CiAgICAgICAgICAgIFJlc2lkZW5jZVtdIGhvdXNlcyA9IG5ldyBSZXNpZGVuY2VbXSAKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgbmV3IFJlc2lkZW5jZSg1LCA1LCAxMCwgMTI1MDAwMDAwLCAi0J7RgdC+0LHQvdGP0LoiLCAxLCAxKQogICAgICAgICAgICB9OwogCiAgICAgICAgICAgIGZvcmVhY2ggKFJlc2lkZW5jZSBob3VzZSBpbiBob3VzZXMpCiAgICAgICAgICAgICAgICBDb25zb2xlLldyaXRlTGluZShob3VzZS5Ub1N0cmluZygpKTsKICAgICAgICAgICAgQ29uc29sZS5SZWFkS2V5KCk7CiAgICAgICAgfQogICAgfQogCiAgICBjbGFzcyBSZXNpZGVuY2UKICAgIHsKCiAgICAgICAgcHVibGljIGludCBwb3JjaENvdW50OwogICAgICAgIHB1YmxpYyBpbnQgZmxvb3JDb3VudDsKICAgICAgICBwcml2YXRlIGludCByb29tc09uRmxvb3I7CiAgICAgICAgcHJpdmF0ZSBkb3VibGUgbWV0ZXJDb3N0OwogICAgICAgIHB1YmxpYyBzdHJpbmcgdHlwZTsKICAgICAgICBwdWJsaWMgaW50IGdhcmFnZTsKICAgICAgICBwdWJsaWMgaW50IGdhcmRlbjsKIAoKICAgICAgICBwdWJsaWMgaW50IFBvcmNocwogICAgICAgIHsKICAgICAgICAgICAgZ2V0IHsgcmV0dXJuIHBvcmNoQ291bnQ7IH0KICAgICAgICAgICAgc2V0IHsgcG9yY2hDb3VudCA9IHZhbHVlOyB9CiAgICAgICAgfQogCiAgICAgICAgcHVibGljIGludCBGbG9vcnMKICAgICAgICB7CiAgICAgICAgICAgIGdldCB7IHJldHVybiBmbG9vckNvdW50OyB9CiAgICAgICAgICAgIHNldCB7IGZsb29yQ291bnQgPSB2YWx1ZTsgfQogICAgICAgIH0KIAogICAgICAgIHB1YmxpYyBpbnQgUm9vbXNPbkZsb29yCiAgICAgICAgewogICAgICAgICAgICBnZXQgeyByZXR1cm4gcm9vbXNPbkZsb29yOyB9CiAgICAgICAgICAgIHNldCB7IHJvb21zT25GbG9vciA9IHZhbHVlOyB9CiAgICAgICAgfQogCiAgICAgICAgcHVibGljIGRvdWJsZSBDb3N0CiAgICAgICAgewogICAgICAgICAgICBnZXQgeyByZXR1cm4gbWV0ZXJDb3N0OyB9CiAgICAgICAgICAgIHNldCB7IG1ldGVyQ29zdCA9IHZhbHVlOyB9CiAgICAgICAgfQoKICAgICAgICBwdWJsaWMgc3RyaW5nIFR5cGUKICAgICAgICB7CiAgICAgICAgICAgIGdldCB7IHJldHVybiB0eXBlOyB9CiAgICAgICAgICAgIHNldCB7IHR5cGUgPSB2YWx1ZTsgfQogICAgICAgIH0KCiAgICAgICAgcHVibGljIGludCBHYXJhZ2UKICAgICAgICB7CiAgICAgICAgICAgIGdldCB7IHJldHVybiBnYXJhZ2U7IH0KICAgICAgICAgICAgc2V0IHsgZ2FyYWdlID0gdmFsdWU7IH0KICAgICAgICB9CgogICAgICAgIHB1YmxpYyBpbnQgR2FyZGVuCiAgICAgICAgewogICAgICAgICAgICBnZXQgeyByZXR1cm4gZ2FyZGVuOyB9CiAgICAgICAgICAgIHNldCB7IGdhcmRlbiA9IHZhbHVlOyB9CiAgICAgICAgfQogCgogICAgICAgIHB1YmxpYyBSZXNpZGVuY2UoKQogICAgICAgIHsKICAgICAgICB9CiAKICAgICAgICBwdWJsaWMgUmVzaWRlbmNlKGludCBwb3JjaENvdW50LCBpbnQgZmxvb3JDb3VudCwgaW50IHJvb21zT25GbG9vciwgZG91YmxlIGNvc3QsIHN0cmluZyB0eXBlLCBpbnQgZ2FyYWdlLCBpbnQgZ2FyZGVuKQogICAgICAgIHsKICAgICAgICAgICAgdGhpcy5wb3JjaENvdW50ID0gcG9yY2hDb3VudDsKICAgICAgICAgICAgdGhpcy5mbG9vckNvdW50ID0gZmxvb3JDb3VudDsKICAgICAgICAgICAgdGhpcy5yb29tc09uRmxvb3IgPSByb29tc09uRmxvb3I7CiAgICAgICAgICAgIHRoaXMubWV0ZXJDb3N0ID0gY29zdDsKICAgICAgICAgICAgdGhpcy50eXBlID0gdHlwZTsKICAgICAgICAgICAgdGhpcy5nYXJhZ2UgPSBnYXJhZ2U7CiAgICAgICAgICAgIHRoaXMuZ2FyZGVuID0gZ2FyZGVuOwogICAgICAgIH0KCiAKICAgICAgICBwdWJsaWMgaW50IEdldFJvb21zQ291bnRJblBvcmNoKCkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiByb29tc09uRmxvb3IgKiBmbG9vckNvdW50OwogICAgICAgIH0KIAogICAgICAgIHB1YmxpYyBpbnQgR2V0Um9vbXNDb3VudEluSG91c2UoKQogICAgICAgIHsKICAgICAgICAgICAgcmV0dXJuIEdldFJvb21zQ291bnRJblBvcmNoKCkgKiBwb3JjaENvdW50OwogICAgICAgIH0KIAogICAgICAgIHB1YmxpYyBkb3VibGUgSG91c2VDb3N0KCkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiAoZG91YmxlKUdldFJvb21zQ291bnRJbkhvdXNlKCkgKiBDb3N0OwogICAgICAgIH0KCiAgICAgICAgcHVibGljIGRvdWJsZSBUaGVDb3N0T2ZNYWludGFpbmluZ1RoZUdhcmRlbigpCiAgICAgICAgewogICAgICAgICAgICByZXR1cm4gKGRvdWJsZSlHYXJkZW47CiAgICAgICAgfQoKIAogICAgICAgIHB1YmxpYyBvdmVycmlkZSBzdHJpbmcgVG9TdHJpbmcoKQogICAgICAgIHsKICAgICAgICAgICAgcmV0dXJuIHN0cmluZy5Gb3JtYXQoItCa0L7Qu9C40YfQtdGB0YLQstC+INGN0YLQsNC20LXQuTogezB9IFxu0JrQvtC70LjRh9C10YHRgtCy0L4g0L/QvtC00YrQtdC30LTQvtCyOiB7MX0gXG7QmtC+0LvQuNGH0LXRgdGC0LLQviDQutC+0LzQvdCw0YI6IHsyfSBcbtCW0LjQu9GM0LUg0LrRg9C/0LvQtdC90L4g0LfQsDogezN9IFxu0KLQuNC/INC20LjQu9GM0Y86IHs0fSBcbtCT0LDRgNCw0LY6IHs1fSBcbtCh0LDQtDogezZ9IFxu0KHRgtC+0LjQvNC+0YHRgtGMINC20LjQu9GM0Y86IHs3fSBcbtCX0LDRgtGA0LDRgtGLINC90LAg0YHQvtC00LXRgNC20LDQvdC40LUg0YHQsNC00LA6IHs4fSAiLCBGbG9vcnMsIFBvcmNocywgUm9vbXNPbkZsb29yLCBDb3N0LCBUeXBlLCBHYXJhZ2UsIEdhcmRlbiwgSG91c2VDb3N0KCksIFRoZUNvc3RPZk1haW50YWluaW5nVGhlR2FyZGVuKCkpOwogICAgICAgIH0KICAgIH0KfQ==