В учебнике ошибка или я не понимаю? Помогите пожалуйста.

 

В поиске не нашел.

Я только приступил к освоению, до этого написанием программ не занимался никогда.

Помогите пожалуйста разобраться:

в учебнике глава Оператор цикла while:

Пример вычисление числа фибоначчи.

Вижу следующее:

Delta = MathAbs ( C B - B A ) ; // Искомая разница между Кф

Стало не понятно что такое (СВ - ВА)

Потом вижу в тексте такое объяснение:

"Таким образом, независимо от того, в какую сторону отклонилось текущее значение коэффициента Фибоначчи, значением выражения MathAbs(C/B - B/A), а также значением переменной Delta, всегда будет положительное число".

Вопрос: MathAbs(CB - BA) = MathAbs(C/B - B/A) или в коде пропущены символы деления?

 
Спасибо за найденную ошибку форматирования. Теперь все выглядит как задумал автор:
//--------------------------------------------------------------------
// fibonacci.mq4
// Предназначен для использования в качестве примера в учебнике MQL4.
//--------------------------------------------------------------------
int start()                               // Спец. ф-ия start()
  {
//--------------------------------------------------------------------
   int i;                                 // Формальн параметр,счётчик
   double
   A,B,C,                                 // Числа последовательности
   Delta,                                 // Фактич. разница между Кф
   D;                                     // Заданная точность
//--------------------------------------------------------------------
   A=1;                                   // Начальное значение
   B=1;                                   // Начальное значение 
   C=2;                                   // Начальное значение
   D=0.0000000001;                        // Задаём точность
   Delta=1000.0;                          // Начальное значение
//--------------------------------------------------------------------
   while(Delta > D)                       // Заголовок оператора цикла
     {                                    // Скобка начала тела цикла
      i++;                                // Счётчик
      A=B;                                // Следующее значение
      B=C;                                // Следующее значение
      C=A + B;                            // Следующее значение
      Delta=MathAbs(C/B - B/A);           // Искомая разница между Кф
     }                                    // Скобка конца тела цикла
//--------------------------------------------------------------------
   Alert("C=",C," Число Фибоначчи=",C/B," i=",i);//Сообщение на экран
   return;                                // Выход из start()
  }
//--------------------------------------------------------------------
 
Caresser:

Спасибо за найденную ошибку.

В некоторых местах по тексту могут быть неточности и ошибки, например, могут отсутствовать символы /, > и <, а также фрагменты текста, между этими символами. В исходном тексте эти символы имеются, но они могут не отображаться браузерами, т.к. браузеры воспринимают эти символы как теги html-разметки. Большинство примеров укомплектовано файлами исходных кодов; в этих случаях можно легко обнаружить ошибку, сравнивая код программы в тексте учебника и этот же код в файле.

Просьба к читателям сообщать о подобных ошибках.

 
double MathCeil ( double x)
Функция возвращает числовое значение, представляющую наименьшее целое число, которое больше или равно x.
Параметры:
x - Числовая величина.
Пример:
  double y;
y=MathCeil(2.8);
Print("наименьшее целое число для 2.8 есть ",y);
y=MathCeil(-2.8);
Print("наименьшее целое число для -2.8 есть ",y);
/*Вывод:
наименьшее целое число для 2.8 есть 3
наименьшее целое число для -2.8 есть -2*/
 
Andy_Kon:
double MathCeil ( double x)
Функция возвращает числовое значение, представляющую наименьшее целое число, которое больше или равно x.
Параметры:
x - Числовая величина.
Пример:
  double y;
y=MathCeil(2.8);
Print("наименьшее целое число для 2.8 есть ",y);
y=MathCeil(-2.8);
Print("наименьшее целое число для -2.8 есть ",y);
/*Вывод:
наименьшее целое число для 2.8 есть 3
наименьшее целое число для -2.8 есть -2*/

И к чему это?
 
Talex:
Andy_Kon:
double MathCeil ( double x)
Функция возвращает числовое значение, представляющую наименьшее целое число, которое больше или равно x.
Параметры:
x - Числовая величина.
Пример:
  double y;
y=MathCeil(2.8);
Print("наименьшее целое число для 2.8 есть ",y);
y=MathCeil(-2.8);
Print("наименьшее целое число для -2.8 есть ",y);
/*Вывод:
наименьшее целое число для 2.8 есть 3
наименьшее целое число для -2.8 есть -2*/

И к чему это?

заменить
наименьшее 
на
наибольшее

по другому - Округляет дробь в большую сторону
 
Andy_Kon:

заменить
наименьшее 

наибольшее

подругому - Округляет дробь в большую сторону


Ничего заменять не надо. Просто внимательно вчитайтесь : "наименьшее целое число, которое больше или равно x." Соответствует "Округляет дробь в большую сторону" до целого.
 
Все правильно написано. Для указаннго примера имеем x=2.8, наименьшее целое число, которое больше или равно x - это 3. И так далее по тексту.
 
Rosh:
Все правильно написано. Для указаннго примера имеем x=2.8, наименьшее целое число, которое больше или равно x - это 3. И так далее по тексту.
В учебнике для любого языка:

Округляет дробь в большую сторону.
Возвращает ближайшее большее целое.
 
Andy_Kon писал (а): Возвращает ближайшее большее целое.

Правильно. Иначе говоря, возвращает наименьшее большее целое.

MathCeil(X) = inf(y: y>=X, y - целое)

 
Mathemat:
Andy_Kon писал (а): Возвращает ближайшее большее целое.
Правильно. Иначе говоря, возвращает наименьшее большее целое.
И где это написано?

  double y;
y=MathCeil(2.8);
Print("наименьшее целое число для 2.8 есть ",y);
y=MathCeil(-2.8);
Print("наименьшее целое число для -2.8 есть ",y);
/*Вывод:
наименьшее целое число для 2.8 есть 3
наименьшее целое число для -2.8 есть -2*/