Skip to content

huseyinkazim/Mars_Rover

Repository files navigation

🚀 Mars Rover - Trip of Rover

NASA’nın Mars platosu üzerinde rover’ları kontrol etme problemi çözümü.


📋 Proje Açıklaması

Bu proje, klasik Mars Rover Coding Challenge probleminin C# / .NET ile implementasyonudur.

Amaç; Mars platosu üzerinde birden fazla rover’ı verilen komutlara göre hareket ettirmek, yönlendirmek ve son pozisyonlarını raporlamaktır.

Rover’ların koordinatları ve yönleri yönetilerek plato sınırları içinde güvenli navigasyon sağlanır.


🚀 Problem Tanımı

Bir Mars platosu üzerinde rover’lar bulunmaktadır. Plato’nun sol alt köşesi (0,0) olarak kabul edilir.

Rover pozisyonu şu formatta verilir:

x y Yön

Örnek:

1 2 N

🔧 Komutlar

  • L → 90 derece sola dön
  • R → 90 derece sağa dön
  • M → İleri git

🧪 Örnek Test Case

Input

5 5
1 2 N
LMLMLMLMM
3 3 E
MMRMMRMRRM

Expected Output

1 3 N
5 1 E

🛠 Kullanılan Teknolojiler

  • .NET 8 / .NET 6+
  • C#
  • Console Application
  • Object Oriented Design
  • (Opsiyonel) Unit Testing (xUnit / NUnit)

📁 Proje Yapısı

Mars_Rover/
├── MarsRover.Console/     # Ana console uygulaması
├── MarsRover.Domain/      # Domain logic (Rover, Plateau, Direction vb.)
├── MarsRover.Services/    # Servis ve komut işleme katmanı
├── MarsRover.Tests/      # Unit testler (opsiyonel)
└── MarsRover.sln

🚀 Projeyi Çalıştırma

  1. Projeyi klonlayın:
git clone https://github.com/huseyinkazim/Mars_Rover.git
  1. Solution’ı Visual Studio ile açın.

  2. MarsRover.Console projesini startup project olarak seçin.

  3. Uygulamayı çalıştırın (F5).

  4. Konsola input girerek veya Program.cs içinde hardcoded veri ile test edebilirsiniz.


✨ Özellikler

  • Rover yön yönetimi (N, E, S, W)
  • Plato sınır kontrolü
  • Birden fazla rover’ı sırayla çalıştırma
  • Komut dizisini parse edip execute etme

👨‍💻 Geliştirici

Hüseyin Kazım


📌 Proje Türü

Coding Challenge / Kata


⭐ Her türlü katkı ve öneriye açıktır.

About

Mars Rover - NASA Mars Plato Üzerinde Rover Hareket Kontrol Sistemi | C# .NET

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages