Function isPrime(num : integer): boolean; begin result := true; for var i := 2 to num div 2 do if num mod i = 0 then begin result := false; break end; end;
begin var arr := new integer[30]; var (n, i) := (2, 0); while (i < 30) do begin if isPrime(n) then begin arr[ i ] := n; i+=1; end; n+=1; end; arr.Println; end.
layna1241383
10.11.2021
Program aaa; type t=array[1..30] of integer; var a:t; i,h,max,max1,y:integer; q,c:real; procedure chet(a:t); var i,z:integer; begin z:=0; for i:=1 to 30 do if(odd(a[i])=false) then inc(z); writeln(z); end; begin for i:=1 to 30 do read(a[i]); //1 chet(a); //2 h:=0; c:=0; for i:=1 to 30 do if((a[i] mod 3 = 0) and (a[i] mod 9 <> 0) and (a[i]>9) and (a[i]<100)) then begin inc(h); c:=c+a[i]; end; if(h=0) then writeln(-1) else writeln(c/h); //3 h:=0; max:=0; for i:=1 to 30 do begin if((odd(a[i])=false) and (y=0)) then begin h:=i; y:=1; continue; end; if((y>0) and ((odd(a[i])=false))) then inc(y) else if(y>max) then begin max:=y; max1:=h; y:=0; end else y:=0; end; for i:=max1 to max+max1-1 do write(a[i],' '); writeln; //4 readln(h); y:=a[h]; for i:=h to 29 do a[i]:=a[i+1]; for i:=1 to 29 do write(a[i],' '); for i:=29 downto h do a[i+1]:=a[i]; a[h]:=y; writeln; //5 max:=0; max1:=0; for i:=1 to 30 do begin if(a[i]>max) then begin max1:=max; max:=a[i]; end; if((a[i]>max1) and (a[i]<max)) then max1:=a[i]; end; writeln(max1); end.
Lavka2017
10.11.2021
PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018 Внимание! Если программа не работает, обновите версию!
begin var a:=ReadArrInteger(30); Writeln('1. Количество четных ',a.Where(t->t.IsEven).Count); var s:=a.Where(t->(t mod 3=0) and (t mod 9<>0) and t.Between(10,99)); Write('2. Мудреное среднее арифметическое '); if s.Count=0 then Writeln(-1) else Writeln(s.Average); Write('3. Наибольшая длина цепочки четных элементов '); var (l,l1):=(-1,0); foreach var t in a do if t.IsEven then l1+=1 else begin l:=Max(l,l1); l1:=0 end; Writeln(l); var k:=ReadInteger('4. Номер удаляемого элемента (1-30):')-1; Writeln('Массив после удаления элемента'); a:=a?[:k]+a?[k+1:]; a.Println; Write('5. Второй максимум '); a.OrderByDescending(t->t).Skip(1).Take(1).Println end.
begin
result := true;
for var i := 2 to num div 2 do
if num mod i = 0 then
begin
result := false;
break
end;
end;
begin
var arr := new integer[30];
var (n, i) := (2, 0);
while (i < 30) do
begin
if isPrime(n) then
begin
arr[ i ] := n;
i+=1;
end;
n+=1;
end;
arr.Println;
end.