Сам виноват. Только что выгородил Люду и Веру, спрятал их за своей могучей спиной. Собственно, меня это не пугает.
Каждому из группы дали уравнение четвёртой степени с естественным заданием его решить. Простым, как удар топора, методом касательных. И каждый бился в одиночку, пока не осознал, что мы, все трое, маемся фигнёй.
Ладно, я так я. Выхожу к доске.
— Мы сначала тупо кинулись составлять программу, Николай Борисович, пока кое-что не вспомнили. Первое — составлять код нужно только для повторяющихся, рутинных операций, где нет никаких неожиданностей. Легко поддающиеся ручной обработке единичные операции нет никакого смысла программировать. Особенно те действия, которые просто и быстро выполняются человеком, но для компьютера требуют сложного кода. Второе. Ещё вы говорили об универсализме. Если есть возможность создать программу для решения любых степенных уравнений, то именно это и надо делать, а не составлять код для каждого уравнения отдельно. А третье уже моё, Николай Борисович. Решить уравнение можно по-разному. Мы посчитали, что будет лучше, если мы будем искать корни, ступенчато понижая степень уравнения по мере нахождения его корней.
— Что ты имеешь в виду, Колчин?
— Это ещё один шаг к универсализации, Николай Борисович. Мы написали программу, которая ищет только один корень. Не все сразу. После этого вручную, известным способом, понижаем степень уравнения и снова ищем один из его корней. Той же самой программой.
Препод и вся группа внимательно слушают.
— Порядок предлагаю такой. Сначала Люда Гершель обрисует математику первого этапа, поиска границы, с которого начинаем вычисления. Далее, сам код. Затем Вера Антонова представит рабочий код исчисления корня. В заключение выступлю я и обрисую всю методику в целом на примере наших заданий. Они, кстати, решены все именно нашим методом. Он универсален и годится для любого уравнения в каноническом виде.
Вид у препода, как у нежащегося зимой у печки кота. То и дело на лицо наползает блаженная улыбка.
Выходит Люда, начинает бойко писать на доске:
— Надо найти такое значение икс, при котором степенная функция будет явно больше нуля. Для этого заменим все коэффициенты при степенях на наибольший из них и сделаем их все отрицательными…
Препод только слушает и расслабленно улыбается. Молчит, и это хороший признак. Люда молотит, молотит и приходит к заключению:
— Таким образом, искомый аргумент степенной функции равен произведению А-большое на «k», где k = n + 1, а n — старшая степень функции, в нашем случае равная четырём.
От дальнейших слов группа начинает неудержимо ржать. До слёз. Включая препода.
— Так как вычислить произведение k на А элементарно, то не имеет смысла программировать это действие. Умножаем пять на наибольший коэффициент при членах уравнения. В моём случае это пять умножить на восемь. Вводим в диалоговом окне икс нулевое, и всё. Можно для надёжности увеличить его до ста, на времени работы почти не скажется. Первый фрагмент программы завершён.
— То есть ты вводишь в диалоговом окне икс нулевое, равное сорока, и на этом твоя миссия завершена? Я правильно тебя понял, Гершель?
Вот когда Люда неуверенно кивает, всех и срубает приступ хохота. Фрагмент программы, по сути, состоит из одного примитивного оператора присвоения, не считая инструментов интерфейса.
Смех усиливается, когда препод, невзирая на минимализм фрагмента, объявляет Людочке зачёт. Чуть розовая от всеобщего внимания девушка садится на своё место. Очередь Веры.
У неё работа сложнее и фрагмент кода уже не такой микроскопический. Но алгоритм элементарный.
— А эти две проверки зачем, Антонова? — препод задаёт контрольный вопрос.