using System; using System.Collections.Generic; namespace Parilus2{ class Inimene{ protected int vanus; protected int pikkus; public Inimene(int uvanus, int upikkus){ vanus=uvanus; pikkus=upikkus; } public Inimene(int uvanus):this(uvanus, -1){} public void YtleVanus(){ Console.WriteLine("Minu vanus on "+vanus+" aastat"); } public int GetPikkus(){ return pikkus; } public int GetVanus(){ return vanus; } } class Modell:Inimene { protected int ymberm66t; public Modell(int uvanus, int uymberm66t, int upikkus):base(uvanus, upikkus){ ymberm66t=uymberm66t; } public Modell(int uvanus, int uymberm66t):base(uvanus){ ymberm66t=uymberm66t; } public void Esitle(){ YtleVanus(); Console.WriteLine("Mu ymberm66duks on {0} sentimeetrit, pikkus {1}", ymberm66t, pikkus); } } class InimTest{ public static bool kasMahubAllveelaeva(Inimene isik){ if(isik == null){return false;} if(isik is Modell && isik.GetPikkus()<170){return true;} return isik.GetPikkus()<165; } public static Inimene[] kesMahuvadAllveelaeva(Inimene[] isikud){ List mahtujad=new List(); foreach(Inimene isik in isikud){ if(kasMahubAllveelaeva(isik)){ mahtujad.Add(isik); } } return mahtujad.ToArray(); } public static void Main(string[] arg){ Modell m=new Modell(20, 90, 180); m.Esitle(); Inimene reisija=m; reisija.YtleVanus(); Inimene[] reisijad=new Inimene[4]; reisijad[0]=new Inimene(7, 135); reisijad[1]=reisija; reisijad[2]=new Modell(25, 60, 168); Console.WriteLine(kasMahubAllveelaeva(reisijad[0])); Console.WriteLine(kasMahubAllveelaeva(reisijad[2])); Inimene[] pisikesed=kesMahuvadAllveelaeva(reisijad); foreach(Inimene isik in pisikesed){ Console.WriteLine("{0} - {1}", isik.GetVanus(), isik.GetPikkus()); } foreach(Inimene isik in reisijad){ if(isik is Modell){ Modell reisivmodell=isik as Modell; reisivmodell.Esitle(); } } } } } /* C:\Projects\oma\naited>Parilus2 Minu vanus on 20 aastat Mu ymberm66duks on 90 sentimeetrit */