<span>uses crt;
var r1,r2:real;
function Scirkle(r:real):real;
begin
Scirkle:=pi*sqr(r);
end;
begin
clrscr;
writeln('r1,r2');
readln(r1,r2);
writeln('Площадь кольца равна ',Scirkle(r1)-Scirkle(r2));
readln;
end.</span>
program delin;
const
nn = 100;// максимальный размер массива
var
i, j, n, t: integer;
a: array[1..nn] of integer;
begin
write('n = ');
read(n);
randomize;
for i := 1 to n do
begin
a[i] := random(38) - 9;
write(a[i], ' ');
end;
writeln;
for i := n - 1 downto 1 do
for j := 1 to i do
if a[j] > a[j + 1] then
begin
t := a[j];
a[j] := a[j + 1];
a[j + 1] := t;
end;
for i := 1 to n do
write(a[i], ' ');
end.
//PascalABC.NET
//Версия 3.3, сборка 1611 (06.01.2018)
begin
var a:=ArrRandom(ReadInteger('Введите размер массива:'),-20,20); a.Println;
Println('В первой половине положительных:',a[:a.Length div 2].Println.Where(t->t>0).Count);
Println('Во второй половине отрицательных:',a[a.Length div 2:].Println.Where(t->t<0).Count);
end.
Пример:
Введите размер массива: 10
-6 8 -12 -5 -4 16 -1 -14 1 0
-6 8 -12 -5 -4
В первой половине положительных: 1
16 -1 -14 1 0
Во второй половине отрицательных: 2
"for i := a to/downto b do" используется, если известно, сколько раз точно будет выполнен цикл.
<span>var
a: array [1..100] of integer;
i, n , max : integer;
begin
writeln('rozmer');
readln(n);
randomize ;
if (( n>=1) and (n<=35)) then
for i:=1 to n do begin
a[i]:=random(90)-45 ;
write(a[i]:3);
end;
writeln;
max:=a[1] ;
for i:=2 to 100 do begin
if a[i]>max then max:=a[i] ;
end;
writeln(max);
end<span>.</span></span>