Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //za zadati broj n formira i stampa matrica sa prvih n*n prirodnih brojeva
- //zapisanih u obliku spirale
- //1 2 3
- //8 9 4
- //7 6 5
- program spirala;
- type
- niz=array[1..20]of integer;
- matrica=array[1..20]of niz;
- var
- m,n,i,j,s,k,b,br,l:integer;
- x,y,z:niz;
- a:matrica;
- procedure UnosMatrice(var m,n:integer; var a:matrica);
- var i,j:integer;
- begin
- write('Broj vrsta: ');
- readln(m);
- write('Broj kolona: ');
- readln(n);
- for i:=1 to m do
- begin
- for j:=1 to n do
- begin
- write('A[',i,',',j,']= ');
- readln(A[i,j]);
- writeln;
- end;
- end;
- end;
- procedure StampaMatrice(m,n:integer; A:matrica);
- var i,j:integer;
- begin
- writeln;
- for i:=1 to m do
- begin
- for j:=1 to n do
- begin
- write(A[i,j]:4);
- end;
- writeln;
- writeln;
- end;
- writeln;
- end;
- begin
- write('Dimenzija matrice: ');
- readln(n);
- b:=n div 2;
- l:=n-1;
- i:=1;
- j:=1;
- br:=0;
- for k:=1 to b do
- begin
- i:=k;
- j:=k;
- for s:=1 to l do
- begin
- br:=br+1;
- a[i,j]:=br;
- j:=j+1;
- end;
- for s:=1 to l do
- begin
- br:=br+1;
- a[i,j]:=br;
- i:=i+1;
- end;
- for s:=1 to l do
- begin
- br:=br+1;
- a[i,j]:=br;
- j:=j-1;
- end;
- for s:=1 to l do
- begin
- br:=br+1;
- a[i,j]:=br;
- i:=i-1;
- end;
- l:=l-2;
- end;
- if(n mod 2=1) then a[b+1,b+1]:=n*n;
- StampaMatrice(n,n,a);
- readln;
- end.
Add Comment
Please, Sign In to add comment