Powrót na stronę UNIX

Napisz aplikację klient - serwer, która pozwala na rozegranie partii w poszukiwacza skarbu. Serwer przyjmuje k graczy, po czym rozpoczyna się rozgrywka. Na początku serwer tworzy mapę wielkości n x n pól, na której rozstawionych jest m pułapek i losuje pozycję startową rycerza (rycerz jest wspólny dla wszystkich graczy). Gracze kolejno wykonują ruchy rycerzem decydując o tym, czy pójdzie w lewo, prawo, do góry czy w dół o jedno pole. Po każdym ruchu serwer informuje wszystkich graczy o aktualnej pozycji rycerza, wykonanym przez gracza ruchu oraz odległości rycerza od skarbu. Gracz, który wdepnie w pułapkę nie bierze udziału w dalszej grze, lecz pozostaje jako obserwator. Zwycięzcą jest gracz który dotrze rycerzem na pole ze skarbem. Gdy wszyscy gracze wejdą w pułapki oczywiście zwycięzcy nie ma. Po zakończeniu rozgrywki serwer zamyka połączenie z graczami. Serwer jest programem jednoprocesowym i kończy działanie w momencie znalezienia skarbu lub przegranej wszystkich graczy. Aplikacja ignoruje nadchodzące sygnały SIGINT.

Program jest jednocześnie klientem i serwerem a tryb pracy wyznaczany jest przez liczbę podanych argumentów:

0<k,n,m<=10

serwer: ./program port k n m

klient: ./program host port

Zadanie będzie oceniane przez Jerzego Bartuszka, rozwiązania proszę wgrywać do katalogu: /home2/samba/bartuszekj/unix/ .

Szczególna uwagę zwracamy na:
Powrót na stronę UNIX