URI Online Judge | 1478
Matriz Quadrada II
Por Josué Pereira de Castro, Unioeste
Brasil
Timelimit: 1
Brasil
Escreva um algoritmo que leia um inteiro N (0 ≤ N ≤ 100), correspondente a ordem de uma matriz M de inteiros, e construa a matriz de acordo com o exemplo abaixo.
Entrada
A entrada consiste de vários inteiros, um valor por linha, correspondentes as ordens das matrizes a serem construídas. O final da entrada é marcado por um valor de ordem igual a zero (0).
Saída
Para cada inteiro da entrada imprima a matriz correspondente, de acordo com o exemplo. (os valores das matrizes devem ser formatados em um campo de tamanho 3 justificados à direita e separados por espaço. Após o último caractere de cada linha da matriz não deve haver espaços em branco. Após a impressão de cada matriz deve ser deixada uma linha em branco.
#include <stdio.h>
int main()
{
int a,b,c,d,e,f=1,g=2,h,i=0,j=0,N,I,J;
while(1)
{
scanf("%d", &N);
if(N==0) break;
else
{
int ara[N][N];
for(a=0; a<N; a++)
{
for(b=0; b<N; b++)
ara[a][b]=1;
}
I=N-1; J=N;
for(e=0,f=1,g=2;e<I; e++)
{
for(c=0,d=f; d<N;d++,c++)
ara[c][d]=g;
f++; g++;
}
for(e=0,f=1,g=2;e<I; e++)
{
for(c=f,d=0; c<N;d++,c++)
ara[c][d]=g;
f++; g++;
}
for(i=0; i<N; i++)
{
for(j=0; j<N; j++)
{
if(j==0)
printf("%3d",ara[i][j]);
else printf(" %3d",ara[i][j]);
}
printf("\n");
}
printf("\n");
}
}
return 0;
}
Nenhum comentário:
Postar um comentário