HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ОФФТОП > Болталка
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Тупой вопрос ( или я )
  #1  
Старый 23.12.2009, 01:28
Huster
Познающий
Регистрация: 08.05.2009
Сообщений: 46
С нами: 8953552

Репутация: 55
По умолчанию Тупой вопрос ( или я )

Привет ачат. Прошу вашей помощи, просветите "умного" студента
Есть такое задание:
Цитата:
написать программу на С++ которая бы Вычислила 18 значений функции y=ax^2+bx+c на отрезке [e,f], сохранила их в массиве Y и определила, имеет ли уравнение y=ax^2+bx+c на отрезке [e,f] хотя бы один корень.
Саму програмку написать не сложно, минут 5-10. Вот только я самого смысла не понимаю. Как можно узнать имеет ли уравнение y=ax^2+bx+c на отрезке [e,f] хотя бы один корень. ?
Типа эти 18-ть значений которые я сохранил в векторе Y попеременно подставлять в уравнение и проверять не равно ли оно нулю ? Или как ?
p,s почему не в раздел кодинга ? Потому что я не прошу написать программу
 
Ответить с цитированием

  #2  
Старый 23.12.2009, 01:34
Fepsis
Постоянный
Регистрация: 17.09.2008
Сообщений: 562
С нами: 9288386

Репутация: 536


По умолчанию

Проверяй меняют ли знак значения функции... Если в массиве имеются как положительные, так и отрицательные значения, то в силу непрерывнсти функции y=ax^2+bx+c, она будет иметь корень....

Кстати говоря, если знак не меняется, это ещё не значит, что корней нет... Тут нужно проверить ещё одно условие (монотонность) то есть упорялоченность твоего массива значений по возрастанию или убыванию...

И вообще не граматно составлена задача с математической точки зрения.. На сто процентов нельзя будет сказать что нет корней на отрезке если значения окажутся все одного знака и упорядоченны по возрастанию и убыванию...
Но вот если знаки разные или значения не упорядочены, то 100% есть хотябы один корень...

Последний раз редактировалось Fepsis; 23.12.2009 в 01:42..
 
Ответить с цитированием

  #3  
Старый 23.12.2009, 01:46
Huster
Познающий
Регистрация: 08.05.2009
Сообщений: 46
С нами: 8953552

Репутация: 55
По умолчанию

Цитата:
Тут нужно проверить ещё одно условие (монотонность) то есть упорялоченность твоего массива значений по возрастанию или убыванию...
Не, первого условия я думаю достаточно так как в задании написано :
имеет ли уравнение y=ax^2+bx+c НА ОТРЕЗКЕ [e,f]. Тоесть все что дальше отрезке, мне пофиг
В общем, спасибо, щас допишу програмку
 
Ответить с цитированием

  #4  
Старый 23.12.2009, 02:06
Cthulchu
Познавший АНТИЧАТ
Регистрация: 22.11.2007
Сообщений: 1,822
С нами: 9720289

Репутация: 1549


По умолчанию

задача имеет однозначное решение. Мне лень обьяснять аналитически, посему я покажу графическое решение.
Корнями, удовлетворяющими задачу будет пересечение графика квадратного уравнения с отрезком.
18 раз - это 18 раз задаются новые параметры уравнения. Логично предположить, что отрезок будет статически задан один для одного массива, хотя это не важно. Если реализуешь аналитическое общее решение, то тебе не надо будет долго думать как переделать код под препода, да и препод поймет, что, по сути, ты все знаешь.
 
Ответить с цитированием

  #5  
Старый 23.12.2009, 21:06
Fepsis
Постоянный
Регистрация: 17.09.2008
Сообщений: 562
С нами: 9288386

Репутация: 536


По умолчанию

Да, со вторым условием я намудрил ...

Цитата:
Сообщение от Cthulchu  
задача имеет однозначное решение.
В задаче требуется сделать вывод о наличии (отсутствии) корней на отрезке... Как я понял вывод этот должен быть сделан как раз из этих 18-ти значений функции на отрезке, а иначе, какой смысл их находить... Так вот по 18-ти значениям нельзя делать вывод об отсутствии корней... Я приведу пример с конкретными значениями:

Цитата:
написать программу на С++ которая бы Вычислила 18 значений функции y=x^2+2.8x+1.9 на отрезке [-18,-1], сохранила их в массиве Y и определила, имеет ли уравнение y=x^2+2.8x+1.9 на отрезке [-18,-1] хотя бы один корень.
Так вот, программа находит значения функции в 18-ти точках (шаг не обязательно одинаковый, просто для примера)

Цитата:
x : y
-18 : 275,5
-17 : 243,3
-16 : 213,1
-15 : 184,9
-14 : 158,7
-13 : 134,5
-12 : 112,3
-11 : 92,1
-10 : 73,9
-9 : 57,7
-8 : 43,5
-7 : 31,3
-6 : 21,1
-5 : 12,9
-4 : 6,7
-3 : 2,5
-2 : 0,3
-1 : 0,1
Видим, что значение функции не меняет знак.. Какой вывод сделает программа..?! что на отрезке [-18,-1] уравнение x^2+2.8x+1.9=0 не имеет корней... Хотя на самом деле корни есть и даже 2.. Т.к. на промежутке (-2, -1) функция 2 раза меняет знак...
 
Ответить с цитированием

  #6  
Старый 23.12.2009, 23:25
gisTy
Постоянный
Регистрация: 24.05.2008
Сообщений: 589
С нами: 9454841

Репутация: 504


По умолчанию

а что мешает найти корни уравнения и проверить их на вхождение в промежуток [e;f]? или я чего-то не понял?
 
Ответить с цитированием

  #7  
Старый 24.12.2009, 01:33
Retro
Новичок
Регистрация: 04.06.2009
Сообщений: 3
С нами: 8913424

Репутация: 6
По умолчанию

Что мешает повторить курс математики за 7 класс, и посмотреть как находятся корни 3-хчлена? http://ru.wikipedia.org/wiki/Теорема_Виета
Если кратко - существует два корня если дискриманант больше нуля, одно - если Д равен нулю, и комплексные решения если он меньше нуля.

Последний раз редактировалось Retro; 24.12.2009 в 01:41..
 
Ответить с цитированием

  #8  
Старый 24.12.2009, 01:57
Huster
Познающий
Регистрация: 08.05.2009
Сообщений: 46
С нами: 8953552

Репутация: 55
По умолчанию

Цитата:
а что мешает найти корни уравнения и проверить их на вхождение в промежуток [e;f]? или я чего-то не понял?
Оо...точно, а я об этом и не подумал даже.
ну да лан, уже сделал как сделал. Если надо будет переделать - переделаю с дискриминантом
Цитата:
Видим, что значение функции не меняет знак.. Какой вывод сделает программа..?! что на отрезке [-18,-1] уравнение x^2+2.8x+1.9=0 не имеет корней... Хотя на самом деле корни есть и даже 2.. Т.к. на промежутке (-2, -1) функция 2 раза меняет знак...
Тогда по идее надо просто большее количество значений найти. Ну к примеру, 50.... хотя не, это тупо. Если отрезок большой то и 50 и 1000 значений не хватит.... кароче, надо дискриминант
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сетевой этикет (Перед тем, как задать вопрос хакеру) satana-fu Статьи 7 21.10.2009 07:40
прикол пришел на асю mesejj Болталка 11 01.05.2009 21:27
Боевые вирусы (БВ). TTN_ Мировые новости. Обсуждения. 2 03.10.2006 08:30



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.