作业帮 > 综合 > 作业

大家帮忙做一道pascal数组的题吧,实在是输不对

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/05/01 09:48:19
大家帮忙做一道pascal数组的题吧,实在是输不对
在一组由n个整数构成的数组中,计算:数组中第一个与第二个为0的数之间所有数的乘积
并按以下方式改变数组排序,所有位于奇数位数的数放在数组的前一半,位于偶数位置上的数放在后一半.
pragram ui;
var a,b,c:array[1..10000] of longint;
i,j,n,l,s,r:longint;
k:boolean;
begin
readln(n); k:=false;
for i:=1 to n do
begin
if (a[i]=0) and (not k) then begin j:=i; k:=true; end;
if (a[i]=0) and k then begin l:=i; break; end;
end;
s:=1;
for i:=j+1 to (l-1) do s:=a[i]*s;
j:=1; l:=1;
for i:=1 to n do
begin
if odd(i) then begin b[j]:=a[i]; j:=1; end
else begin c[l]:=a[i]; l:=l+1; end;
end;
for i:=1 to j do a[i]:=b[i];
for i:=j+1 to (j+l) do a[i]:=c[i-j};
for i :=1 to n do write(a[i],' ');
end;