Написать функцию, которая вычисляет количество и сумму элементов трехмерного массива X, лежащих в интервале [p,q]. C помощью подпрограммы вычислить количество и сумму элементов массивов A(5,6,4), B(3,8,2) и С(6,6,10), лежащих в интервале [0,5]. Элементы массивов рассчитываются по формулам: Aijk=kcos(j+4)+esin(i), Bijk =kcos(3.2j+4.2)+esin(1.5i), Cijk =kcos(12.4j+1)+esin(i+2.82).
я условие не понимаю...
Michael_Rybak
20.06.2007 22:31
Что именно ты не понимаешь?
Есть три трехмерных массива. Их значения определены формулами. Например, чтобы узнать значение ячейки (6, 6, 10) в массиве С нужно подставить i = 6, j = 6, k = 10 в формулу kcos(12.4j+1)+esin(i+2.82).
Тебе нужно написать процедуру, которая пробегает по трехмерному массиву, и каждый элемент проверяет на принадлежность заданному интервалу.
Элементы, для которых проверка выполнилось, тебе нужно посчитать и просуммировать.
Что именно не понятно?
P.S. поменяй, пожалуйста, заголовок темы на более информативный.
:-)~
20.06.2007 23:36
всмысле так:
function mass(s:double):double;
var
kol:byte;
e:double;
i,j,k:byte;
a:array[1..10,1..10,1..10]of double;
b:array[1..10,1..10,1..10]of double;
c:array[1..10,1..10,1..10]of double;
begin
e:=2.7;
s:=0;
k:=0;
for i:=1to5dofor j:=1to6dofor k:=1to4dobegin
a[i,j,k]:=k*cos(j+4)+e*sin(i);
if (a[i,j,k]>=0)and(a[i,j,k]<=5) then
s:=s+a[i,j,k];
inc(kol);
end;
for i:=1to3dofor j:=1to8dofor k:=1to2dobegin
b[i,j,k]:=k*cos(3.2*j+4.2)+e*sin(1.5*i);
if (b[i,j,k]>=0)and(b[i,j,k]<=5) then
s:=s+b[i,j,k];
inc(kol);
end;
for i:=1to6dofor j:=1to6dofor k:=1to10dobegin
c[i,j,k]:=k*cos(12.4*j+1)+e*sin(i+2.82);
if (c[i,j,k]>=0)and(c[i,j,k]<=5) then
s:=s+c[i,j,k];
inc(kol);
end;
writeln('koli4estvo:',k);
result:=s;
end;
var
s:double;
begin
s:=mass(s);
write('symma:',s:4:4);readln;
end.
???????????
volvo
20.06.2007 23:48
Не совсем... Тебе скорее всего надо в функции найти сумму и количество элементов ОДНОГО массива, а саму функцию вызывать 3 раза, с разными параметрами...
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.