Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
grinch92
0 / 0 / 0
Регистрация: 14.03.2012
Сообщений: 5
#1

Функция: найти все корни, используя метод касательных

14.04.2012, 01:04. Просмотров 915. Ответов 1
Метки нет (Все метки)

Здравствуйте,помогите с программой пожалуйста. Суть задачи такова :для функции Название: Безымянныйч.jpg
Просмотров: 161

Размер: 7.4 Кб найти все корни используя метод касательных.Я вот набросал кое-что,но выводит почему то только один корень..Что не так?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#include <cstdlib>
#include <iostream>
#include <math.h>
#define e 0.0001
using namespace std;
 
int fact(double x) {
 int y=1;
 for (int k = 1; k <= x; k ++)
 y=y*k;
 return y;
}
 
float f(float x){
 float F;
 for (int k = 0; k <= 10; k ++)
 { 
 F+=pow(-1,k)*(((float)(fact(19-k)))/((float)(fact(k)*fact(20-2*k))))* pow(4* pow(x,2),10-k);
 }
 return F*10;}
 
float f1(float x){
 float F;
 for (int k = 0; k <= 10; k ++)
 { 
 F+=pow(-1,k)*(((float)(fact(19-k)))/((float)(fact(k)*fact(20-2*k))))*pow(4,10-k)*2*(10-k)* pow(x,2*(10-k)-1);
 }
 return F*10;}
 
float f2(float x){
 float F;
 for (int k = 0; k <= 10; k ++)
 { 
 F+=pow(-1,k)*(((float)(fact(19-k)))/((float)(fact(k)*fact(20-2*k))))*pow(4,10-k)*2*(10-k)*(2*(10-k)-1)* pow(x,2*(10-k)-2);
 }
 return F*10;}
 
float kos()
{ float a,b,x,dx;
int k=0;
if (f(a)*f2(a)>0) {
    dx=b;
}
else dx=a;
do {
    dx-=f(dx)/f1(dx);
        k++;
 }
 while (fabs(f(dx))>= e);
return dx;
}
 int main() {
    float a,b,x;
    int k=0;
cout<<("Vvedite a: ");
cin>>a;
cout<<("Vvedite b: ");
cin>>b;
cout<<(" metod kasatelnuh");
x=kos();
cout<<("\nZnachenie kornya na zadannom promejutke = ")<<x;
cout<<("\nKollichestvo iteracui = ")<<k;
                system("PAUSE");
        return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.04.2012, 01:04
Ответы с готовыми решениями:

Найти корни уравнений ax^3+bx^2+cx=0 и y^3-ay^2-b=0, используя процедуру. Есть ли у этих уравнений совпадающие корни?
Помогите пожалуйста решить данную задачу, на тему программирование с...

Исследовать итерационный метод- метод касательных для решения нелинейных уравнений
прочитал много всего , но сам пример реализовать никак не могу , кто может...

Задана функция x^3 (частный случай кубического полинома). Найти корни.
Задана функуия x^3 (частный случай кубического полинома). Найти корни. При...

Как найти все корни уравнения?
Программа находит решение уравнения методом деления отрезка пополам. Но на...

Найти все целые корни уравнения
Найти все целые корни уравнения ах^3 + bх^2 + сх + d = 0, где а, b, с и d —...

1
UFO94
264 / 253 / 23
Регистрация: 04.04.2012
Сообщений: 546
14.04.2012, 12:15 #2
Ээ.... Хорошо. Ты ввел a и b c клавиатуры. А потом? В функции kos ты обьявил новые a и b, и их даже не инициализировал. Убери из функции kos обьявление a и b и поставь их в аргументы функции. А дальше посмотрим.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.04.2012, 12:15

Найти все корни уравнения на заданном интервале
Помогите написать программу буду очень признателен) В ходе выполнения...

Найти все целые корни кубического уравнения
Найти все целые корни уравнения ах3 + bх2 + сх + d = 0, где а, b, с и d —...

Найти все корни уравнения двумя способами
f(x)=2*x*x*x+3*x*x-5*x-6=0 Для данного уравнения провести его предварительный...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru