Напишите программу, которая в последовательности целых чисел определяет их сумму и подсчитывает разность количества положительных и отрицательных чисел последовательности. Программа получает на вход количество числе и затем сами числа. Количество чисел не превышает 1000. Введённые числа по модулю не превышают 30 000. Про-грамма должна вывести два числа: сумму чисел и разность количества положительных и отрица-тельных чисел.
var a:array[1..n,1..n] of integer;
i,j,d,k,l,m:integer;
begin
k:=1;
i:=1; j:=1;
a[i,j]:=1;
d:=n-1;
for l:=1 to d do
begin k:=k+1; j:=j+1; a[i,j]:=k; end;
for m:=1 to n div 2 do
begin
for l:=1 to d do
begin k:=k+1; i:=i+1; a[i,j]:=k; end;
for l:=1 to d do
begin k:=k+1; j:=j-1; a[i,j]:=k; end;
d:=d-1;
for l:=1 to d do
begin k:=k+1; i:=i-1; a[i,j]:=k; end;
for l:=1 to d do
begin k:=k+1; j:=j+1; a[i,j]:=k; end;
d:=d-1;
end;
for i:=1 to n do
begin
for j:=1 to n do write(a[i,j]:4);
writeln;
end;
end.
Результат:
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9
begin
Write(Range(300,400,2).Sum)
end.
Результат выполнения программы:
17850
// PascalABC.NET 3.1, сборка 1214 от 09.04.2016
begin
Range(104,999,8).Print
end.
Результат выполнения программы:
104 112 120 128 136 144 152 160 168 176 184 192 200 208 216 224 232 240 248 256 264 272 280 288 296 304 312 320 328 336 344 352 360 368 376 384 392 400 408 416 424 432 440 448 456 464 472 480 488 496 504 512 520 528 536 544 552 560 568 576 584 592 600 608 616 624 632 640 648 656 664 672 680 688 696 704 712 720 728 736 744 752 760 768 776 784 792 800 808 816 824 832 840 848 856 864 872 880 888 896 904 912 920 928 936 944 952 960 968 976 984 992