Advertisement
Guest User

Untitled

a guest
Jul 1st, 2017
158
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5.  
  6. namespace _5.zh
  7. {
  8.     abstract class Mesterember
  9.     {
  10.         string név;
  11.         int napidíj;
  12.         public bool[] foglaltnapok = new bool[31];
  13.         public Mesterember(string név, int napidíj)
  14.         {
  15.             this.név = név;
  16.             this.napidíj = napidíj;
  17.         }
  18.         public virtual string MindenAdat()
  19.         {
  20.             string minden;
  21.             minden = "Név: "+név+"Napidíj: "+napidíj;
  22.             return minden;
  23.         }
  24.         public abstract bool MunkátVállal();
  25.  
  26.     }
  27.     class Burkoló:Mesterember
  28.     {
  29.         private string szakterület;
  30.         public Burkoló(string név, int napidíj, string szakterület)
  31.             :base(név, napidíj)
  32.                    {    
  33.                         this.szakterület=szakterület;
  34.                    }
  35.         public override string MindenAdat()
  36.         {
  37.             return base.MindenAdat() + " " + szakterület;
  38.         }
  39.         public int ÖsszesSzabadnap()
  40.         {
  41.             int szabadnapszam=0;
  42.             for (int i = 0; i < 31; i++)
  43.             {
  44.                 if (!MunkátVállal())
  45.                 { szabadnapszam++; }
  46.             }
  47.             return szabadnapszam;
  48.         }
  49.         public string Szakterület
  50.         {
  51.             get { return szakterület; }
  52.             set { if (value=="Belső" || value=="Külső") { szakterület = value; } }
  53.         }
  54.         public override bool MunkátVállal(int mavan)
  55.         {
  56.             bool foglalt = false;
  57.             if (foglaltnapok[mavan]) { foglalt = true; foglaltnapok[mavan] = false; }
  58.             return foglalt;
  59.         }
  60.     }
  61.     class VízvezetékSzerelő : Mesterember
  62.     {
  63.         private int tapasztalat;
  64.         public int Tapasztalat
  65.         {
  66.             get { return tapasztalat; }
  67.             set { if (value > tapasztalat) tapasztalat = value; }
  68.         }
  69.         public VízvezetékSzerelő(string név, int napidíj, int tapasztalat)
  70.             :base(név,napidíj)
  71.         {
  72.             this.tapasztalat = tapasztalat;
  73.         }
  74.         public override string MindenAdat()
  75.         {
  76.             return base.MindenAdat() + " " + Tapasztalat; ;
  77.         }
  78.         public override bool MunkátVállal(int mavan)
  79.         {
  80.             bool foglalt = false;
  81.             if (foglaltnapok[mavan - 1] & foglaltnapok[mavan] & foglaltnapok[mavan + 1]) { foglalt = true; foglaltnapok[mavan - 1] = true; foglaltnapok[mavan] = true; foglaltnapok[mavan + 1] = true; }
  82.             return foglalt;
  83.         }
  84.     }
  85.     class Teszt
  86.     {
  87.         static void Main(string[] args)
  88.         {
  89.             Mesterember[] tömb=new Mesterember[6];
  90.             tömb[0] = new Burkoló("Tapéta Lajos", 60000, "Belső");
  91.             tömb[1] = new VízvezetékSzerelő("Megszer Elek", 12000, 3);
  92.             tömb[2] = new Burkoló("Vakolat Péter", 50000, "Külső");
  93.             tömb[3] = new VízvezetékSzerelő("Víz Elek", 15000, 5);
  94.             tömb[4] = new Burkoló("Eresz János", 30000, "Külső");
  95.             bool mestertipussiker = false;
  96.             Console.Write("Kérem a mesterember típusát (Burkoló/VízvezetékSzerelő): ");
  97.             do
  98.             {
  99.             try
  100.             {
  101.                 string ftipus = Console.ReadLine();
  102.                 ftipus.ToLower();
  103.                 if (ftipus == "burkoló" || ftipus == "burkolo")
  104.                 {
  105.                     ftipus = "Burkoló";
  106.                     mestertipussiker = true;
  107.                     bool nevsiker = false;
  108.                     do
  109.                     {
  110.                         try
  111.                         {
  112.                             Console.Write("Kérem a nevét: ");
  113.                             string fneve=Console.ReadLine();
  114.                         }
  115.                     }
  116.                     Console.Write("Kérem a napidíját: ");
  117.                     int fnapidij=int.Parse(Console.ReadLine());
  118.                     Console.Write("Kérem a szakterületét (Külső/Belső): ");
  119.                     string fszakterulet=Console.ReadLine();
  120.                     fszakterulet.ToLower();
  121.                     bool szakteruletsiker = false;
  122.                     do
  123.                     {
  124.                     try
  125.                     {
  126.                         if (fszakterulet == "kulso" || fszakterulet == "külső") { fszakterulet = "Külső"; szakteruletsiker = true; }
  127.                         else if (fszakterulet == "belso" || fszakterulet == "belső") { fszakterulet = "Belső"; szakteruletsiker = true; }
  128.                         else { throw new Exception(); }
  129.                     }
  130.                     catch (Exception)
  131.                     {
  132.                         Console.WriteLine("___HIBÁS ADAT! Csak \"Külső\"/\"Belső\" adható meg!___");
  133.                     }
  134.                     }
  135.                     while (szakteruletsiker==false);
  136.  
  137.                 }
  138.             }
  139.             catch
  140.             {
  141.  
  142.             }
  143.             }
  144.             while (mestertipussiker==false);
  145.            
  146.             Console.ReadLine();
  147.         }
  148.     }
  149. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement