// PascalABC.NET 3.1, сборка 1179 от 29.02.2016 const n=15; var a:array[1..n] of integer; i,k,t:integer; begin Randomize; k:=0; for i:=1 to n do begin a[i]:=Random(90)+10; if k=0 then if a[i] mod 7 = 0 then k:=i; Write(a[i],' ') end; Writeln; if k>0 then begin if Odd(n) then i:=n div 2+1 else i:=n div 2; t:=a[k]; a[k]:=a[i]; a[i]:=t; for i:=1 to n do Write(a[i],' '); Writeln end else Writeln('Нет элементов, кратных 7') end.
begin var a := ArrRandom(10, 1, 100); a.Println; if not a.Any(x -> x mod 7 = 0) then begin writeln('нет элемента, что делится на 7'); Halt(); end;
var n7 := 0; for var i := Low(a) to High(a) do if a[i] mod 7 = 0 then begin n7 := i; break; end; var t := a[(Low(a) + High(a)) div 2]; a[(Low(a) + High(a)) div 2] := a[n7]; a[n7] := t;
const
n=15;
var
a:array[1..n] of integer;
i,k,t:integer;
begin
Randomize;
k:=0;
for i:=1 to n do begin
a[i]:=Random(90)+10;
if k=0 then
if a[i] mod 7 = 0 then k:=i;
Write(a[i],' ')
end;
Writeln;
if k>0 then begin
if Odd(n) then i:=n div 2+1
else i:=n div 2;
t:=a[k]; a[k]:=a[i]; a[i]:=t;
for i:=1 to n do Write(a[i],' ');
Writeln
end
else Writeln('Нет элементов, кратных 7')
end.
Тестовое решение:
25 25 47 22 51 63 92 11 38 32 87 54 11 16 18
25 25 47 22 51 11 92 63 38 32 87 54 11 16 18
begin
var a := ArrRandom(10, 1, 100);
a.Println;
if not a.Any(x -> x mod 7 = 0) then begin
writeln('нет элемента, что делится на 7');
Halt();
end;
var n7 := 0;
for var i := Low(a) to High(a) do
if a[i] mod 7 = 0 then begin
n7 := i;
break;
end;
var t := a[(Low(a) + High(a)) div 2];
a[(Low(a) + High(a)) div 2] := a[n7];
a[n7] := t;
a.Println;
end.