0 / 0 / 0
Регистрация: 04.12.2010
Сообщений: 28
1

Помогите плиз найти ошибку.

27.10.2011, 20:46. Показов 979. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Я реализовал метод поиска минимума функции по методу дихотомии.Но при запуске программы происходит зацикливание. Компилятор ничего не выдает. Подскажите плиз в чем проблема.
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
double F(double x)
        {
            return x*x+6*x+12;
        }
            double E = 0.8, l = 0.08;
            double a = -8, b = 4;
            double x=0, z=0,L=0, k=0;
        P1: 
            k++;
            x = (a + b - E) / 2;
            z = (a + b + E) / 2;
            if (F(x) <= F(z))
            {
                b = z;
                            }
            else
            {
                a = x;
                            }
            L = Math.Abs(b - a);
            if (L<=l)
            { 
                x = (a + b) / 2;
                textBox1.Text = Convert.ToString(x);// точка минимума
                textBox4.Text = Convert.ToString(k);//количество итераций
            }
            else
            {
                goto P1;
            }
 Комментарий модератора 
Давайте темам осмысленные названия.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.10.2011, 20:46
Ответы с готовыми решениями:

Помогите с событием плиз
У меня есть класс для представления информации о сотруднике компании со следующими свойствами: –...

Помогите найти ошибку
Нажимаю кнопку выполняется код: private void button2_Click(object sender, EventArgs e) {...

Помогите найти ошибку?
Мне нужно что бы по нажатию кнопки значение суммарной яркости заносилось в текстбокс. Но почему то...

Помогите найти ошибку в коде
Не могу понять где ошибка в коде и почему не строится нормально матрица. class Program { ...

4
Эксперт .NET
17788 / 12939 / 3381
Регистрация: 17.09.2011
Сообщений: 21,213
27.10.2011, 21:14 2
C#
1
if (L<=l)
Это условие никогда не выполняется.
0
0 / 0 / 0
Регистрация: 04.12.2010
Сообщений: 28
27.10.2011, 21:39  [ТС] 3
Цитата Сообщение от kolorotur Посмотреть сообщение
Это условие никогда не выполняется.
Почему? Если верить математикам, то оно когда нибудь должно выполнится)
0
Эксперт .NET
17788 / 12939 / 3381
Регистрация: 17.09.2011
Сообщений: 21,213
27.10.2011, 23:32 4
А вот не выполняется.
Где-то на 55-й итерации у вас прекращается изменение значений всех переменных:
а = -3.4000000000000012
b = -2.600000000000001
x = -3.4000000000000008
z = -2.600000000000001
L = 0.80000000000000027

Последующие итерации значений не меняют, вот и крутится в бесконечном цикле.
1
0 / 0 / 0
Регистрация: 04.12.2010
Сообщений: 28
28.10.2011, 10:47  [ТС] 5
Цитата Сообщение от kolorotur Посмотреть сообщение
А вот не выполняется.
Где-то на 55-й итерации у вас прекращается изменение значений всех переменных:
а = -3.4000000000000012
b = -2.600000000000001
x = -3.4000000000000008
z = -2.600000000000001
L = 0.80000000000000027

Последующие итерации значений не меняют, вот и крутится в бесконечном цикле.
Понятно.Спасибо за помощь)
0
28.10.2011, 10:47
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.10.2011, 10:47
Помогаю со студенческими работами здесь

Помогите найти ошибку в коде
всем привет помогите найти ошибку в коде а чет сам не как ВОД КОД; using System; using...

помогите найти ошибку в activeform
int w ; w = Form2.ActiveForm.Left(); private void timer1_Tick(object sender,...

Помогите найти ошибку в программе сортировки
Не работает программа, помогите пожалуйста. using System; class Bubble { public static...

Помогите найти ошибку в расчете формул
Разработать собственный класс, содержащий методы для нахождения значений z1 и z2....


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru