Lo Stia

« Older   Newer »
 
  Share  
.
  1.     Like  
     
    .
    Avatar

    Register

    Group
    Member
    Posts
    82
    Reputation
    0

    Status
    Offline
    /*
    * Verifica.c
    *
    * Created on: 17/dic/2021
    * Author: Utente
    */

    #include <stdio.h>
    #include <stdlib.h>

    #define MAX 20

    typedef struct
    { int posizioni[MAX][MAX];
    int righe;
    int colonne;
    } scacchiera;

    int VerificaRegina (int RigaRe, int ColonnaRe, int RigaRegina, int ColonnaRegina);
    int VerificaOrizzontale(int RigaRe, int ColonnaRe, int RigaRegina, int ColonnaRegina);
    int VerificaVerticale(int RigaRe, int ColonnaRe, int RigaRegina, int ColonnaRegina);
    int VerificaDiagonale(int RigaRe, int ColonnaRe, int RigaRegina, int ColonnaRegina);
    void StampareScacchiera(scacchiera s);
    void RiempireScacchiera(scacchiera * s);

    //Accesso ai dati
    int LeggereValore(scacchiera s, int r, int c);
    void ScrivereValore(scacchiera* s, int r, int c, int valore);
    int LeggereRighe(scacchiera s);
    int LeggereColonne(scacchiera s);
    void ScrivereRighe(scacchiera * s, int r);
    void ScrivereColonne(scacchiera * s, int c);


    int main()
    {
    scacchiera s;
    int RigaRe;
    int ColonnaRe;
    int RigaRegina;
    int ColonnaRegina;
    int esito;

    RigaRe=1;
    ColonnaRe=1;
    RigaRegina=4;
    ColonnaRegina=4;
    ScrivereRighe(&s, 8);
    ScrivereColonne(&s, 8);
    RiempireScacchiera(&s);
    StampareScacchiera(s);
    esito=VerificaRegina(RigaRe, ColonnaRe, RigaRegina, ColonnaRegina);
    printf("\n");
    printf("Esito = %d\n", esito);

    system("pause");
    return 0;

    }

    int VerificaRegina (int RigaRe, int ColonnaRe, int RigaRegina, int ColonnaRegina)
    {int EsitoVerifica;
    EsitoVerifica=VerificaOrizzontale(RigaRe, ColonnaRe, RigaRegina, ColonnaRegina);
    if(EsitoVerifica==0)
    EsitoVerifica=VerificaVerticale(RigaRe, ColonnaRe, RigaRegina, ColonnaRegina);
    if(EsitoVerifica==0)
    EsitoVerifica=VerificaDiagonale(RigaRe, ColonnaRe, RigaRegina, ColonnaRegina);
    return EsitoVerifica;
    }


    int VerificaOrizzontale(int RigaRe, int ColonnaRe, int RigaRegina, int ColonnaRegina)
    {int EsitoVerificaOrizzontale;
    EsitoVerificaOrizzontale=0;
    if(RigaRe==RigaRegina)
    EsitoVerificaOrizzontale=1;
    return EsitoVerificaOrizzontale;
    }

    int VerificaVerticale(int RigaRe, int ColonnaRe, int RigaRegina, int ColonnaRegina)
    {int EsitoVerificaVerticale;
    EsitoVerificaVerticale=0;
    if(ColonnaRe==ColonnaRegina)
    EsitoVerificaVerticale=1;
    return EsitoVerificaVerticale;
    }

    int VerificaDiagonale(int RigaRe, int ColonnaRe, int RigaRegina, int ColonnaRegina)
    {
    int EsitoVerificaDiagonale;
    EsitoVerificaDiagonale=0;
    if (abs(RigaRe-RigaRegina)==abs(ColonnaRe-ColonnaRegina))
    EsitoVerificaDiagonale=1;
    return EsitoVerificaDiagonale;
    }

    void StampareScacchiera(scacchiera s)
    {
    int i;
    int j;
    i=0;
    while (i<leggererighe(s))
    {j=0;
    while (j<leggerecolonne(s))
    { printf("%d ", LeggereValore(s, i, j));
    j=j+1;
    }
    printf("\n");
    i=i+1;
    }
    return;
    }

    void RiempireScacchiera(scacchiera * s)
    {
    int i;
    int j;
    i=0;
    while (i<leggererighe(*s))
    {j=0;
    while (j<leggerecolonne(*s))
    { ScrivereValore(s, i, j, i*j);
    j=j+1;
    }
    i=i+1;
    }
    return;
    }


    int LeggereRighe(scacchiera s)
    {
    return s.righe;
    }

    int LeggereColonne(scacchiera s)
    {
    return s.colonne;
    }

    int LeggereValore(scacchiera s, int r, int c)
    {
    return s.posizioni[r][c];
    }

    void ScrivereValore(scacchiera *s, int r, int c, int valore)
    {

    s->posizioni[r][c]=valore;
    return;
    }

    void ScrivereRighe(scacchiera * s, int r)
    {
    s->righe=r;
    return;
    }

    void ScrivereColonne(scacchiera * s, int c)
    {
    s->colonne=c;
    return;
    }
     
    .
  2.     Like  
     
    .
    Avatar

    Register

    Group
    Member
    Posts
    82
    Reputation
    0

    Status
    Offline
    https://pastebin.com/raw/WBem0BzM

    https://pastebin.com/raw/e80u4Ge3
     
    .
  3.     Like  
     
    .
    Avatar

    Manager

    Group
    User+
    Posts
    20,990
    Reputation
    +414

    Status
    Anonymous
    #include <stdio.h>
    #include <stdlib.h>

    #define max 10

    typedef struct {
    int valori[max][max];
    int righe;
    int colonne;
    } tabella;

    void RiempireTabella(tabella * t);
    void StampareTabella(tabella t);


    //Accesso ai dati
    int LeggereValore(tabella t, int r, int c);
    void ScrivereValore(tabella* t, int r, int c, int valore);
    int LeggereRighe(tabella t);
    int LeggereColonne(tabella t);
    void ScrivereRighe(tabella * t, int r);
    void ScrivereColonne(tabella * t, int c);

    int main() {
    tabella t;

    ScrivereRighe(&t, 8);
    ScrivereColonne(&t, 8);
    RiempireTabella(&t);
    StampareTabella(t);
    printf("\n");

    system("pause");
    return 0;
    }

    void RiempireTabella(tabella * t) {
    int i;
    int j;
    int valori[max][max];
    i=0;
    while (i<leggererighe(*t)) {
    j=0;
    while (j<leggerecolonne(*t)) {
    scanf("%d", *(valori+i));
    j=j+1;
    }
    i=i+1;
    }
    return;
    }

    void StampareTabella(tabella t)
    {
    int i;
    int j;
    i=0;
    while (i<leggererighe(t)) {
    j=0;
    while (j<leggerecolonne(t))
    { printf("%d ", LeggereValore(t, i, j));
    j=j+1;
    }
    printf("\n");
    i=i+1;
    }
    return;
    }

    int LeggereValore(tabella t, int r, int c) {
    return t.valori[r][c];
    }

    void ScrivereValore(tabella * t, int r, int c, int valore) {
    t->valori[r][c]=valore;
    return;
    }

    int LeggereRighe(tabella t) {
    return t.righe;
    }

    int LeggereColonne(tabella t) {
    return t.colonne;
    }

    void ScrivereRighe(tabella * t, int r) {
    t->righe=r;
    return;
    }

    void ScrivereColonne(tabella * t, int c) {
    t->colonne=c;
    return;
    }

    https://pastebin.com/raw/Dq9qUkSW
     
    .
2 replies since 17/12/2021, 17:43   26 views
  Share  
.