Informatică, întrebare adresată de c10crys, 8 ani în urmă

VA ROG! URGENT
Se dă un număr natural n. Să se genereze o matrice cu n linii și n coloane, în care pe diagonala principală și cea secundară este 0 și apoi se codifică cu 1, 2, 3, 4 cele 4 zone formate de cele 2 diagonale, ca în exemplu.

Date de intrare
Se citește la tastatură numărul natural n.

Date de ieșire
Programul va afișa matricia cerută formată din n linii și n coloane. Intre numerele de pe o linie va exista un spatiu.

Restricții
1 ≤ n ≤ 50
Exemplu
Date de intrare
5
Date de ieșire
0 1 1 1 0
4 0 1 0 2
4 4 0 2 2
4 0 3 0 2
0 3 3 3 0

Răspunsuri la întrebare

Răspuns de ilie07
0

Răspuns:

#include <iostream>

using namespace std;

int main()

{

   int a[51][51],n,i,j;

   do{

       cout<<"n=";cin>>n;

   }while(n<1 || n>50);

   for(i=1;i<=n;i++)

       for(j=1;j<=n;j++)

   {

       a[i][i]=0;

       if(i+j==n+1)

       a[i][j]=0;

       else if(i<j && i+j<n+1)

           a[i][j]=1;

           else

           if(i<j && i+j>n+1)

               a[i][j]=2;

           else if(i>j && i+j>n+1)

               a[i][j]=3;

           else a[i][j]=4;

   }

    for(i=1;i<=n;i++)

       {for(j=1;j<=n;j++)

           cout<<a[i][j]<<" ";cout<<endl;}

  }


c10crys: Avertizări și erori de compilare:

prog.cpp: In function 'int main()':
prog.cpp:25:9: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
{for(j=1;j<=n;j++)
^~~
prog.cpp:26:31: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
cout<
c10crys: imi da aceste erori pe acest cod
c10crys: poti rezolva te rog?
c10crys: am refacut dar codul ia 0 puncte
ilie07: cred ca tu rezolvi pb pe pbinfo incearca sa stregi primele doua linii
ilie07: si sa lasi ce e de la int main() in jos inclusiv int main
ilie07: si daca tot nu merge citeste n-ul fara conditie
Alte întrebări interesante