Предмет: Информатика, автор: reihard

Помогите, пожалуйста с программированием!
1.Из массива Р, содержащего 10 элементов, сформировать массив Т по правилу:
a. Т(к)=к*Р(к), где к – чётные, Т(к)=Р(к)/к, где к – нечётные.

2. В массиве, содержащем 10 элементов, умножить на заданное число максимальный отрицательный элемент.

Ответы

Автор ответа: Tom126666
0
var p,t: array [1..10] of real;
k:integer;
begin
for k:=1 to 10 do
readln( p[k]);
for k:=1 to 10 do begin
if k mod 2=0 then t[k]:=k*p[k];
if k mod 2=1 then t[k]:=p[k]/k;
end;
for k:=1 to 10 do
writeln (p[k]);
end.
Автор ответа: Tom126666
0
Функция mod применима только для типа чисел integer
Автор ответа: petyaGavrikov
0
1.
begin
write('  ');
var P:=ArrRandom(10,10,90).Println('     ');
var T:=P.Select((x,k)->(k+1) mod 2=0?real(x*(k+1)):real(x/(k+1))).ToArray;
for var i:=0 to T.Length-1 do write(T[i]:7:2);
end.

Пример:
  50     37     37     15     40     86     64     41     53     46
  50.00  74.00  12.33  60.00   8.00 516.00   9.14 328.00   5.89 460.00

2.
begin
var k:=ReadInteger('k = ');
var a:=ArrRandom(10,-20,20).Println;
var m:=a.Where(x->x<0).Max;
writeln('Макс.отрицательное = ',m,', ',m,'*',k,'=',m*k);
end.

Пример:
k =  5
15 10 -7 -13 -4 16 -12 -2 9 -12
Макс.отрицательное = -2, -2*5=-10
Похожие вопросы
Предмет: Литература, автор: ospennikovstanislav
Предмет: Алгебра, автор: SonyMillerman290