Найти произведение элементов с четными индексами одномерного массива Е размерности k (k меньше или равно 25).
Если возможно, представить схему алгоритма решения.
Есть вот такой пример:
Задание: Найти среднее арифметическое последних k элементов одномерного массива Z размерности n (n меньше или равно 20).
program lab4;
{Лабораторная работа N 4}
var
z :array [1..20] of integer;
k,n,i :integer;
sr :real;
begin
write('Введите размерность массива Z (n<=20) : ');
readln(n);
write('Введите k : ');
readln(k);
writeln('Введите массив Z :');
for i:=1 to n do {Вводим элементы массива Z}
begin
write('Z[',i,'] : ');
readln(z[i]);
end;
sr:=0;
for i:=n-k+1 to n do {Находим сумму последних k элементов}
sr:=sr+z[i];
sr:=sr/k; {Вычисляем среднее арифметическое}
writeln('Среднее арифметич. последних ',k,' элементов = ',sr:5:2);
end.
проходиш по массиву со сщетчиком елеметов и не нулевые переписуеш(или указателями...) в другой массив...
Я ничего не понял. Вообще не разбираюсь в программировании! Перешел из одного колледжа в другой и теперь надо получить зачет по информатике, а в моём старом колледже информатики у нас вообще не было!
write('Введите размерность массива Z (n<=25) : ');
readln(n);
pr:=1;
for i:=1 to n do readln(E[i]);
for i:=1 to n do begin
if not odd(i) then begin
pr:=pr*E[i];
end;
end;
writeln(pr:6:2);
var
E:Array of Byte;
i,k,multiplication:Integer;
begin
writeln('Ââåäèòå ðàçìåðíîñòü ìàññèâà k<255');
readln(k);
SetLength(E,k);
write('Ââåäèòå ìàññèâ');
for i:=0 to k-1 do
readln(E[i]);
multiplication:=1;
for i:=0 to k-1 do
if i mod 2 = 0 then
multiplication:=multiplication*E[i];
writeln(multiplication);
readln
end.
uses
SysUtils;
а в чем трабла?
В итоге так чтоли получается?
uses
crt;
var
E :array [1..20] of integer;
k,i :integer;
pr :real;
begin
write('Введите размерность массива E (k<=25) : ');
readln(k);
writeln('Введите массив E :');
for i:=1 to k do {Вводим элементы массива E}
begin
write('E[',i,'] : ');
readln(E[i]);
end;
pr:=1;
for i:=1 to k do if not odd(i) then pr:=pr*E[i];
writeln(pr:6:2);
END.