Powrót na stronę UNIX

Napisz aplikację klient-serwer, która polega na przeprowadzanie rozgrywek w papier - nożyce - kamień. Serwer oczekuje na 2*k połączeń. Użytkownicy łączeni są w pary (k par) w kolejności nadchodzących połączeń (tj. pierwszy jest w parze z drugim, trzeci z czwartym, itd.). Następnie w tych parach toczonych jest po n rund. Runda polega na wysłaniu przez obu graczy swojego typu - papier, nożyczki lub kamień a następnie na wyłonieniu przez serwer jej zwycięzcy. Po zakończeniu wszystkich rund para graczy jest informowana o wyniku rozgrywki po czym połączenie z nimi zostaje zakończone. W przypadku rozłączenia się gracza drugi gracz z pary również zostaje rozłączony ze stosownym komunikatem. Serwer jest programem jednoprocesowym i kończy działanie w momencie zakończenia wszystkich rozgrywek. Aplikacja ignoruje nadchodzące sygnały SIGINT.

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

serwer: ./program port k n

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