static void Main() { Arpoja arpa = new Arpoja(); //looppi jossa kissa koira hevonen //joka 4. on hevonen joka korvaa paikaalla olleen kissan, koiran tai papukaijan //c = cat //d = dog //p = parrot //h = horse /* * OUTPUT: * kissa * koira * papukaija * hevonen //korvaa kissan * koira * papukaija * kissa * hevonen //korvaa koiran * papukaija * kissa * koira * hevonen //korvaa papukaijan */ // jatkuu x monta kertaa // jossa x = käyttäjän antama arvo /* * */ //tee lista, jotta voit luoda oliot loopissa. Console.Write("Kuinka pitkä lista tehdään? "); int x = Int32.Parse(Console.ReadLine()); int j = 0; List <Elain> elainlista = new List <Elain>(); for (int i = 1; i < x; i++) { if ((i % 4) == 0) { int arvottuika = arpa.IkaArpa(); string arvottunimi = arpa.NimiArpa(); Hevonen horse = new Hevonen(arvottuika, arvottunimi); elainlista.Add(horse); horse.AsetaOnLihanSyoja(false); horse.AsetaOnkoTurkki(false); Console.Write(" Olen hevonen nimeltä " + horse.Nimi + " ja ikäni on " + horse.ika + ". "); horse.PalautaOnLihanSyoja(); horse.PalautaOnkoTurkki(); Console.WriteLine(""); i++; // i++ avulla hevonen tulee aina joka 4. kerta } if ((i % 3) == 1) { int arvottuika = arpa.IkaArpa(); string arvottunimi = arpa.NimiArpa(); Kissa cat = new Kissa(arvottuika, arvottunimi); cat.AsetaOnLihanSyoja(true); elainlista.Add(cat); cat.AsetaOnLihanSyoja(true); cat.AsetaOnkoTurkki(true); Console.Write(" Olen kissa nimeltä " + cat.nimi + " ja ikäni on " + cat.ika + ". "); cat.PalautaOnLihanSyoja(); cat.PalautaOnkoTurkki(); Console.WriteLine(""); } if ((i % 3) == 2) { int arvottuika = arpa.IkaArpa(); string arvottunimi = arpa.NimiArpa(); Koira dog = new Koira(arvottuika, arvottunimi); dog.AsetaOnLihanSyoja(true); dog.AsetaOnkoTurkki(true); elainlista.Add(dog); //lisää oikea olio eikä mitää elainta Console.Write(" Olen koira nimeltä " + dog.nimi + " ja ikäni on " + dog.ika + ". "); dog.PalautaOnLihanSyoja(); dog.PalautaOnkoTurkki(); Console.WriteLine(""); } if ((i % 3) == 0) { int arvottuika = arpa.IkaArpa(); string arvottunimi = arpa.NimiArpa(); Linnut parrot = new Linnut(arvottuika, arvottunimi); elainlista.Add(parrot); parrot.AsetaOnLihanSyoja(true); parrot.AsetaOnkoPaikannin(true); Console.Write(" Olen papukaija nimeltä " + parrot.nimi + " ja ikäni on " + parrot.ika + ". "); parrot.PalautaOnLihanSyoja(); parrot.PalautaOnkoPaikannin(); Console.WriteLine(""); } } /* * foreach (Elain elukka in elainlista) * //elukka kai dog vai parrot? * { * Console.WriteLine(" " + elukka.nimi + " " + elukka.ika + " " + elukka.PalautaOnLihanSyoja()); * * } * */ Console.WriteLine("nyt pitäis tulla uus lista"); elainlista.ForEach(Console.WriteLine); Console.WriteLine(""); Console.WriteLine("Hevoset:"); foreach (Elain elukka in elainlista.OfType <Hevonen>()) { Console.Write(elukka.nimi + " " + elukka.PalautaElaimenIka() + " "); elukka.PalautaOnLihanSyoja(); Console.WriteLine(""); } Console.WriteLine(""); Console.WriteLine("Kissat:"); foreach (Elain elukka in elainlista.OfType <Kissa>()) { Console.Write(elukka.nimi + " " + elukka.PalautaElaimenIka() + " "); elukka.PalautaOnLihanSyoja(); Console.WriteLine(""); } Console.WriteLine(""); Console.WriteLine("Koirat:"); foreach (Elain elukka in elainlista.OfType <Koira>()) { Console.Write(elukka.nimi + " " + elukka.PalautaElaimenIka() + " "); elukka.PalautaOnLihanSyoja(); Console.WriteLine(""); } Console.WriteLine(""); Console.WriteLine("Papukaijat:"); foreach (Elain elukka in elainlista.OfType <Linnut>()) { Console.Write(elukka.nimi + " " + elukka.PalautaElaimenIka() + " "); elukka.PalautaOnLihanSyoja(); Console.WriteLine(""); } Console.ReadKey(); }
static void Main(string[] args) { int q = 1; List <Elain> elukat = new List <Elain>(); Console.WriteLine("Kuinka monta eläintä luodaan?"); int maara = int.Parse(Console.ReadLine()); for (int i = 1; i <= maara; i++) { if (i % 4 == 0) { Nisakkaat elukka = new Hevonen(); elukka.AsetaElaimenNimi("heppa"); elukka.AsetaElaimenIka(5); elukka.AsetaOnLihanSyoja(false); elukka.AsetaOnKohtu(true); elukat.Add(elukka); q++; if (q == 4) { q = 1; } } else if (q == 1) { Nisakkaat elukka = new Kissa(); elukka.AsetaElaimenNimi("kissa"); elukka.AsetaElaimenIka(2); elukka.AsetaOnLihanSyoja(true); elukka.AsetaOnKohtu(true); elukat.Add(elukka); q++; } else if (q == 2) { Nisakkaat elukka = new Koira(); elukka.AsetaElaimenNimi("koira"); elukka.AsetaElaimenIka(1); elukka.AsetaOnLihanSyoja(true); elukka.AsetaOnKohtu(true); elukat.Add(elukka); q++; } else if (q == 3) { Linnut elukka = new Papukaija(); elukka.AsetaElaimenNimi("kaija"); elukka.AsetaElaimenIka(20); elukka.AsetaOnLihanSyoja(false); elukka.AsetaOnKloaakki(true); elukat.Add(elukka); q = 1; } } foreach (Linnut kaija in elukat.OfType <Papukaija>()) { Console.WriteLine(kaija.PalautaElaimenIka); Console.WriteLine(kaija.PalautaElaimenNimi); kaija.PalautaOnLihanSyoja(); kaija.PalautaOnKloaakki(); } foreach (Nisakkaat kissa in elukat.OfType <Kissa>()) { Console.WriteLine(kissa.PalautaElaimenIka); Console.WriteLine(kissa.PalautaElaimenNimi); kissa.PalautaOnLihanSyoja(); kissa.PalautaOnKohtu(); } foreach (Nisakkaat koira in elukat.OfType <Koira>()) { Console.WriteLine(koira.PalautaElaimenIka); Console.WriteLine(koira.PalautaElaimenNimi); koira.PalautaOnLihanSyoja(); koira.PalautaOnKohtu(); } foreach (Nisakkaat heppa in elukat.OfType <Hevonen>()) { Console.WriteLine(heppa.PalautaElaimenIka); Console.WriteLine(heppa.PalautaElaimenNimi); heppa.PalautaOnLihanSyoja(); heppa.PalautaOnKohtu(); } Console.ReadKey(); }