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

Найти корень уравнения методом половинного деления - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Отделить корень уравнения http://www.cyberforum.ru/cpp-beginners/thread915548.html
Отделить корень уравнения x^2-1/2=0
C++ При вводе слова выводится результат сколько в нем переходов от гласных к согласным и наоборот Требуется написать программу в которой будет 2 функции( мейн и ,,,) в которой при ввовде слова будет вовдится результат сколько в нем переходов от гласных к согласным и наоборот. Очень надо http://www.cyberforum.ru/cpp-beginners/thread915541.html
C++ Qt Creator or MSVC
Доброе утро. У меня вопрос, не хочу холивара, но стоит выбор между этими двумя IDE. То что qt кроссплатформенна - это я знаю, то что MSVC только для винды, тоже. Так же знаю что можно прикрутить qt к MSVC. Расскажите, кому что нравится, что лучше в плане отладки, в общем все-все как положительное так и отрицательное. Можно разбить по пунктам, к примеру: QT Creator + + ... -
Hex (3 byte) to Float C++
С внешнего устройства приходят данные 40 00 00, 40 80 00, 7F FF FF и тп. Известно, что 7 бит первого байта это знак (если равен 0-положительное число, 1 - отрицательное), 0-6 биты первого байта это порядок. Остальные биты это мантисса. Результат вычисляется по формуле = знак * ((мантисса/65536)*(2^(порядок-64))) Вот собственно код преобразования. Написан мной лично соблюдая традиции...
C++ Узнать экранные координаты точки http://www.cyberforum.ru/cpp-beginners/thread915520.html
Есть камера, есть точка в трехмерном пространстве. Координаты точки известны. Есть матрица камеры и матрица проекции - перспективная. Как мне узнать экранные координаты точки? Я беру координаты точки (вектор), умножаю на матрица вида, затем умножаю результат на матрицу проекции. в получившемся векторе (x,y,z,w), x/w - экранная координата по х (от -1 до 1), y/w - экранная координата по y (от -1...
C++ переключатель помогите с алгоритмом предположим есть переменная которая изначально равна 0 затем нажимаешь на обработчик case и она должна его менять на его 1 а если еще раз нажмешь он станет опять 0 и тд каким должен быть алгоритм? подробнее

Показать сообщение отдельно
isaak
101 / 38 / 9
Регистрация: 17.10.2010
Сообщений: 634
02.07.2013, 13:52     Найти корень уравнения методом половинного деления
-=ЮрА=- не мог бы ты на примере кода Olivеr показать проверку корректности ввода интервала while(fabs(a - b) > e && f(a)*f(b) < 0). Я сделал как ты советуешь, но ни какой проверки не происходит.
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
#include <iostream>
#include <cmath>
#include <functional>
#include <iomanip>
using namespace std;
 
double solve(function<double (double)> f, double a, double b, double eps)
{
    if (a > b) swap(a, b);
    while(fabs(a - b) > eps && f(a)*f(b) < 0) {
        double x = (a + b) / 2.0;
        if ( f(a) * f(x) < 0 )
            b = x;
        else a = x;
    }
    return (a + b) / 2.0;
}
 
int main()
{
    /*auto f1 = [](double x)->double { return 2 * pow(x, 2.0) - pow(0.5, x) - 3; };*/
    auto f1 = [](double x)->double { return x*x - 0.5; };
    cout << fixed << setprecision(11) << solve( f1, 0, 1, 0.001 );
    cin.get();
    return 0;
}
Если не сложно, заранее огромное спасибо.
 
Текущее время: 14:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru