Progettino in linguaggio C

di il
12 risposte

Progettino in linguaggio C

Salve membri del forum. Cerco qualcuno per avere delle "illuminazioni" riguardanti un progetto da svolgere. Spero di trovare qualcuno che possa darmi una mano . Contattatemi anche privatamente se volete! Grazie in anticipo.

-Giacomo

12 Risposte

  • Re: Progettino in linguaggio C

    Hai sbagliato sezione ...
  • Re: Progettino in linguaggio C

    Se hai problemi specifici su qualche parte di codice, allora postala e ne parliamo.

    Se invece cerchi qualcuno che ti faccia il progetto... allora hai proprio sbagliato forum!
  • Re: Progettino in linguaggio C

    Nono non voglio esserlo fatto ma vorrei una dritta per lo più su come poter fare una scacchiera in linguaggio C.. Non sono espertissimo in materia ahimè.. Comunque se ho sbagliato nuovamente, tenetemi al corrente così chiudo la discussione. Scusatemi in anticipo
  • Re: Progettino in linguaggio C

    Jech94 ha scritto:


    vorrei una dritta per lo più su come poter fare una scacchiera in linguaggio C
    Ok, dacci qualche dettaglio... Una scacchiera? Intendi per il gioco degli scacchi oppure una scacchiera intesa come tabella (matrice) dove memorizzare qualcosa?
  • Re: Progettino in linguaggio C

    Una scacchiera per gli scacchi
  • Re: Progettino in linguaggio C

    Ah ok.
    Allora potresti iniziare così:
    - definisci che cos'è un pezzo degli scacchi, ad esempio una struct che contenga il colore (bianco o nero) e il valore (re, donna, alfiere, ...). Attenzione ad includere anche la possibilità di pezzo nullo (corrispondente ad una casella vuota)
    - definisci un array bidimensionale, cioè una matrice, di queste struct avente dimensione 8x8

    E così hai la tua scacchiera, sulla quale puoi definire il concetto di "mossa", "cattura", "scacco", ecc.
  • Re: Progettino in linguaggio C

    "non voglio esserlo fatto"

    Ma l'italiano ...?
  • Re: Progettino in linguaggio C

    Mmm okok. Grazie per la dritta e chiedo ancora scusa se non sono stato conciso fin dall'inizio e quindi aver creato un po' di scompiglio xD. Grazie ancora
  • Re: Progettino in linguaggio C

    Questo è un piccolo esempio che si può benissimo creare con meno di 100 righe di codice.



    P.S. Ho messo solo alcuni pezzi perché poi mi sono stancato...
  • Re: Progettino in linguaggio C

    Figurati! Sei stato più che chiaro
  • Re: Progettino in linguaggio C

    @minomic
    
    #include <stdlib.h>
    #include <stdio.h>
    #include <string.h>
    #include <easyconsole.h>
    #include <easytype.h>
    
    #define VUOTO    0x10
    #define PEDONE   0x01
    #define TORRE    0x02
    #define CAVALLO  0x03
    #define ALFIERE  0x04
    #define RE       0x05
    #define REGINA   0x06
    #define NERO     0x10
    #define BIANCO   0x20
    
    
    BYTE scacchiera[64];
    BYTE dispo[8] = {TORRE,CAVALLO,ALFIERE,RE,REGINA,ALFIERE,CAVALLO,TORRE};
    CHAR* dch[8] = {" ","P","T","C","A","R","E"};
    
    void reset()
    {
    	memset(scacchiera,VUOTO, 64);
    	memset(&scacchiera[1 * 8],PEDONE | NERO, 8);
    	memset(&scacchiera[6 * 8],PEDONE | BIANCO, 8);
    	INT32 i;
    	for ( i = 0; i < 8; ++i)
    	{
    		scacchiera[0*8+i] = dispo[i] | NERO;
    		scacchiera[7*8+i] = dispo[i] | BIANCO;
    	}
    }
     
    void draw()
    {
    	con_cls();
    	INT32 y,x;
    	puts("\t |A|B|C|D|E|F|G|H|");
    	for ( y = 0; y < 8; ++y)
    	{
    		con_setcolor(0,0);
    		printf("\t------------------\n\t%d",y);
    		for ( x = 0; x < 8; ++x)
    		{
    			if (scacchiera[y*8+x] & NERO)
    				con_setcolor(0,0);
    			else
    				con_setcolor(0,CON_COLOR_WHYTE);
    				
    			printf("|%s",dch[scacchiera[y*8+x] & 0x0F]);
    		}
    		printf("|\n");
    	}
    	con_setcolor(0,0);
    	puts("\t------------------");
    } 
     
    int main(int argc,char* argv[])
    {
    	reset();
    	draw();
    	return  0;
    }
    
    una scacchiera completa in circa 50 righe di codice comprensivi di \n vuoti....
    aggiungi le funzioni prendi input una controlla mossa ed il gioco è finito...
  • Re: Progettino in linguaggio C

Devi accedere o registrarti per scrivere nel forum
12 risposte