Informatică, întrebare adresată de 1234roberta1234, 8 ani în urmă

Se dă un număr natural, n , reprezentând numărul de linii și
coloane ale unei matrice. Să se completeze matricea în spirală
cu primele n2 numere naturale nenule.

Urgent, dau coroana!!

Răspunsuri la întrebare

Răspuns de numedeutilizator5
2

#include <iostream>

using namespace std;

int main()  

{

   int n,i,j,a[100][100],s=1;

   cin>>n;

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

{

 for(j=i; j<=n-i; j++)

 {

     a[i][j]=s;

     s++;

 }

 for(j=i; j<=n-i; j++)

 {

     a[j][n-i+1]=s;

     s++;

 }

 for(j=n-i+1; j>=i+1; j--)

 {

     a[n-i+1][j]=s;

  s++;

 }

 for(j=n-i+1; j>=i+1; j--)

 {

     a[j][i]=s;

  s++;

 }

}

if(n%2==1)

 a[n/2+1][n/2+1]=s;

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

{

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

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

    cout << endl;

}

return 0;

}

Anexe:

numedeutilizator5: Pentru spirala parcursa asa trebuia?
1234roberta1234: multumesc multt
numedeutilizator5: Nu ai pentru ce, e parcursa bine? sau trebuia in partea cealalta
1234roberta1234: eu cred ca e bine. te anunt in caz de ceva
numedeutilizator5: ok
Alte întrebări interesante