avva: (Default)
[personal profile] avva
Я всего лишь хотел посчитать! И запустил стандартный виндовский калькулятор. Посчитать-то он мне посчитал, но вместе с ответом заявил:


Потыкав немного туда-сюда, я выделил сценарий, который приводит к этой ошибке. Если, например, я хочу посчитать 2*(2+2), используя скобки, в режиме Scientific этого самого калькулятора calc.exe, то от меня требуется нажать следующую последовательность клавиш:

2 * ( 2 + 2 ) =

и я получу ответ и всё будет нормально. А я сделал не так: перед тем, как закрыть скобку, я нажал на =, чтобы получить ответ промежуточного действия (хотя он и так выходит при нажатии правой скобки). Т.е. я нажимал (на клавиатуре ли, мышкой ли, неважно):

2 * ( 2 + 2 = ) =

Естествено, числа и действия были другими - это тоже не играет роли. В результате калькулятор падает и выдаёт эту ошибку. Смешно. Кто-то в Майкрософте не умеет работать со стеком и переводом инфиксной нотации в постфиксную?

Это в NT4, кстати. Может, в 2000/XP они исправили, не знаю.

Date: 2002-07-24 07:51 am (UTC)
From: [identity profile] zc2.livejournal.com
Может смысл есть, но у меня вот чувство дискомфорта все равно остается, когда не можешь сам гарантировать порядок вычисления. То ли дело старые добрые калькуляторы с польской, то-бишь постфикстной системой и с явно доступным стеком... Во, где была лафа и все понятно.

Date: 2002-07-24 08:26 am (UTC)
From: [identity profile] zaiats-2k.livejournal.com
Ребята, это сто раз обсуждалось.
Я сам первый раз дико ржал, пока меня носом не ткнули вот в какой факт.
Возьмите обычные (во плоти) калькуляторы бухгалтерский (там где 4 действия) и инженерный. И проделайте те же операции. Смею вас уверить результат будет тот же что и в в соответствующих виндовских ипостасях калькулятора.

December 2025

S M T W T F S
  123 4 56
78 9 10 11 1213
1415 1617181920
21 22 23 24 2526 27
28293031   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Dec. 28th, 2025 11:44 pm
Powered by Dreamwidth Studios