Ошибка не выдается,но ответ почему то неверный и еще меня злят эти повторяющиеся строки(когда что то исправляешь,появляется вторая такая же строка) Python 2.2.2 (#0, Jan 10 2008, 18:55:32) [C] on symbian_s60 Type "copyright", "credits" or "license" for more information. Ped 2.30.3 beta >>> ===== RESTART ===== >>> >>> import math >>> import math >>> math.sqrt(9) 3.0 >>> def printRoots(x1, x2): print x1 print x2 >>> a=2 >>> b=5 >>> c=2 >>> d=b*2-4ac >>> x1=(-b-math.sqrt(d))/2.0a >>> x2=(-b-math.sqrt(d))/2.0*a >>> printRoots(x1, x2) >>> printRoots(x1, x2) >>> printRoots(x1, x2) -8.0 -8.0 >>>
Функцию в учебнике видел..может опечатка..в математике тоже надо было бы 2*а взять в скобки иначе сначала числитель разделится на 2,потом это полученное число умножится на а (то есть число а окажется в числителе,но у нас оно должно быть в знаменателе). Приоритеты деления и умножения одинаковы,поэтому действия выполняются слева на право. Дело в том что знак / это всего лишь знак деления,а не черта дроби,которую мы привыкли видеть в математике ________. У меня все получилось только когда я расставил скобки. Об этом и в книге написано §2.8 Порядок операций.
16 ноя 2008 в 19:24