kwadrat magiczny

0
#include <stdio.h>
#include <stdlib.h>
#define n 2
#define m 2


int  sumawiersza1(int tab[n][m])
{
    int licznik=0;
    int j;
                                for(j=0;j<m;j++)
                                {
                                    licznik=licznik+tab[0][j];
                                }
    return licznik;
}
int wiersz(tab[n][m])
 {
    int i,j;
    int suma;
            for(i=0;i<n;i++)
            {
                for(j=0;j<m;j++)
                {
                   suma=suma+tab[i][j];
                        if(suma==sumawiersza1(tab[n][m]))
                        {
                            goto a:
                        }
                        else
                            return 0
                }
            }a:

}
int kolumna(tab[n][m])
{
    int i,j;
    int suma=0;
        for(j=0;j<m;j++)
            {
                for(i=0;i<n;i++)
                {
                   suma=suma+tab[i][j];
                        if(suma==sumawiersza1(tab[n][m]))
                        {
                            goto a:
                        }
                        else
                            return 0
                }
            }a:
}
int magiczny(tab[n][m])
{
    if(wiersz(tab[n][m]==0)&&kolumna(tab[n][m]==0))
    {
        return 0;
    }
    else
        return 1;
}
int main()
{
    
    int tab[a][b];
    int i,j;

                        for(i=0;i<n;i++)
                        {
                            for(j=0;j<m;j++)
                            {
                                scanf("%d",&tab);
                            }
                        }

                        printf("%d",magiczny(tab[n][m]));
    return 0;
}


Trochę wklepałem szkoda ze mam zastrzeżenia no i nie działa moglby ktos pomoc ewentualnie cos szybszego na kwadrat magiczny :(

2

Zagadka na dziś:

    int a,b;
    int tab[a][b];

Jak duże jest tab?

1 użytkowników online, w tym zalogowanych: 0, gości: 1