private void YonBul(string yonString, Koordinat koordinat) { if (yonString == "N") { RoverYon = new Kuzey(koordinat); } else if (yonString == "S") { RoverYon = new Guney(koordinat); } else if (yonString == "E") { RoverYon = new Dogu(koordinat); } else if (yonString == "W") { RoverYon = new Bati(koordinat); } else { throw new Exception("Yön Bulunamadı!"); } }
static void Main(string[] args) { List <Rover> araclar = new List <Rover>(); bool devam = true; Console.WriteLine("Alanın kaça kaç olacağını giriniz: "); List <int> alanBuyuklugu = Console.ReadLine().Trim().Split(' ').Select(int.Parse).ToList(); while (devam) { Console.WriteLine("Aracın koordinatını ve baktığı yönü giriniz: "); string[] konum = Console.ReadLine().Trim().ToUpper().Split(' '); Console.WriteLine("Komutları giriniz: "); string hareketKomutlari = Console.ReadLine().ToUpper(); Koordinat rKoordinat = new Koordinat(Convert.ToInt32(konum[0]), Convert.ToInt32(konum[1])); Rover rover = new Rover(rKoordinat, konum[2].ToString(), hareketKomutlari, alanBuyuklugu); araclar.Add(rover); Console.WriteLine("Başka araç eklemek ister misin?"); string aracEkle = Console.ReadLine(); if (aracEkle.ToUpper() != "E") { devam = false; } } foreach (Rover r in araclar) { r.Hesapla(); Console.WriteLine("Son Durum: " + r.ToString()); Console.WriteLine("------------------------------"); } Console.ReadLine(); }
public Rover(Koordinat koordinat, string yonString, string hareketKomutlari, List <int> alanBuyuklugu) { AlanBuyuklugu = alanBuyuklugu; HareketKomutlari = hareketKomutlari; YonBul(yonString, koordinat); }