Pagini recente » Cod sursa (job #1804313) | Cod sursa (job #22113) | Cod sursa (job #1154430) | Cod sursa (job #176465) | Cod sursa (job #901745)
Cod sursa(job #901745)
#include <iostream>
#include <stdio.h>
#include <algorithm>
using namespace std;
FILE *f=fopen("spirala.in","r");
FILE *g=fopen("spirala.out","w");
int n,nr,i,a[101][101],k,j,m,nn,ok,k1,k2;
int main()
{
fscanf(f,"%d%d",&n,&m);
nr=0;
nn=min(n,m);
for(k=1;k<=nn/2+nn%2;k++)
{
k1=n-2*k+2;k2=m-2*k+2;
//1
for(j=k;j<=k+k1-1;j++)
a[k][j]=++nr;
//2
for(j=k+1;j<=k+k2-1;j++)
a[j][k+k1-1]=++nr;
//3
for(j=k+k1-2;j>=k;j--)
a[k+k2-1][j]=++nr;
//4
for(j=k+k2-2;j>k;j--)
a[j][k]=++nr;
}
for(i=1;i<=m;i++)
{
for(j=1;j<=n;j++)
fprintf(g,"%d ",a[i][j]);
fprintf(g,"\n");
}
fclose(g);
return 0;
}