ПАРАЛЛЕЛЬНОЕ ПРОГРАММИРОВАНИЕ
          
        
        
          
            168
          
        
        
          3.Устанавливаем требуемый диапазон:
        
        
          x3=x2*(b2-b1), x3[0..b2-b1]
        
        
          4. Переносим начало координат в b1:
        
        
          x4=x3+b1, x4[b1..b2].
        
        
          Итоговая формула:
        
        
          1
        
        
          )
        
        
          (
        
        
          1
        
        
          2
        
        
          1
        
        
          2
        
        
          1
        
        
          4
        
        
          b
        
        
          a
        
        
          a
        
        
          b
        
        
          b
        
        
          a
        
        
          x
        
        
          x
        
        
          +
        
        
          −
        
        
          −
        
        
          − =
        
        
          Для удобства можно реализовать функцию, пересчитывающую число из одно-
        
        
          го диапазона в другой.
        
        
          
            Задание 2.
          
        
        
          Добавьте обработчик нажатия на кнопку мыши. Правая кнопка должна обес-
        
        
          печивать перезапуск вычислений в увеличенном масштабе, левая – в уменьшенном.
        
        
          Центром новой области является место щелчка мышью. Если удерживается кнопка
        
        
          Shift, область должна увеличиваться/уменьшаться не в два, а в четыре раза.
        
        
          Для добавления обработчика выберите форму диалогового окна и откройте
        
        
          вкладку Messages. Выберите сообщение WM_LBUTTONDOWN (сообщение о нажа-
        
        
          тии левой кнопки мыша). Нажмите Add Function и Edit Code.
        
        
          Функция-обработчик сообщения принимает два параметра:
        
        
          point – запись, полями x и y которой являются координаты мыши относитель-
        
        
          но текущего окна. Обращение к полям – point.x и point.y соответственно.
        
        
          nFlags – переменная, указывающая состояние клавиш Shift, Ctrl, а также кно-
        
        
          пок мыши (нажато или нет). Если клавиша нажата, соответствующий бит nFlags ра-
        
        
          вен 1. Для проверки состояния отдельных битов следует использовать операцию би-
        
        
          нарное И (&):
        
        
          if (nFlags & MK_SHIFT !=0) <Shift не нажат>
        
        
          Пересчет диапазона для исследования сходимости удобно выполнить по сле-
        
        
          дующей схеме. При нажатии кнопки мыши изменяем границы комплексной облас-
        
        
          ти, отображаемой на экране. Сначала пересчитываем координаты мыши в координа-
        
        
          ты на комплексной плоскости:
        
        
          
            long double mx=point.x=(a2-a1)*point.x/400+a1;
          
        
        
          
            long double my=point.x=(b2-b1)*point.y/300+b1;
          
        
        
          Получаем центр области. Края области вычисляются прибавлени-
        
        
          ем/вычитанием из координат центра величины полуширины и полувысоты. Если