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

Метод золотого сечения.исправьте ошибку пожалуйста - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Подсчет частоты алфавита http://www.cyberforum.ru/cpp-beginners/thread1041174.html
Доброго времени суток. Как посчитать в тексте из файла частоту алфавита(сколько раз каждый символ встречается в приведенном тексте)? Я понимаю, что мы открываем 2 файла: в 1 изначальный текст, в...
C++ Выбор одного варианта из двух Добрый вечер! Помогите, пожалуйста, не совсем понял, как с оператором if сделать выбор на вывод подходящего условия. Имеется условие: if (a >b) c=m; else if(a <b) c=b; Как сделать так, что... http://www.cyberforum.ru/cpp-beginners/thread1041154.html
C++ Работа с изображением в консольном приложении
Срочно братья программисты, прошу о помощи! Волнуют три вопроса, а еще больше на них ответы (подробные). 1. Функция MakePalette. Принцип работы, результат и т.д. 2. Хранение данных изображения в...
Составьте программу, которая вычисляет сумму чисел от 1 до 10 C++
Составьте программу, которая вычисляет сумму чисел от 1 до 100. помогите пожалуйста составить программу с++ пожалуйста
C++ Разработать класс large http://www.cyberforum.ru/cpp-beginners/thread1041142.html
Помогите, решить задачу. Длинную арифметику перечитал уже несколько десятков раз, но все равно не понял. Небольшой исходник по первой части я уже сделал..., а дальше тупик.. В с++ почти ноль....
C++ Синтаксис математического выражения С++ Задание звучит так : "Создать программу, анализирующую правильность записи арифметического выражения с точки зрения синтаксиса С++. Арифметическое выражение задается строковой переменной и вводится... подробнее

Показать сообщение отдельно
sanekjo
0 / 0 / 0
Регистрация: 24.10.2013
Сообщений: 11

Метод золотого сечения.исправьте ошибку пожалуйста - C++

14.12.2013, 16:47. Просмотров 866. Ответов 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
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <locale.h>
float f(float x) {return 0.996515 * x*x - 0.016035 * x - 0.018121;}
int main(void) {
    int i = 0;
    float a, b, g=0.618, x1, x2,xm;
    float eps;
    setlocale(LC_ALL, "Russian");
    printf("Ввод отрезка [a, b] и точности eps:\n");
    scanf("%f%f%f",&a,&b,&eps);
    x1=b-(b-a)/g;
    x2=a+(b-a)/g;
    while (abs (a-b) > eps) {
    if (f (x1) < f (x2)) b=x2;
    else a=x1;
    x1=b-(b-a)/g;
    x2=a+(b-a)/g;   
    xm=x2-(x2-x1)/2;}
    printf("Минимум функции: (%f, %f), вычислено за %d итераций", xm, f(xm), i);
    getch();
    return 0;
}
но прога зацикливается(( интервал (-3;3) точность 0.001
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru