1. составить блок-схему алгоритма определения объема v и площади поверхности s шара по задаваемому значению радиуса r. v=πd³/6, s=πd² , где d – диаметр шара.
begin var a:=ReadArrReal('Вводите:',ReadInteger('n=')); Writeln('Положительных: ',a.Where(t->t>0).Count); Writeln('Отрицательных: ',a.Where(t->t<0).Count); Writeln('Нулевых: ',a.Where(t->t=0).Count) end.
begin var a:=Arr(-3.7,-3.1,-2.3,-1.6,-0.9,-0.2,0.5,1.2,1.9,2.6,3.3,4.0,4.2,5.4, 1.92,1.76,1.52,1.26,0.95,0.45,0.71,1.10,1.38,1.61,1.82,2.00,2.05,2.32); var d:=a.Length div 2; for var i:=0 to d-1 do Writeln(a[i]:5:2,a[i+d]:20:3) end.
6) const n=10; var a: array[1..n] of integer; i,max,min : integer; begin Randomize; writeln('Исходный массив:'); for i:=1 to n do begin a[i]:=random(21); write(a[i]:3); end; writeln; max:=a[1]; min:=a[1]; for i:=2 to n do begin if a[i] > max then max:=a[i]; if a[i] < min then min:=a[i]; end; writeln('L = ',max-min); end.
9) const n=10; var a: array[1..n] of real; i,k1,k2 : integer; begin Randomize; writeln('Исходный массив:'); for i:=1 to n do begin a[i]:=10*random-5; write(a[i]:5:2); end; writeln; k1:=0; k2:=0; for i:=1 to n do if a[i]>0 then k1:=k1+1 else if a[i]<0 then k2:=k2+1; writeln('Положительных: ',k1,', отрицательных: ',k2,' нулевых: ',n-k1-k2); end.
16) const n=10; var a: array[1..n] of real; i : integer; begin for i:=1 to n div 2 do begin a[i]:=i; a[n div 2+i]:=sin(a[i]); end; for i:=1 to n div 2 do writeln(a[i]:4:1,a[n div 2+i]:6:2); end.
19) const n=10; var a: array[1..n] of integer; i: integer; begin Randomize; writeln('Исходный массив:'); for i:=1 to n do begin a[i]:=random(51); write(a[i]:5); end; writeln; writeln('Выбранные элементы:'); i:=1; while i<=n do begin write(a[i],' '); i:=2*i; end; end.
// Внимание! Если программа не работает, обновите версию!
№6
begin
var a:=ArrRandom(ReadInteger('n='),-99,99).Println;
Writeln('[',a.Min,';',a.Max,']')
end.
Пример
n= 13
72 -77 -88 -99 -2 -61 67 40 -30 -28 91 -56 29
[-99;91]
№9
begin
var a:=ReadArrReal('Вводите:',ReadInteger('n='));
Writeln('Положительных: ',a.Where(t->t>0).Count);
Writeln('Отрицательных: ',a.Where(t->t<0).Count);
Writeln('Нулевых: ',a.Where(t->t=0).Count)
end.
Пример
n= 10
Вводите: 3.7 12.6 -4 0 -13.2 0.7 0 14 2.12 0.004
Положительных: 6
Отрицательных: 2
Нулевых: 2
№16
begin
var a:=Arr(-3.7,-3.1,-2.3,-1.6,-0.9,-0.2,0.5,1.2,1.9,2.6,3.3,4.0,4.2,5.4,
1.92,1.76,1.52,1.26,0.95,0.45,0.71,1.10,1.38,1.61,1.82,2.00,2.05,2.32);
var d:=a.Length div 2;
for var i:=0 to d-1 do Writeln(a[i]:5:2,a[i+d]:20:3)
end.
Результат
-3.70 1.920
-3.10 1.760
-2.30 1.520
-1.60 1.260
-0.90 0.950
-0.20 0.450
0.50 0.710
1.20 1.100
1.90 1.380
2.60 1.610
3.30 1.820
4.00 2.000
4.20 2.050
5.40 2.320
№19
begin
var n:=ReadInteger('n=');
var a:=ArrRandom(n,-50,50); a.Println;
var i:=1;
while i<=n do begin
Print(a[i-1]);
i*=2
end;
Writeln
end.
Пример
n= 17
-43 -41 -37 -43 12 45 -34 -19 -38 33 -34 39 -40 33 -46 4 39
-43 -41 -43 -19 4
const n=10;
var a: array[1..n] of integer;
i,max,min : integer;
begin
Randomize;
writeln('Исходный массив:');
for i:=1 to n do begin
a[i]:=random(21);
write(a[i]:3);
end;
writeln;
max:=a[1]; min:=a[1];
for i:=2 to n do
begin
if a[i] > max then max:=a[i];
if a[i] < min then min:=a[i];
end;
writeln('L = ',max-min);
end.
Пример:
Исходный массив:
10 8 8 6 4 16 18 10 11 13
L = 14
9)
const n=10;
var a: array[1..n] of real;
i,k1,k2 : integer;
begin
Randomize;
writeln('Исходный массив:');
for i:=1 to n do begin
a[i]:=10*random-5;
write(a[i]:5:2);
end;
writeln;
k1:=0; k2:=0;
for i:=1 to n do
if a[i]>0 then k1:=k1+1
else if a[i]<0 then k2:=k2+1;
writeln('Положительных: ',k1,', отрицательных: ',k2,' нулевых: ',n-k1-k2);
end.
Пример:
Исходный массив:
-1.03 2.79-3.60 0.33-3.69-4.69-2.34-4.19 1.20 1.74
Положительных: 4, отрицательных: 6 нулевых: 0
16)
const n=10;
var a: array[1..n] of real;
i : integer;
begin
for i:=1 to n div 2 do begin
a[i]:=i;
a[n div 2+i]:=sin(a[i]);
end;
for i:=1 to n div 2 do
writeln(a[i]:4:1,a[n div 2+i]:6:2);
end.
Пример:
1.0 0.84
2.0 0.91
3.0 0.14
4.0 -0.76
5.0 -0.96
19)
const n=10;
var a: array[1..n] of integer;
i: integer;
begin
Randomize;
writeln('Исходный массив:');
for i:=1 to n do begin
a[i]:=random(51);
write(a[i]:5);
end;
writeln;
writeln('Выбранные элементы:');
i:=1;
while i<=n do
begin
write(a[i],' ');
i:=2*i;
end;
end.
Пример:
Исходный массив:
8 38 22 45 36 23 21 13 5 13
Выбранные элементы:
8 38 45 13