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

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

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

 
 Ответить  Открыть новую тему 
> Анализ синуса или косинуса, сюръкция, инъекция
сообщение
Сообщение #1


Новичок
*

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

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


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

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

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

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

Проблема в том, что не знаю как найти есть ли одинаковые значения Y на интервале X
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Perl. Just code it!
******

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

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


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

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

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 -


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






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


Новичок
*

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

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


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


Тогда на сколько должен увелиитваться X?
Какой же тогда массив получится, если этих значений функции будет... много...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

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


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

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

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


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Гость






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


Новичок
*

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

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


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

Сообщение отредактировано: skAmZ -


Прикрепленные файлы
Прикрепленный файл  Lab4.pas ( 2.84 килобайт ) Кол-во скачиваний: 93
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 




- Текстовая версия 16.12.2017 8:32
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"