Problema con la griglia

di Anonimizzato25628 il
26 risposte
Salve a tutti. Vorrei fare un programma in cui effettuo dei movimenti sulla griglia. Io ho fatto la griglia, però non so come fare in modo di potermi spostare al suo interno. Che cosa mi consigliereste di fare?

26 Risposte

  • Di che griglia parli? Quale tipo di programma? Quanto conosci il C?
  • Mi riferisco al programma del gioco delle biglie. Ho creato una griglia 50x50 e ho messo delle buche random, dovrei impostare la posizione della biglia e farla muovere in tutte le direzioni.
  • Sarebbe la postazione da gioco la griglia
  • linux123 ha scritto:


    Mi riferisco al programma del gioco delle biglie.
    E come dovevamo immaginarlo?
    Ho creato una griglia 50x50
    Intendi un array di interi? Di char?
    e ho messo delle buche random
    Che sarebbero?
    dovrei impostare la posizione della biglia e farla muovere in tutte le direzioni.
    Intendi "a video" o "nell'array"?
  • E si doveva capire tutto dal tuo primo post?

    Comunque , come visualizzi 50 linee sul video? Parli di grafica? Testo?
  • Ho impostato le buche in questo modo. 40 sono le buche nascoste, e quindi ho messo dei puntini apposta, come ho fatto in altri punti dove non ci sono i buchi, bensì dei puntini che rappresentano il terreno di gioco. E 20 buche che invece sono visualizzabili e rappresentate con un asterisco *. Più avanti imposterò randomicamente la buca esatta che fa finire il gioco. E vorrei mettere una biglia in un punto casuale del terreno di gioco e farla muovere, la biglia la rappresenterò con una O maiuscola.
  • Posta il codice che hai scritto
  • 
    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>
    
    #define SIZE 50
    
    int main()
    {
        char griglia[SIZE][SIZE];
        int colonna,riga,c1,c2;
    
        srand( (unsigned)time(NULL) );
    
        for(colonna=0;colonna<SIZE;colonna++)
            for(riga=0;riga<SIZE;riga++)
                griglia[colonna][riga] = '.';
    
        c1 = 0;
        c2 = 0;
        while(c1 < 40)
        {
            colonna = rand() % SIZE;
            riga = rand() % SIZE;
            if( griglia[colonna][riga] != '*' )
            {
                griglia[colonna][riga] = '.';
                c1++;
            }
        }
        
        while(c2 < 20)
        {
            colonna = rand() % SIZE;
            riga = rand() % SIZE;
            if( griglia[colonna][riga] != '*' )
            {
                griglia[colonna][riga] = '*';
                c2++;
            }
        }
        
    
        for(colonna=0;colonna<SIZE;colonna++)
        {
            for(riga=0;riga<SIZE;riga++)
                printf(" %c ",griglia[colonna][riga]);
            putchar('\n');
        }
    
        return(0);
    }
    
  • @ linux123

    1) Quale IDE stai usando per sviluppare ?
    2) Su quale OS sviluppi ?
  • Codeblocks e su windows 10
  • Perfetto...

    Allora la prima cosa che dovresti cambiare è anche la grandezza della console che ti mostra la griglia 50x50.
    Se mandi in esecuzione il tuo programma, noterai tu stesso che la griglia ti viene mostrata tutta sfasata.

    Con un comando particolare in C++, puoi cambiare la risoluzione della console tanto da renderla più grande e permetterti di visualizzare la tua griglia perfettamente. Cosi già compi un primo passo...

    Ps. ti ho chiesto su quale OS lavoravi proprio perchè, questo comando funziona solo in ambiente Windows e non su Linux.
  • Si può fare sta cosa pure in codeblocks? Perchè mi trovo meglio con questo programma. E devo fare per forza un programma in C, come dice il progetto
Devi accedere o registrarti per scrivere nel forum
26 risposte