PDA

Visualizza la versione completa : Sviluppo semplificato di scacchi


cris9713
24-06-2019, 20:10
Buon pomeriggio a tutti, sono uno studente di programmazione e sono bloccato allo svolgimento di un programma. Non riesco a capire quali classi e quali tecniche adoperare.Vi inserisco la traccia :

E’ necessario scrivere un’applicazione che consente di giocare semplici partite a scacchi. La partita si gioca su una scacchiera di dimensioni 8x8 con pezzi bianchi e neri. Ciascuna delle 64 posizioni della scacchiera si chiama “casa” (o “casella”). Per semplicità si supponga che sulla scacchiera possano giocare solamente torri, alfieri e re. Per ciascun giocatore possono esserci al più due torri, due alfieri ed un unico re. I pezzi si muovono sulla scacchiera secondo le seguenti regole:


le torri si muovono secondo linee orizzontali o verticali e di un numero di case deciso dal giocatore

gli alfieri si muovono solo in diagonale e di un numero di case deciso dal giocatore

il re si muove in orizzontale o in diagonale ma di una sola casa alla volta Inoltre:


per semplicità, si suppoga che un pezzo possa “scavalcare” altri pezzi durante la mossa (negli scacchi in realtà l’unico pezzo capace di “scavalcare” è il cavallo che non viene considerato in questa versione del gioco)

quando un pezzo si muove sulla casa di un pezzo avversario, quest’ultimo viene “catturato” o “mangiato” e deve abbandonare la scacchiera

un pezzo non può catturare pezzi dello stesso colore


il gioco termina quando uno dei due giocatori cattura il re avversario

Non vorrei ricevere una soluzione a livello di codice, ma almeno l'incipit per svolgerlo
grazie mille in anticipo a tutti.

alka
06-07-2019, 11:50
Non vorrei ricevere una soluzione a livello di codice, ma almeno l'incipit per svolgerlo


L'incipit per lo svolgimento in realtà dovresti cercare di fornirlo tu, proponendo un abbozzo di soluzione, giusta o sbagliata che sia: sarà il forum poi a cercare di darti suggerimenti utili per correggerla e migliorarla.

Se non sai proprio da che parte iniziare, sarà difficile avviare una discussione costruttiva sul problema che non sia la fornitura della soluzione all'esercizio.

Per dirne una, non hai nemmeno indicato il linguaggio di programmazione.

Rispondi aggiungendo le informazioni mancanti e facendo lo sforzo iniziale di intavolare un ragionamento.

Ciao! :ciauz:

Loading