IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> вычисление произведения, вычисление произведения
сообщение
Сообщение #1


Бывалый
***

Группа: Пользователи
Сообщений: 198
Пол: Мужской

Репутация: -  1  +


Напишите подпрограмму вычисления произведения вида (прикрепил) где u – заданный вектор, N – верхний предел интегрирования.
т.е. U и N просто числа?
Прикрепленное изображение
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Поскольку Ui - то U - это массив, а N - его размер ...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Знаток
****

Группа: Пользователи
Сообщений: 303
Пол: Мужской
Реальное имя: Роман

Репутация: -  2  +


Иными словами, вектор - это одномерный массив. И в задании подразумевается, что он задан изначально (или вводится пользователем).


--------------------
Romiras HomeLab- материалы и статьи по разработке ПО, моделирование алгоритмов, обработка и анализ информации, нейронные сети, машинное зрение и прочее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Бывалый
***

Группа: Пользователи
Сообщений: 198
Пол: Мужской

Репутация: -  1  +


понял, спасибо
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Бывалый
***

Группа: Пользователи
Сообщений: 198
Пол: Мужской

Репутация: -  1  +


не пойму, что я не так делаю...
var N,i,x:integer;
U:array [1..100] of integer;
function mas(U:array of integer):integer;
begin
for i:=1 to N do
x:=x*(1-sqr(U[i]));
end;
begin
x:=1;
write('введите N = ');
readln(N);
randomize;
for i:=1 to N do
U[i]:=2+random(4);
for i:=1 to N do
write(U[i],' ');
mas(U);
writeln ('произведение равно = ',x);
readln;
end.

результат неверный...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


function mas(U:array of integer):integer;
Это у тебя открытый массив, нумерация которого начинается с нуля. А в функции ты работаешь с обычным. У него с 1-цы.
Как-то так:


type
massiv=array [1..100] of integer;
var
n,q,i:integer;
U:massiv;
function mas(n1:integer; U:massiv):integer;
var
j,t,x:integer;
begin
x:=1;
for j:=1 to N1 do
begin
t:=1-sqr(U[j]);
x:=x*t;
end;
mas:=x;
end;

begin
write('??????? N = ');
readln(N);
randomize;
for i:=1 to N do
U[i]:=2+random(4);
for i:=1 to N do
write(U[i],' ');
q:=mas(n,U);
writeln ('???????????? ????? = ',q);
readln;
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Бывалый
***

Группа: Пользователи
Сообщений: 198
Пол: Мужской

Репутация: -  1  +


аа, вот оно что! спасибо good.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


> function mas(n1:integer; U:massiv):integer;

Тогда уж const U: massiv
Зачем лишний раз массив в стек копировать?


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 26.10.2020 21:24
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name