Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- namespace _5.zh
- {
- abstract class Mesterember
- {
- string név;
- int napidíj;
- public bool[] foglaltnapok = new bool[31];
- public Mesterember(string név, int napidíj)
- {
- this.név = név;
- this.napidíj = napidíj;
- }
- public virtual string MindenAdat()
- {
- string minden;
- minden = "Név: "+név+"Napidíj: "+napidíj;
- return minden;
- }
- public abstract bool MunkátVállal();
- }
- class Burkoló:Mesterember
- {
- private string szakterület;
- public Burkoló(string név, int napidíj, string szakterület)
- :base(név, napidíj)
- {
- this.szakterület=szakterület;
- }
- public override string MindenAdat()
- {
- return base.MindenAdat() + " " + szakterület;
- }
- public int ÖsszesSzabadnap()
- {
- int szabadnapszam=0;
- for (int i = 0; i < 31; i++)
- {
- if (!MunkátVállal())
- { szabadnapszam++; }
- }
- return szabadnapszam;
- }
- public string Szakterület
- {
- get { return szakterület; }
- set { if (value=="Belső" || value=="Külső") { szakterület = value; } }
- }
- public override bool MunkátVállal(int mavan)
- {
- bool foglalt = false;
- if (foglaltnapok[mavan]) { foglalt = true; foglaltnapok[mavan] = false; }
- return foglalt;
- }
- }
- class VízvezetékSzerelő : Mesterember
- {
- private int tapasztalat;
- public int Tapasztalat
- {
- get { return tapasztalat; }
- set { if (value > tapasztalat) tapasztalat = value; }
- }
- public VízvezetékSzerelő(string név, int napidíj, int tapasztalat)
- :base(név,napidíj)
- {
- this.tapasztalat = tapasztalat;
- }
- public override string MindenAdat()
- {
- return base.MindenAdat() + " " + Tapasztalat; ;
- }
- public override bool MunkátVállal(int mavan)
- {
- bool foglalt = false;
- if (foglaltnapok[mavan - 1] & foglaltnapok[mavan] & foglaltnapok[mavan + 1]) { foglalt = true; foglaltnapok[mavan - 1] = true; foglaltnapok[mavan] = true; foglaltnapok[mavan + 1] = true; }
- return foglalt;
- }
- }
- class Teszt
- {
- static void Main(string[] args)
- {
- Mesterember[] tömb=new Mesterember[6];
- tömb[0] = new Burkoló("Tapéta Lajos", 60000, "Belső");
- tömb[1] = new VízvezetékSzerelő("Megszer Elek", 12000, 3);
- tömb[2] = new Burkoló("Vakolat Péter", 50000, "Külső");
- tömb[3] = new VízvezetékSzerelő("Víz Elek", 15000, 5);
- tömb[4] = new Burkoló("Eresz János", 30000, "Külső");
- bool mestertipussiker = false;
- Console.Write("Kérem a mesterember típusát (Burkoló/VízvezetékSzerelő): ");
- do
- {
- try
- {
- string ftipus = Console.ReadLine();
- ftipus.ToLower();
- if (ftipus == "burkoló" || ftipus == "burkolo")
- {
- ftipus = "Burkoló";
- mestertipussiker = true;
- bool nevsiker = false;
- do
- {
- try
- {
- Console.Write("Kérem a nevét: ");
- string fneve=Console.ReadLine();
- }
- }
- Console.Write("Kérem a napidíját: ");
- int fnapidij=int.Parse(Console.ReadLine());
- Console.Write("Kérem a szakterületét (Külső/Belső): ");
- string fszakterulet=Console.ReadLine();
- fszakterulet.ToLower();
- bool szakteruletsiker = false;
- do
- {
- try
- {
- if (fszakterulet == "kulso" || fszakterulet == "külső") { fszakterulet = "Külső"; szakteruletsiker = true; }
- else if (fszakterulet == "belso" || fszakterulet == "belső") { fszakterulet = "Belső"; szakteruletsiker = true; }
- else { throw new Exception(); }
- }
- catch (Exception)
- {
- Console.WriteLine("___HIBÁS ADAT! Csak \"Külső\"/\"Belső\" adható meg!___");
- }
- }
- while (szakteruletsiker==false);
- }
- }
- catch
- {
- }
- }
- while (mestertipussiker==false);
- Console.ReadLine();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement