Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <fstream>
- using namespace std;
- FILE*fin=fopen ("teza.in", "r");
- FILE*fout=fopen ("teza.out", "w");
- int n, a[100][100]={3};
- void tiparireMatrice (int i, int j)
- {
- for (i=1; i<=n; i++)
- {
- for (j=1; j<=n; j++)
- fprintf (fout, "%d ", a[i][j]);
- fprintf (fout, "\n");
- }
- }
- void parcurgereMatrice (int i, int j)
- {
- if (i<=n)
- {
- for (j=1; j<=n; j++)
- fprintf (fout, "%d ", a[i][j]);
- fprintf (fout, "\n");
- for (j=n; j; j--)
- fprintf (fout, "%d ", a[i+1][j]);
- fprintf (fout, "\n");
- parcurgereMatrice(i+2, j);
- }
- }
- void constr (int i)
- {
- if (i<=n)
- {
- a[i][i]=2;
- a[i][n+1-i]=2;
- constr(i+1);
- }
- }
- void construireMatrice (int i, int j)
- {
- if (i<=n)
- {
- if (j<=n)
- {
- if ((i<j && i+j>n+1) || (i<j && i+j<=n))
- a[i][j]=3;
- if (!a[i][j])
- a[i][j]=4;
- construireMatrice(i, j+1);
- }
- j=1;
- construireMatrice(i+1, j);
- }
- constr(1);
- a[(n+1)/2][(n+1)/2]=1;
- }
- int main ()
- {
- fscanf (fin, "%d", &n);
- int i, j;
- construireMatrice(1, 1);
- tiparireMatrice(i, j);
- fprintf (fout, "\n");
- parcurgereMatrice (1, j);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement