Заполнение и обработка массива значений - PascalABC.NET
Формулировка задачи:
Используя функцию F, построить массив у с элементами yk=F(k). Выполнить для
этого массива следующий поиск данных:
Вычислить сумму и произведение всех значений функции у, для которых выполняется
неравенство 0 < у < 3,2.
F=abs(cos(x*x)-0.5*abs(sin(3*x)-4))-4.44;
вот я написал программу по условию. извините за тупой вопрос, но ведь счетчик подставляет только целочисленные аргументы. => программа выдает не все результаты. подскажите, пожалуйста, как это исправить?
Решение задачи: «Заполнение и обработка массива значений»
textual
Листинг программы
program fun; var i:integer; y:array[-1000..1000] of real; s, p:real; function F(x:real):real; begin F:=abs(cos(x*x)-0.5*abs(sin(3*x)-4))-4.44; end; begin s:=0; p:=1; writeln('x y'); for i:=-1000 to 1000 do begin y[i]:=F(i/1000000); Writeln((i/1000000):0:3,' ', y[i]:5:3); if (y[i]>0) and (y[i]<3.2) then begin s:=s+y[i]; p:=p*y[i]; end; end; writeln('sum = ', s:3:2); writeln('p = ', p:3:2); end.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д