![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 11.04.2013
Сообщений: 3
|
![]()
Здравствуйте. Мне срочно нужно написать программу для решения задачи, но я не могу с ней справиться, я новичок в этом деле, задача для меня очень сложная. Пробовала по-всякому, не получается ничего... Условие попробую записать понятно, там сложные формулы, если что-то будет непонятно, спрашивайте
Способ последовательных приближений позволяет находить корень пятой степени из положительного числа a приближенно по формуле Xn+1 = 4/5* Xn + a/ 5*(Xn^4) . При этом разность между xn и (a^1/5) по абсолютной величине не превосходит 5/4*a*|Xn+1 - Xn| . Составить программу вычисления корня пятой степени из числа a с точностью до 10-k с заданным значением k, принимая X0 = (здесь должен быть знак системы) min(2*a, 0.95), a<=1 ; a/5, 1<a<25; a/25, a>25 Помогите пожалуйста, если кто-нибудь сможет, без этой программы не ставят зачет. Я попыталась что-то написать, вот код, который у меня есть Код:
Заранее спасибо Последний раз редактировалось Stilet; 11.04.2013 в 18:22. |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
![]()
Напишите вначале словами - что Вы хотите делать (то есть, что бы Вы делали, применяя этот метод на бумажке). Потом будем разбираться, как перевести это с русского на C++.
Решение задачи состоит из трёх частей: 1) Ввод данных - двух вещественных чисел. 2) Вычисление первого приближения (реализация того самого ветвления). 3) Последовательности "проверить текущее приближение - улучшить текущее приближение", повторяемой до достижения просветления. Первая часть есть, но a почему-то может быть только целым (она вводит переменные a и k, я бы ещё на этом шаге ввёл переменную eps, равную 10^(-k)). Вторая часть... есть, она устанавливает значение переменной xn. Третьей части нет, поэтому сначала напишите её словами. Обратите внимание: f = pow(a, 1.0/5.0) Вам вычислять не надо - разве что вывести под конец, для справки. Корень Вы считаете другим способом, не опираясь на "готовую" функцию ни в какой мере. |
![]() |
![]() |
![]() |
#3 |
Регистрация: 11.04.2013
Сообщений: 3
|
![]()
Спасибо за ответ, немного полегче стало, некоторые вещи прояснились) Ну вот как раз с этой самой третьей частью я никак не могу разобраться, не пойму, куда вставить этот кусок, где сказано про разность между Xn и корнем 5-й степени из а, и еще мне не совсем понятно именно то, как вычислить корень 5-й степени из а с точностью до 10^-k. Тут как раз тот случай, когда я не совсем пойму, что от меня требуется, поэтому и не получается реализовать в С++
|
![]() |
![]() |
![]() |
#4 | |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
![]() Цитата:
Код:
Вопрос о том, почему это так, находится в ведении математического анализа, а не программирования. Только перед входом в этот цикл надо первый раз посчитать Xn+1. |
|
![]() |
![]() |
![]() |
#5 |
Регистрация: 11.04.2013
Сообщений: 3
|
![]()
Ну да, что посчитать Xn+1 нужно, это я поняла. Да, я как раз пробовала именно так, рак вы описали делать, только не все учла. Спасибо большое за помощь, думаю, теперь разберусь)
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вычисление функции, используя улучшенный метод последовательных приближений (Вегстейн) на си | lullaby | Помощь студентам | 2 | 17.01.2013 14:36 |
задача паскаль, скорее всего массив+рекурсия(хотя у меня другой способ) | IvaniuS | Помощь студентам | 10 | 23.12.2009 15:34 |
Метод послед. приближений. Pascal | Кэмерон | Помощь студентам | 7 | 24.05.2009 15:39 |