Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Где ошибка в коде? (Реализация метода хорд)  (Прочитано 582 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн WhiteLedy

  • Автор темы
  • Любитель
  • *
  • Сообщений: 88
  • https://github.com/WhiteLaedyAnn
    • Просмотр профиля
(Нажмите, чтобы показать/скрыть)
это попытка реализации метода хорд для нахождения точки пересечения графиков два в степени икс плюс один и графика функции икс в пятой.
просто когда ввожу точность вычисления 0.0001 выдаёт какую-то муть ???

если брать пример из википедии тоже ничего вразумительного не выдаёт
(Нажмите, чтобы показать/скрыть)
Самое интересное что почти то же самое но на си++ отлично работает(см. коммент ниже)
« Последнее редактирование: 30 Марта 2014, 09:29:53 от WhiteLedy »
*/ ///______I BANGBANG   
) . /_(_)             
/__/

Оффлайн Señor_Gaga

  • Забанен
  • Активист
  • *
  • Сообщений: 878
  • Ubuntu 12.04LTS & Linux Mint 13LTS "Maya"
    • Просмотр профиля
(Нажмите, чтобы показать/скрыть)
это попытка реализации метода хорд для нахождения точки пересечения графиков два в степени икс плюс один и графика функции икс в пятой.
просто когда ввожу точность вычисления 0.0001 выдаёт какую-то муть ???


Интересно было бы для начала посмотреть вывод.

Оффлайн WhiteLedy

  • Автор темы
  • Любитель
  • *
  • Сообщений: 88
  • https://github.com/WhiteLaedyAnn
    • Просмотр профиля
0.000000e+00
выводит при вводе 0.001
при работе программы №2( с примером функции из википедии)
при работе первой выдаёт другое значение -2.147484е+09
а согласно той же википедии при работе программы номер два должно выводиться число около пяти, ну, примерно, пять
« Последнее редактирование: 27 Марта 2014, 20:06:25 от WhiteLedy »
*/ ///______I BANGBANG   
) . /_(_)             
/__/

Оффлайн Señor_Gaga

  • Забанен
  • Активист
  • *
  • Сообщений: 878
  • Ubuntu 12.04LTS & Linux Mint 13LTS "Maya"
    • Просмотр профиля
Прикинул как это выглядит графически:


У вас мне кажется где-то ошибка в формуле. Где, пока не вижу.

Пользователь решил продолжить мысль 27 Марта 2014, 20:56:53:
Возможно ошибка в строке 6
return (pow(2,x))+1)-pow(x,5);

Так правильно?
return (pow(x,2))+1)-pow(x,5);

Пользователь решил продолжить мысль 27 Марта 2014, 21:34:23:
Думаю топикастер зачет не сдаст.

В первых двух строках директивы #include записаны с ошибкой.

Вы хоть компилировать-то эту прогу пробовали?
« Последнее редактирование: 27 Марта 2014, 21:34:23 от Señor_Gaga »

Оффлайн WhiteLedy

  • Автор темы
  • Любитель
  • *
  • Сообщений: 88
  • https://github.com/WhiteLaedyAnn
    • Просмотр профиля
изначально задача была найти пересечение функций (2^x)+1 и x^5 у меня нет проблемы с формулой

Пользователь решил продолжить мысль 27 Марта 2014, 21:53:42:


Так правильно?
return (pow(x,2))+1)-pow(x,5);

для нахождения точки пересечения графиков два в степени икс плюс
нет,как я уже говорила два в степени икс а не икс в степени два

Пользователь решил продолжить мысль 27 Марта 2014, 21:55:25:


В первых двух строках директивы #include записаны с ошибкой.

code::blocks это ест

Пользователь решил продолжить мысль 27 Марта 2014, 22:23:26:
Вот что странно
(Нажмите, чтобы показать/скрыть)
моя реализация

(Нажмите, чтобы показать/скрыть)
реализация на плюсах
и последняя работает правильно а моя выдаёт вместо числа 0.6  число 6  :-\
« Последнее редактирование: 30 Марта 2014, 09:30:35 от WhiteLedy »
*/ ///______I BANGBANG   
) . /_(_)             
/__/

Оффлайн WhiteLedy

  • Автор темы
  • Любитель
  • *
  • Сообщений: 88
  • https://github.com/WhiteLaedyAnn
    • Просмотр профиля
Проблема решена:
(Нажмите, чтобы показать/скрыть)
я заменила на %lf то, что было %le и всё заработало
*/ ///______I BANGBANG   
) . /_(_)             
/__/

 

Страница сгенерирована за 0.035 секунд. Запросов: 25.