Matrici dinamiche e locazioni di memoria

di il
31 risposte

31 Risposte - Pagina 3

  • Re: Matrici dinamiche e locazioni di memoria

    Intendo qualcosa del genere:
    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>
    #include <windows.h>
    
    char valore[] = {'A', 'J', 'Q', 'K'};
    unsigned int seme[] = {10, 11, 12, 14};
    
    void cambia_colore(unsigned int colore)
    {
        SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),  colore);
    }
    
    void inizializza(int m[4][8])
    {
        int *p = m[0];
        for(unsigned int i = 0; i < 32; ++i)
        {
            p[i] = i;
        }
    }
    
    void stampa(int m[4][8], int v[8])
    {
        for(unsigned int i = 0; i < 4; ++i)
        {
            for(unsigned int j = 0; j < 8; ++j)
            {
                if(i >= v[j])
                {
                    cambia_colore(7);
                    printf("  ");
                }
                else if(i < v[j] - 1)
                {
                    cambia_colore(7);
                    printf("# ");
                }
                else
                {
                    cambia_colore(seme[m[i][j] / 8]);
                    printf("%c ", valore[m[i][j] % 4]);
                }
            }
            printf("\n");
        }
        cambia_colore(7);
    }
    
    int main ()
    {
        srand(time(0));
        int v[8] = {3, 1, 2, 4, 0, 3, 4 ,2};
        int m[4][8];
        inizializza(m);
        stampa(m, v);
        return 0;
    }
  • Re: Matrici dinamiche e locazioni di memoria

    Ah, fantastico! io da novizio avevo viaggiato su quelle idee pensando che fossero le ottimali, sinceramente la cosa adesso mi confonde un pò e penso che dovrei perdere un pò di tempo per ricalibrare tutto il programma, ma valuterò!
Devi accedere o registrarti per scrivere nel forum
31 risposte