Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

метод дихотомии - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вывести строку, содержащую символы стро-ки S, между которыми вставлено по одному пробелу. http://www.cyberforum.ru/cpp-beginners/thread537361.html
String11. Дана непустая строка S. Вывести строку, содержащую символы стро-ки S, между которыми вставлено по одному пробелу.Помогите решить,кто знает!
C++ Структура - прибыль торговых центров ЗАДАЧА Сверхприбыль торговых центров: *название товара *название магазина, в котором продается товар *цена товара в магазине (грн.) *средняя оптовая цена товара (грн.) *функция, возвращающая... http://www.cyberforum.ru/cpp-beginners/thread537339.html
Программная реализация алгоритма бинарного поиска C++
Всем привет! Помогите составить программу Задача: Выполнить программную реализацию алгоритма бинарного поиска. Код я нашел, но при компиляции появляется ошибка на отсутствие фала bios.h, и на...
C++ Вывести на печать элементы массива, значения которых не принадлежат промежутку
Помогите пожалуйста решить задачу на СИ. В одномерном массиве, состоящем из n вещественных элементов, – вывести на печать элементы массива, значения которых не принадлежат промежутку . Значения...
C++ Возведение в степени, не используя pow http://www.cyberforum.ru/cpp-beginners/thread537316.html
Как возвести в степень, не используя pow(a, b) ? И не пользуясь math.h
C++ FFT в bass.dll Доброго времени суток!Оговорюсь сразу я не программист и пишу программу методом "copy-past"))) ну некому больше ! К делу! для обработки звука посоветовали bass.dll-я во всем разобрался кроме... подробнее

Показать сообщение отдельно
ATEUCT
18 / 18 / 2
Регистрация: 28.02.2012
Сообщений: 35
03.04.2012, 07:21
если я правильно понял метод дихотомии, код должен быть таким:
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 <iostream>
#include <math.h>
#define pi 3.14
 
using namespace std;
 
double f( double x)
{
    return cos(x)*cos(x)-sin(x)*sin(x);
}
 
int main()
{
    double right = pi, left = 0;
    const double Pogreshnost = 1E-4; // точность
    while (right-left > Pogreshnost) {
       double mid = (left + right) / 2;
       if (f (mid)*f (right) > 0)
          right = mid;
       else
          left = mid;
    }
    cout << left << endl;
    return 0;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru