= Да, не хочу в капитаны. Это же какие надо нервы.
= Пойду перечитаю Остера, может и там есть что-то квадратное. и спокойное
— Почитать - дело нужное. Прочитай наконец «Жар холодных числ и пафос бесстрастной логики», "Я хочу в школу" Жвалевского и «Волшебный двурог» Боброва.
= Домашнее задание растет.
— Ладно, давай прощаться, а то и правда вспомню еще что-либо.
— Вспомнил! Арнольд!
Я уже говорил, что академикам противопоказано писать учебники, им невместно написать что-то живое — хихикающее. Но по крайней мере одно исключение есть - Владимир Игоревич Арнольд, очень интересный человек. К сожалению его книги на флибусте только в pdf и djvu, но где-то у меня есть недоделанная книга в fb2 найду, доделаю, выложу.
= «Айнун цваних фирун захцих» или как говорит наш дорогой шеф «Он слишком много читал».
* * *
день четвертый - ничего не произошло.
* * *
День 5
Каким же я был неуклюжим неучем. В чем-то с наставником мне повезло..... Те знания, что он сейчас мне давал - лишь малая часть его опыта. Взять, к примеру, тот же захват. Я выпускал свое щупальце к жертве, арканя ее. Все делал интуитивно. Оказалось, что есть много разных способов сделать захват более эффективным. Где-то накинуть петлю, где-то нарастить крючки, где-то вгонять крюк в надрез в энергетической оболочке жертвы.
= Привет! Показал я твой «шторм» соседу. Он сказал, что это смертельно опасная задача.
— Да?
= Моряк или умрет со смеху или убьет составителя.
— Надо же! Оказывается это рискованное занятие. Ты был прав, ругать других действительно легче, чем делать самому.
А я никак не оставлю тему квадратных уравнений, и вроде все сказано, поставлена точка, но появляются новые идеи......
— Для разминки приведу забавное доказательство теоремы Виетта.
Напишем базовую формулу: x2 — bx + c = 0 мы знаем что b — это сумма, а с ...
= Уже сто раз говорил...
— Не злись. Давай развернем эту запись. Я не хочу для обозначения корней писать x1, x2, а то от х в глазах рябить будет. Давай использовать i и j.
x2 - (i+j)*x + i*j = 0
преобразуем
x2 - ix - jx + ij = 0
= Ну, и чего получилось?
— Фокус, покус! Ведь i и j это корни уравнения. Подставь-ка вместо x - i или j.
= Да. Действительно забавно, простейшей алгеброй все доказано.
— Обрати внимание, нигде не сказано, что j и i — целые, это могут быть любые числа и не только числа.
— Но давай пойдем дальше. Есть разные способы решения КУ, в том числе графические.
= Да, читал я. Не точно, не всегда достижимо, только, что наглядно.
— Вот наглядность мне сейчас и нужна, да и еще кое что. Рассмотрим только один способ.
Как видишь, строится парабола и места пересечения с осью абсцисс (y = 0) и будут корнями. Чтобы построить параболу ax2 — bx + c = 0, для начала нужно знать координаты вершины
= Что-то подозрительно знакома мордочка у y0.
— Дело упрощается тем, что в нашем случае a = 1.
— Смотри, у нас есть координата x0 вершины параболы, она простейша [ -b/2 ] корни КУ находятся на одинаковом расстоянии от этого числа. Вообще x0 очень хитрое число, ЛЮБЫЕ два числа отстоящие от него на одинаковые расстояния, дают в сумме b.
Остается только подобрать два симметричных относительно x0 числа дающих в произведении c.
= Т.е. это другой способ, и про первый можно забыть.
— Забывать ничего не будем! Первый метод «соМножителей» если так сойдутся звезды позволит там «молниеносно» решить КУ, второй «Слагаемых» гарантирует успех, но немного медленнее.
— Не забывай о коварстве составителей. Если y0 окажется положительной, то парабола не пересечет ось абсцисс, т.е корней не будет...
= То-то я вижу, что-то знакомое — дискриминант.
— Не совсем, но родственник дискриминанта пусть это будет Д ( Д = — дискриминант ).
Давай спланируем алгоритм действий.
1. оцениваем знак выражения 4c — b2, ежели минус идем далее (этот пункт можно удалить, если мы решаем подготовленные Питоном КУ).
2. оцениваем знаки корней по известной нам таблице.
3. если удается, находим корни в соМножителях
4. ну а если дошли до этого пункта, делаем глубокомысленный вид (тренируем актерское мастерство) и начинаем перебор.
= Например?
— Хорошо, поехали:
x2 - 22x - 75 = 0
1. [- 75] — ясно что Д отрицателен
2. [ - - ] - один корень отрицателен, но положительный больше
3. [ 75 ] допустим нам лень искать делители, но пятерка там точно есть.
4. [x0 = 11] обозначим смещение корней относительно точки x0 как z. Допустим отрицательный корень [ -5 ] тогда z = 16 и следовательно x2 = 11 + 16 = 27
= Все отлично!
— Погоди, что-то тут не так, 27 * 5 = 135, не сходится. Т.е. [-5] слишком далеко ушло в минус. Давай попробуем предыдущее простое число [-3] тогда z = 14 и следовательно x2 = 11 + 14 = 25 и 25 * 3 = 75. Вот теперь — все отлично.
= А можно было сделать проще, без всяких z. Когда предположен один корень второй просто вычисляется x2 = b — x1 т.е. 22 - (-3) = 25.
— Ты мыслишь, значит ты существуешь!!!
— Повторю свое заклинание «только постоянные экзерсисы приведут тебя к успеху».
= Я только не совсем понял для чего нам x0.
— Ну скажем, это якорь на который мы ориентируемся при поиске корня. Для поиска можно воспользоваться двоичным поиском.
= А это что такое?
— Лучше показать это на примере.
Я задумываю число больше 0 и меньше 100 (ну вот записываю «задумано 43» ). Ты говоришь предположение, в ответ я могу дать 3 возможных ответа «задуманное больше», «задуманное меньше» и «Поздравляю».
= 99?
— Задуманное меньше.
= 98?
— Задуманное меньше. Но прервем игру. Выбранная тобой стратегия не рациональна. Если задумано 1, то тебе придется задать 99 вопросов.
= Так, что надеясь на удачу выбирать случайное число.
— Не будем вручать удачу случаю. Действуй так в качестве запроса выбирай середину исследуемого диапазона и при каждой итерации этот диапазон будет в два раза уменьшаться. Попробуем сначала?
= 1. Не совсем понял, но 50.
— Задуманное меньше.
= 2. 25?
— Задуманное больше.
= 3. Догадался, остался диапазон от 49 до 26. Тогда 38?
— Задуманное больше.
= 4. 44?
— Задуманное меньше.
= 5. 41?
— Задуманное больше. Надеюсь ты все понял, и следующим вопросом выиграешь.
= "Ацнун цванцих.." [Главное, системный подход] - подумал принц целуя тысяча двадцать третью лягушку.
— Завтра организуй в классе соревнование по скорости угадывания. Не гарантирую 100% выигрыш, но в большинстве случаев — сработает.
— Но вернемся к тренировке:
x2 — 1,6x + 0,63 = 0
1. [4* 0,63 — 1,62 = -0,04] — Д отрицателен
2. [ - + ] - оба корня положительны
3. [ 0,63 ] делители искать не будем.
4. [x0 = 0,8] меньший корень лежит в диапазоне от 0 до 0,8
. . . . 1. x1 = 0,4 x2 = 1,6 — 0,4 = 1,2 0,4*1,2=0,48
да, тяжелый случай; 0,48 < 0,63 и это значит, что корни взяты слишком далеко от x0
. . . . 2. x1 = 0,6 x2 = 1,6 — 0,6 = 1 0,6*1=0,6
0,6 < 0,63обнадеживает, что мы идем правильным путем.
. . . . 3. x1 = 0,7 x2 = 1,6 — 0,7 = 0,9 0,9*0,7=0,63
Дело сделано! В уме такое решить затруднительно, но тренируйся.
— Так дело не пойдет. Не готовы мы еще решать ЛЮБЫЕ задачи, а значит опять подготовим НАШИ КУ
изменяем функцию генерации числа
4 | def gen_number(k):
5 | . . prime_number =(1, 2, 3, 5, 7, 11, 13, 17)
6 | . . sign_number =(0, 1, 2, 3)
7 | . . nu = prime_number[random.randint(0, k)]
8 | . . sign = random.choice(sign_number)
9 | . . if sign == 0:
10 | . . . . nu = nu * -1
11 | . . nu = nu + 0.1 * random.randint(0, 9)
12 | . . return nu
опять распечатываем полученные файлы и поражаем одноклассников (после солидной тренировки)
= Попробуем?
— x2 - 6.3x + 9.9 = 0
1. т.к. формула сгенерирована из подготовленных чисел решение гарантированно есть.
2. [ - + ] - оба корня положительны
3. т.к. КУ сделано с дробями то делители искать не будем.
4. [x0 = 3,15] меньший корень лежит в диапазоне от 0 до 3,15
. . . . 1. x1 = 1,3 x2 = 6,3 — 1,3 = 5 5*1,3=6,5
Маловато будет... И так далее. Но я то знаю ответ x1 = 3 x2 = 3,3
x2 - 10.09x - 112.493 = 0
x2 - 15.14x + 57.232 = 0
x2 - 22.78x + 92.644 = 0
x2 + 4.49x - 87.986 = 0
x2 + 15.36x + 36.704 = 0
x2 - 6.4x + 5.4 = 0 слабо, увидеть корни без решения
. . . . .
= Хе, хе, хе. Зря ты не хочешь посмотреть формулу корней квадратного уравнения
= Смотри: x1,2 = -b/2 ± z ничего не напоминает?
/ странно было бы если бы не напоминало /
— О! Давай развлечемся! Так, "a" как и положено будет равно 1. Подставляй в нужном виде i и j. Нет, никакой бумаги, все в уме. И далее... волшебное превращение квадрата суммы в квадрат разности; затем в простую разность, знакопеременно сражающуюся с суммой и после упрощения останется последний герой.
= Как интересно. Прямо триллер.
— Естественно. Математика чрезвычайно эмоциональное занятие.