using System;
using System.Collections.Generic;
namespace Początek
{
class Bicykle
{
public string Number { get; private set; }
public Bicykle(string _Number) { this.Number = Number; }
}
class User // anonimowy użytkownik wypożyczalni
{
public void GetBicykle(BicykleRental rental) { /*1*/ }
// pobiera rower z czoła kolejki wypożyczalni do użytku własnego
public void ReturnBicykle(BicykleRental rental, string number) { /*2*/ }
//zwraca rower o określonym numerze do kolejki wypożyczalni
}
class BicykleRental // wypożyczalnia
{
public Queue<Bicykle> ForRent = new Queue<Bicykle>();
public void SetBicykle(string Number) {/*3*/}
// tworzy obiekt roweru nadając mu numer i wstawia na koniec kolejki,
// metoda wywoływana z poziomu programu wykonawczego (funkcji Main())
public void ToService() {/*4*/}
// usuwa rower z czoła kolejki zabierając go do serwisu
// metoda wywoływana z poziomu programu wykonawczego (funkcji Main())
public void ReturnBicykle(string Number) {/*5*/}
// zwrot roweru o określonym numerze na koniec kolejki,
// metoda wywoływana przez użytkownika klasy User
public void SchowQueue()
{ // metoda wyświetla wszystkie rowery aktualnego stanu kolejki
foreach (Bicykle rower in ForRent)
{
Console.WriteLine("Rower: {0}", rower.Number);
}
Console.WriteLine("-----------------------------");
}
}
class Program
{
static void Main(string[] args)
{
// Opracuj treści wszystkich pięciu metod w miejscach
// wskazanych komentarzem
// Następnie utwórz obiekt wypożyczalni,
// oraz obiekt klasy User
// Zasymuluj działanie wypożyczalni poprzez kilka następujących po sobie
// w dowolnej kolejności różnych zdarzeń (wstawianie nowych rowerów, // wypożyczanie, zabranie do serwisu)
// Po każdej akcji wyświetlaj aktualny stan kolejki
Console.ReadKey();
}
}
}