
4.1. Вычислить значения функции z= (xi+ai )/ 2 , если i x и i a –элементы массивов, состоящие из 40 элементов каждый. var
x: array [1..40] of integer;
a: array [1..40] of integer;
z:real;
i: integer;
begin
for i:= 1 to 40 do
read (x[i]);
for i:= 1 to 40 do
begin
z:= sqrt ( (x[i]+ a[i]) / 2);
writeln (‘z=’, z:3:3);
end; end.
4.2. Записать в массив x, состоящий из 20 элементов, нули.
var
x: array [1..10] of integer;
i:= integer;
begin
for i:= 1 to 10 do
read (x[i]);
for i:= 1 to 10 do
x[i] :=0;
for i:= 1 to 10 do
Writeln (‘x[i]=’, x[i]);
end.
4.3. Вычислить значения функции, если ai– элементы массива:
ai=ai, если ai> 0, ai=0 , если ai<= 0.
Var
a: array [1..10] of integer;
I: integer;
begin
for i:= 1 to 10 do
Readln (a[i]);
for i:= 1 to 10 do
begin
if a[i] > 0 then a[i]:= a[i] else
if a[i] <=0 then a[i]:= 0;
Writeln (a[i]);
end; end.
4.4. Вывести на печать положительные элементы массива.
Var
a: array [1..10] of integer;
I: integer;
begin
for i:= 1 to 10 do
readln (a[i]);
for i:= 1 to 10 do
if a[i]> 0 then
write (a[i]);
writeln;
end.
4.5. Вывести на печать первый отрицательный элемент массива и его порядковый номер, полагая, что в массиве есть хотя бы один отрицательный элемент.
Var
a: array [1..10] of integer;
i,k: integer;
begin
for i:= 1 to 10 do
readln (a[i]);
k:=0;
for i:= 1 to 10 do
if a[i] < then begin
k:= k+1;
if k=1 then writeln (‘элемент=’a[i], ‘номер=’,i);
end; end.
4.6. Вывести на печать номера элементов массива, удовлетворяющих условию 0<ai<1.
Var
a: array [1..10] of integer;
I: integer;
begin
for i:= 1 to 10 do
readln (a[i]);
for i:= 1 to 10 do
if (a[i]>0) and ( a[i]<1) then
write (‘номер элемента=’ , i);
end.
4.7. Вычислитьz=3√aibici / 3, где ai ,bi ,ci - элементы массивов, состоящие из 20 элементов каждый.
Var
a:array [1..10] of integer;
b:array [1..10] of integer;
c:array [1..10] of integer;
i:integer;
z:extended;
Begin
for i:=1 to 10 do
read (a[i],b[i],c[i]);
for i:=1 to 10 do
Begin
z:=exp((1/3)*ln(a[i]*b[i]*c[i]/3));
write('z=',z:3);
End;
End.
4.8. Вывести на печать элементы массива кратные трем.
Var
a: array [1..10] of integer;
I: integer;
begin
for i:= 1 to 10 do
readln (a[i]);
for i:= 1 to 10 do
if a[i] mod 3=0 then
writeln (‘элементы=’, a[i]);
end.
4.9. Вывести на печать номера точек, лежащих в круге радиусом r. Координаты точек заданы массивами (x1,x2 ,...,x10 ),(y1 ,y2 ,..,y10 ).
Var
x:array [1..10] of integer;
y: array [1..10] of integer;
z:array [1..10] of integer;
r, i: integer;
begin
for i:= 1 to 10 do
read (x[i]);
for i:= 1 to 10 do
read (y[i]);
writeln ( ‘введитеr’);
readln (r);
for i:= 1 to 10 do
ifsqr(x[i]) + sqr (y[i]) <sqr (r) then
writeln (‘номер элемента=’, i);
end.
4.10. В одномерном массиве найти сумму положительных, произведение отрицательных, количество четных элементов
Var
a: array [1..10] of integer;
s,p,k,i: integer;
begin
for i:= 1 to 10 do
readln (a[i]);
s:=0; p:=1; k:=0;
for i:= 1 to 10 do begin
if a[i]> 0 then s:= s+a[i]; end;
for i:= 1 to 10 do begin
if a[i]< 0 then p:= p*a[i]; end;
for i:= 1 to 10 do begin
if a[i] mod 2=0 then k:=k+1; end;
Writeln(‘s=’s, ‘p=’p, ‘k=’k);
End.
4.11. Найти минимальное значение элемента массива и его порядковый номер.
Var
a: array [1..10] of integer;
min, minI, i: integer;
begin
for i:= 1 to 10 do
readln (a[i]);
min:= a[i]; minI:=1;
for i:= 1 to 10 do
if a[i] < min then begin
min:= a[i]; minI:=I;
end;
writeln (‘min=’, min, ‘minI=’,minI);
end.
4.12. Найти минимальное значение элемента массива из нечетной позиции.
Var
a: array [1..10] of integer;
min, i: integer;
begin
for i:= 1 to 10 do
readln (a[i]);
min:= a[i];
for i:= 1 to 10 do
if a[i] < min then begin
min:= a[i];
ifimod 2=1 then
min:= a[i];
writeln (‘ min=’, min);
end; end.
4.13. Найти максимальное значение элемента массива и его порядковый номер.
Var
a: array [1..10] of integer;
max, maxI, i: integer;
begin
for i:= 1 to 10 do
readln (a[i]);
max:= a[i]; maxI:=1;
for i:= 1 to 10 do
if a[i] > max then begin
max:= a[i]; maxI:=I;
end;
writeln (‘max=’, max, ‘maxI=’,maxI);
end.
4.14. Дан массив, состоящий из 30 элементов, найти второй положительный элемент. Var
a: array [1..10] of integer;
i,k:integer;
begin
for i:= 1 to 10 do
readln (a[i]);
k:=0;
for i:= 1 to 10 do
if a[i]> 0 then k:=k+1;
if k=2 then
writeln(a[i]);
end; end.
4.15. Дан массив, состоящий из 50 элементов, найти предпоследнийнечетный элемент.
Var
a: array [1..10] of integer;