Advertisement
GraionDilach

Állatkertadatbázis

Mar 21st, 2012
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 4.38 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5.  
  6. namespace ConsoleApplication7
  7. {
  8.     class Program
  9.     {
  10.         static void Main(string[] args)
  11.         {
  12.             int MemberCount;
  13.             bool jel;
  14.             do
  15.             {
  16.                 Console.Write("Kérem az elemszámot: ");
  17.                 jel = int.TryParse(Console.ReadLine(), out MemberCount);
  18.             } while (!jel || MemberCount <= 0);
  19.  
  20.             Állat[] AnimalArray = new Állat[MemberCount];
  21.  
  22.             for (int i = 0; i < AnimalArray.Length; i++)
  23.             {
  24.                 do
  25.                 {
  26.                     Console.Write("\nÁllat fajtája (kutya, ló, macska, kacsa): ");
  27.                     string valami = Console.ReadLine().ToUpper();
  28.                     jel = false;
  29.                     switch (valami)
  30.                     {
  31.                         case "KACSA": AnimalArray[i] = new Kacsa();
  32.                             break;
  33.                         case "KUTYA": AnimalArray[i] = new Kutya();
  34.                             break;
  35.                         case "LÓ": AnimalArray[i] = new();
  36.                             break;
  37.                         case "MACSKA": AnimalArray[i] = new Macska();
  38.                             break;
  39.                         default: Console.WriteLine("Az állatfajta nem létezik az adatbázisban.");
  40.                             jel = true;
  41.                             break;
  42.                     }
  43.                 } while (jel);
  44.             }
  45.  
  46.             Console.WriteLine();
  47.  
  48.             for (int i = 0; i < AnimalArray.Length; i++)
  49.             {
  50.                 Console.WriteLine(AnimalArray[i].StringOutput(i));
  51.             }
  52.         }
  53.     }
  54.  
  55.     abstract public class Állat
  56.     {
  57.         protected Állat( string InputName)
  58.         {
  59.             this.kindofanimal = InputName;
  60.             InputGraion.ReadName(this);
  61.             InputGraion.ReadAge(this);
  62.         }
  63.         string name;
  64.         string kindofanimal;
  65.         int age;
  66.  
  67.         public int Age
  68.         {
  69.             get { return age; }
  70.             set { age = value; }
  71.         }
  72.  
  73.         public string Kindofanimal
  74.         {
  75.             get { return kindofanimal; }
  76.             set { kindofanimal = value; }
  77.         }
  78.  
  79.         public string Name
  80.         {
  81.             get { return name; }
  82.             set { name = value; }
  83.         }
  84.  
  85.         public abstract string StringOutput(int x);
  86.        
  87.     }
  88.  
  89.     class Kutya : Állat
  90.     {
  91.         public Kutya()
  92.             : base("kutya") { }
  93.         public override string StringOutput( int x)
  94.         {
  95.             return "Az " + (x + 1).ToString() + ". állat neve: " + Name + ", faja: " + Kindofanimal + ", életkora: " + Age.ToString() + ", beszéde: ugat.";
  96.         }
  97.  
  98.    }
  99.  
  100.     class Macska : Állat
  101.     {
  102.         public Macska()
  103.             : base("macska") { }
  104.         public override string StringOutput(int x)
  105.         {
  106.             return "Az " + (x + 1).ToString() + ". állat neve: " + Name + ", faja: " + Kindofanimal + ", életkora: " + Age.ToString() + ", beszéde: nyávog.";
  107.         }
  108.  
  109.  }
  110.  
  111.     class: Állat
  112.     {
  113.         public()
  114.             : base("ló") { }
  115.         public override string StringOutput(int x)
  116.         {
  117.             return "Az " + (x + 1).ToString() + ". állat neve: " + Name + ", faja: " + Kindofanimal + ", életkora: " + Age.ToString() + ", beszéde: nyihog.";
  118.         }
  119.  
  120.     }
  121.  
  122.     class Kacsa : Állat
  123.     {
  124.         public Kacsa()
  125.             : base("kacsa") { }
  126.         public override string StringOutput(int x)
  127.         {
  128.             return "Az " + (x + 1).ToString() + ". állat neve: " + Name + ", faja: " + Kindofanimal + ", életkora: " + Age.ToString() + ", beszéde: hápog.";
  129.         }
  130.  
  131.     }
  132.  
  133.     static public class InputGraion
  134.     {
  135.         static public void ReadAge(Állat that)
  136.         {
  137.             bool jel;
  138.             int t_age;
  139.             do
  140.             {
  141.                 Console.Write("Kérem az életkort: ");
  142.                 jel = Int32.TryParse(Console.ReadLine(), out t_age);
  143.             } while (!jel || t_age <= 0 || t_age >= 40);
  144.             that.Age = t_age;
  145.         }
  146.  
  147.         static public void ReadName(Állat that)
  148.         {
  149.             Console.Write("Kérem a " + that.Kindofanimal + " nevét: ");
  150.             that.Name = Console.ReadLine();
  151.         }
  152.     }
  153. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement