Консольный bc сошёл с ума: ошибки при делении

Программы для конфигурации и управления операционной системой
Правила форума
Правильно сформулированный вопрос и его грамотное оформление способствует высокой вероятности получения достаточно содержательного и по существу ответа.
Аватара пользователя

Автор темы
mintkid
Сообщения: 40
Зарегистрирован: 24 сен 2016, 15:01
Благодарил (а): 29 раз
Поблагодарили: 4 раза

Консольный bc сошёл с ума: ошибки при делении

Сообщение mintkid » 10 ноя 2016, 11:03

Дорогие форумчане! Помогите решить проблему. При делении чисел bcне показывает дробную часть. Её приходится устанавливать в ручную (параметр "количество знаков после запятой"). То есть дефолтно всё делится нацело. Если же дефолтно разделить число a на большее число b, то он покажет 0. Если в ручную установить параметр "количество знаков после запятой", то 0 не покажется и числа начинаются с точки. Раньше с подобным не сталкивался и всё нормально работало по умолчанию. Что за глюк и как его устранить?

Последний раз редактировалось пользователем 1 mintkid; всего редактировалось раз: 10

В сети
Аватара пользователя

Chocobo
Сообщения: 5073
Зарегистрирован: 27 авг 2016, 19:57
Решено: 121
Откуда: НН
Благодарил (а): 384 раза
Поблагодарили: 1326 раз

Re: Консольный bc сошёл с ума: ошибки при делении

Сообщение Chocobo » 10 ноя 2016, 11:20

mintkid, запускай как bc -l, там норм отрисовываются дроби.
А вот с нулями - не уверен, вообще это нормальный формат записи дробных чисел меньших чем единица

Я обычно в питоне считаю, мне удобней так)

Аватара пользователя

Dja
Сообщения: 2117
Зарегистрирован: 27 авг 2016, 17:03
Решено: 11
Откуда: Воскресенск
Благодарил (а): 309 раз
Поблагодарили: 231 раз

Re: Консольный bc сошёл с ума: ошибки при делении

Сообщение Dja » 10 ноя 2016, 12:20

а калькулятор уже не тянет? :-D
Новичок? - ознакомься с правилами

В поисках истины :grabli:

Аватара пользователя

Bill Williamson
Сообщения: 447
Зарегистрирован: 31 авг 2016, 10:38
Решено: 17
Благодарил (а): 166 раз
Поблагодарили: 91 раз

Re: Консольный bc сошёл с ума: ошибки при делении

Сообщение Bill Williamson » 10 ноя 2016, 13:48

Python же есть, чем он Вас не устроил?

Аватара пользователя

Автор темы
mintkid
Сообщения: 40
Зарегистрирован: 24 сен 2016, 15:01
Благодарил (а): 29 раз
Поблагодарили: 4 раза

Re: Консольный bc сошёл с ума: ошибки при делении

Сообщение mintkid » 10 ноя 2016, 14:01

Dja, bc мне почему-то удобнее :smile:
Bill Williamson, в Python нужно вникать, изучать. На это нет времени. Я не айтишник.

Аватара пользователя

Bill Williamson
Сообщения: 447
Зарегистрирован: 31 авг 2016, 10:38
Решено: 17
Благодарил (а): 166 раз
Поблагодарили: 91 раз

Re: Консольный bc сошёл с ума: ошибки при делении

Сообщение Bill Williamson » 10 ноя 2016, 20:45

mintkid, я тоже не айтишник. Вот чисто нагуглил, с калькулятором там несложно:
Снимок экрана от 2016-11-10 23-20-02.png
В теме операторы по этой книжке можно узнать какие простые вычисления делаются в python + еще можно почитать про модуль math. Очень все похоже на bc. Ну я так, к сведению. Ваше дело на чём считать. :smile:
UPD: В этой статье на хабре есть такая информация:
Самые внимательные успели обнаружить, что калькулятор округляет все числа до целых. Причина в следующем: специальная переменная scale, определяющая точность вычислений, по умолчанию равна нулю. Если вы хотите получить результат с точностью до десяти знаков, то присвойте переменной число 10.
>5/2
2
>scale=10
>5/2
2.5000000000
>7/191
.0366492146
Видимо bc так и должен работать.
У вас нет необходимых прав для просмотра вложений в этом сообщении.

Аватара пользователя

Автор темы
mintkid
Сообщения: 40
Зарегистрирован: 24 сен 2016, 15:01
Благодарил (а): 29 раз
Поблагодарили: 4 раза

Re: Консольный bc сошёл с ума: ошибки при делении

Сообщение mintkid » 17 ноя 2016, 22:47

Bill Williamson, это не то. Странная проблема на пустом месте...

Аватара пользователя

Dja
Сообщения: 2117
Зарегистрирован: 27 авг 2016, 17:03
Решено: 11
Откуда: Воскресенск
Благодарил (а): 309 раз
Поблагодарили: 231 раз

Консольный bc сошёл с ума: ошибки при делении

Сообщение Dja » 20 янв 2017, 05:35

Посему :close:
Новичок? - ознакомься с правилами

В поисках истины :grabli:

Вернуться в «Системные утилиты»