La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Esercitazione con socket

Presentazioni simili


Presentazione sul tema: "Esercitazione con socket"— Transcript della presentazione:

1 Esercitazione con socket
Scrivere un programma client-server in C che utilizzi le socket Server Stia in attesa su una porta nota definibile da linea di comando Accetti una connessione dal client e crei una nuova socket per questa connessione in modo tale da gestire più clienti contemporaneamete (più client possono giocare contemporaneamente con lo stesso server) Accetti il comando giochi dal client e ritorni la lista dei giochi che il client può eseguire tramite il server Gestisca l’invio di comandi errati da parte del client Accetti il comando esegui gioco (gioco è uno dei giochi disponibili) Implementi come minimo il gioco carta-forbice-pietra e un altro gioco (a scelta dello studente) Gestisca l’esecuzione del gioco con il client Gestisca il comando exit che, in qualunque istante, chiude la connessione ed esce dall’applicazione

2 Esercitazione con socket (cont.)
Server che implementa “carta-forbice-pietra” Regole fondamentali: Pietra rompe Forbice (vince pietra) Carta avvolge Pietra (vince carta) Forbice taglia Carta (vince forbice) Parità in caso di oggetti uguali Accetti il comando (indifferentemente minuscolo o maiuscolo) c (per carta), f (per forbice) e p (per pietra) Indipendentemente dal comando ricevuto, generi in maniera casuale c, f o p ed effettui il confronto con il comando inviato dal client in modo da stabilire chi ha vinto la mano Calcoli il numero di mano , aggiorni il punteggio e restituisca la seguente tipologia di output: Mano n. 1 - client: pietra, server: carta => vince il server (o le altre combinazioni) Punteggio - client: 0, server:1 Carta, forbice o pietra? Quando il punteggio arriva a 10, dichiari vincitore il server o il client Accetti in qualunque istante i seguenti comandi help che fornisce una breve spiegazione del gioco quit che esce dal gioco e ritorna alla lista dei giochi exit che chiude la connessione ed esce dal programma Informi il client se il comando inviato è errato

3 Esercitazione con socket (cont.)
Client Si connetta ad un server specificando nome e porta da linea di comando Fornisca la possibilità di inviare il comando giochi al server e mostri all’utente la lista dei giochi che il client può eseguire tramite il server Fornisca la possibilità di inviare il comando esegui gioco Per il gioco “carta-forbice-pietra” Mostri al client il prompt Carta, forbice o pietra? Permetta l’invio del comando (indifferentemente minuscolo o maiuscolo) c (per carta), f (per forbice) e p (per pietra) Permetta l’invio dei comandi help quit exit Possibili estensioni Si possono implementare altri giochi oltre “carta-forbice-pietra”, ad es. “sette e mezzo” Interfaccia grafica


Scaricare ppt "Esercitazione con socket"

Presentazioni simili


Annunci Google