Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.58
fenixgaurd
0 / 0 / 0
Регистрация: 13.02.2012
Сообщений: 57
#1

Метод деления отрезка пополам - C (СИ)

13.02.2012, 20:46. Просмотров 1975. Ответов 3
Метки нет (Все метки)

Доброго времени суток, друзья!

Прошу Вас помочь мне в одной задаче. Собственно задача заключается в следующем, необходимо написать программу на языке С (не С++) для вычисления ∛3 методом деления отрезка пополам. Пытался мучился, но никак не получается, попробовал решить cosx=x, сделал получилось, а вот с этим проблемы, пожалуйста помогите, подкиньте идейки. Язык изучаю недавно, поэтому, если Вам не составит труда написать все более понятнее. Буду очень благодарен, тем людям кто хоть как-то сможет мне помочь! Спасибо за внимание!

Вот программа с cosx=x, должна быть правильная по идеи:
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
#include <stdio.h>
#include <math.h>
int main (void)
 
{
    float a=0,b=2,c,e,t;
    printf("Enter e>0");
    scanf("%f",&e);
    c=(a+b)/2;
    while (((cos(c)-c)!=0)&&((b-a)>=e))
    {
        c=(a+b)/2;
        t=(cos(c)-a)*(cos(c)-c);
        if(t>0)
        a=c;
        if(t<0)
        b=c;
    }
 
    if((cos(c)-c)!=0)
    c=(a+b)/2;
    printf("c=%g",c);
 
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.02.2012, 20:46
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Метод деления отрезка пополам (C (СИ)):

Решение уравнения методом деления отрезка пополам
Составить программу, которая находит решение x0 уравнения x-2cosx=0 на отрезке...

Решение нелинейного уравнения методом деления отрезка пополам
X^3+0.2*X^2+0.5*X-2=0 Вот код, не пойму, что сделал не так... #include...

Найти корень уравнения методом деления отрезка пополам
Найти какой нибудь корень уравнения -2.4 x^3 - 28.512 x^2 - 40.6272 x + 44.928...

Решение нелинейного уравнения методом деления отрезка пополам (цикл While)
Обчислить уровнение {e}^{-x}^{2}=x-1 способом деления отрезка пополам...

Отыскать корень уравнения f(x)=0 на заданном интервале методом деления отрезка пополам
1. Задан многочлен f(x) и известно, что f(a)f(b)&lt;0. Требуется отыскать корень...

Рекурсивная функция root: нахождение корня уравнения методом деления отрезка пополам
Помогите пожалуйста описать рекурсивную функцию root(f,a,b,eps), которая...

3
-comrade-
357 / 358 / 167
Регистрация: 11.06.2010
Сообщений: 703
14.02.2012, 16:48 #2
Цитата Сообщение от fenixgaurd Посмотреть сообщение
∛3
что это за символ?
0
vladislavchick
35 / 35 / 8
Регистрация: 22.05.2010
Сообщений: 107
14.02.2012, 17:41 #3
Подозреваю, кубический корень из 3

Добавлено через 1 минуту
Решаем этим же методом уравнение x^3 = 3
0
fenixgaurd
0 / 0 / 0
Регистрация: 13.02.2012
Сообщений: 57
15.02.2012, 17:12  [ТС] #4
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
int main (void)
{
    float a=1,b=2,c,e,t;
    printf("Enter e=");
    scanf("%f",&e);
    c=(a+b)/2;
    while ((c*c*c-3!=0)&&((b-a)>=e))
    {
        c=(a+b)/2;
        t=((a*a*a-a)*(c*c*c-c));
        if(t>0)
        a=c;
        if(t<0)
        b=c;
    }
 
    if((c*c*c-c)!=0)
    c=(a+b)/2;
    printf("c=%g",c);
    return 0;
}

Ребят, помогите, написал, а вот когда ввожу погрешность 0.05 он не считает, где тут ошибка?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.02.2012, 17:12
Привет! Вот еще темы с решениями:

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

Найти максимальный элемент массива, используя метод деления пополам
Есть задача.Найти максимальный элемент массива используя метод деления пополам...

Решение уравнения методом деления пополам
Доброго времени суток снова обращаюсь к вам за помощью возникла некоторая...

Поиск корня уравнения методом деления пополам
#include &lt;stdio.h&gt; #include &lt;math.h&gt; int popolam(double a,double b,double...


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

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

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