Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Анализ синуса или косинуса

Автор: Pangolin 8.06.2006 22:59

Помогите пожалуйста с прогой.

Вообщем надо проанализировать тригонометрическую функцию на инъективность и сюръективность.

Сюръективность - У Y есть X (может быть несколько)
Инъективность - каждому Y соответствует только 1 X

На вход подается интервал по X и интервал по Y.

Проблема в том, что не знаю как найти есть ли одинаковые значения Y на интервале X

Автор: klem4 9.06.2006 11:52

Ну первое что приходит - это протабулировть сначала полностью ф-ю, сохранив все значения функции в массив, а потом работать с ним (проверить, есть ли одинаковые элементы)

Второй вариант :

n := 0;
x := start;

... // цикл табуляции

// получаем значение в точке x

y := f(x);

// проверяем были ли уже такие элементы

i := 1;
while (i <= n) and (arr[i] <> y) do inc(i);

if i <= n then begin
writeln('Повтор !')
exit; // выходим их цикла табулирования
end else begin
// иначе добавляем новое полученное значение в массив
inc(n);
arr[n] := y;
end;

x := x + step; // переходм к следующей точке табулирования
...// цикл табуляции



вот как-то так ;)

Автор: volvo 9.06.2006 13:00

Можно попробовать определить, могут ли вообще быть на заданном отрезке точки с одинаковыми Y при разных X... Это, очевидно, может произойти только тогда, когда в заданном интервале по X есть точка перегиба функции... Если она есть, то проверять дальше способом klem4, если же ее нет - то не стОит и проверять, ответ будет НЕТ...

Автор: Pangolin 9.06.2006 17:00

Простите меня за неграмотность, но что значит "Протабулировать"? Т.е найти все значения функции и занести их в массив? и после этого проверять на одинаковые элементы...


Тогда на сколько должен увелиитваться X?
Какой же тогда массив получится, если этих значений функции будет... много...

Автор: мисс_граффити 10.06.2006 1:53

Цитата(volvo @ 9.06.2006 9:00) *

Можно попробовать определить, могут ли вообще быть на заданном отрезке точки с одинаковыми Y при разных X... Это, очевидно, может произойти только тогда, когда в заданном интервале по X есть точка перегиба функции... Если она есть, то проверять дальше способом klem4, если же ее нет - то не стОит и проверять, ответ будет НЕТ...

почему перегиба?
до фига функций, монотонно выпуклых(вогнутых), но одному у соответствует несколько х.
скорее уж тут о точках локального минимума/максимума говорить надо...

Автор: volvo 10.06.2006 2:08

Цитата(мисс_граффити @ 9.06.2006 21:53)
скорее уж тут о точках локального минимума/максимума говорить надо...
ypriamii.gif Вот что значит думать о другом, когда пишешь ответ на форум smile.gif Естественно, имелись в виду точки экстремума...

Автор: skAmZ 13.06.2006 4:14

Модераторы тут строгие, ну чтож)) жаль)) тогда выкладываю прогу. График синуса с вводимыми границами по оси ОХ и ОУ.


Прикрепленные файлы
Прикрепленный файл  Lab4.pas ( 2.84 килобайт ) Кол-во скачиваний: 197