static void Main(string[] args) { Immobile estate1 = new House("Iasi", 199.000m); Lot estate2 = new Lot(200, 10.000m); ImmobileAgent immobileAgent = new ImmobileAgent(); LotAgent lotAgent = new LotAgent(); HouseFeeCalculator houseFeeCalculator = new HouseFeeCalculator(); LotFeeCalculator lotFeeCalculator = new LotFeeCalculator(); EstateAgentServices.CommunicateType(immobileAgent, estate1); EstateAgentServices.CommunicateAddress(estate1); EstateAgentServices.CommunicatePrice(immobileAgent, estate1, houseFeeCalculator); EstateAgentServices.CommunicateAgentCommission(estate1, houseFeeCalculator); Console.WriteLine(); EstateAgentServices.CommunicateType(lotAgent, estate2); EstateAgentServices.CommunicateCadastralNumber(estate2); EstateAgentServices.CommunicatePrice(lotAgent, estate2, lotFeeCalculator); EstateAgentServices.CommunicateAgentCommission(estate2, lotFeeCalculator); Console.ReadKey(); }
static void Main(string[] args) { Console.WriteLine("**********************************************Real Estate Calculator**********************************************\n"); //Console.WriteLine(""); Console.Write("The price in euro for the real estate is: "); priceRealEstate = Convert.ToDecimal(Console.ReadLine()); Console.Write("The zone is (central, periphery): "); answer = (Console.ReadLine()).ToLower(); switch (answer) { case "central": zone = answer; break; case "periphery": zone = answer; break; default: Console.WriteLine("Invalid value!"); break; } IDisplayMonitor dsp = new DisplayMonitor(); Console.WriteLine("Choose for what type of real estate you need to calculate the commission (single room, apartment, house, parcel): "); realEstate = Console.ReadLine().ToLower(); switch (realEstate) { case "single room": Console.Write("The address is: "); address = Console.ReadLine(); FeeCalculator singleRoomCalculator = new SingleRoomFeeCalculator(); IRealEstate room = new SingleRoom(priceRealEstate, zone, address); dsp.Message(room, singleRoomCalculator); break; case "apartment": Console.Write("The address is: "); address = Console.ReadLine(); var apartmentCalculator = new ApartmentFeeCalculator(); IRealEstate apartment = new Apartment(priceRealEstate, zone, address); dsp.Message(apartment, apartmentCalculator); break; case "house": Console.Write("The address is: "); address = Console.ReadLine(); IRealEstate house = new House(priceRealEstate, zone, address); var houseCalculator = new HouseFeeCalculator(); dsp.Message(house, houseCalculator); break; case "parcel": Console.Write("The cadastral number is: "); address = Console.ReadLine(); var parcelCalculator = new ParcelFeeCalculator(); IRealEstate parcel = new Parcel(priceRealEstate, zone, address); dsp.Message(parcel, parcelCalculator); TestParcel(); break; default: Console.WriteLine("You must to choose one of the single room, apartment, hose or parcel!"); break; } }