Случайно обнаружил интересную вещь. После нажатия на Win калькуляторе комбинаци 9!! происходит длительное зависание. И пришла в голову идея: есть ли еще способы (кроме факториала) вывести из строя Win калькулятор?
Здравствуйте, 0K, Вы писали:
0K>Случайно обнаружил интересную вещь. После нажатия на Win калькуляторе комбинаци 9!! происходит длительное зависание.
Почему зависание? Через некоторое время калькулятор пишет "Для завершения работы выбранной функции потребуется много времени. Продолжить расчеты или прервать сейчас?" и предлагает продолжить или остановить. Я бы, конечно, еще вынес вычисления в отдельную от GUI нить.
Обязательно бахнем! И не раз. Весь мир в труху! Но потом. (ДМБ)
Здравствуйте, ДимДимыч, Вы писали:
ДД>Здравствуйте, 0K, Вы писали:
0K>>Случайно обнаружил интересную вещь. После нажатия на Win калькуляторе комбинаци 9!! происходит длительное зависание.
ДД>Почему зависание? Через некоторое время калькулятор пишет "Для завершения работы выбранной функции потребуется много времени. Продолжить расчеты или прервать сейчас?" и предлагает продолжить или остановить. Я бы, конечно, еще вынес вычисления в отдельную от GUI нить.
Или вообще для достаточно больших n делать оценку факториала по формуле Стирлинга.
Здравствуйте, ДимДимыч и marat321, Вы писали:
ДД>>Почему зависание? Через некоторое время калькулятор пишет "Для завершения работы выбранной функции потребуется много времени. Продолжить расчеты или прервать сейчас?" и предлагает продолжить или остановить. Я бы, конечно, еще вынес вычисления в отдельную от GUI нить. M>Или вообще для достаточно больших n делать оценку факториала по формуле Стирлинга.
Кхм. Поскольку топикстартер зависания не ожидал, смело предположу, что таки да, виндописатели опять лажанулись. Дело в том, что символ "!!" — это двойной факториал, и определяется он как произведение всех натуральных чисел в отрезке [1, n], имеющих ту же чётность что и n:
(Как следствие — нефиг торопиться что-то посчитать, как только юзверь ткнул восклицательный знак.)
Таким образом, 9!! = 1 * 3 * 5 * 7 * 9 = 945. Т.е. вычисление занимает в два раза меньше времени, нежели обычного факториала для 9 и стирлинг тут немного не при делах
Учите математику, мои маленькие любители программирования, и будет вам щасте
Здравствуйте, Мурлакотам, Вы писали:
М>Кхм. Поскольку топикстартер зависания не ожидал, смело предположу, что таки да, виндописатели опять лажанулись. Дело в том, что символ "!!" — это двойной факториал
В виндовом калькуляторе нету символа "!!".
То, о чем ты написал, в виндовом калькуляторе просто не предусмотрено.
Здравствуйте, Мурлакотам, Вы писали:
М>Кхм. Поскольку топикстартер зависания не ожидал, смело предположу, что таки да, виндописатели опять лажанулись. Дело в том, что символ "!!" — это двойной факториал,
тогда была бы кнопка n!! ?
Вообще, когда было нажат ! первый раз — он считает, получает 362880, а на второе нажатие уже считает факториал от 362880. M>(Как следствие — нефиг торопиться что-то посчитать, как только юзверь ткнул восклицательный знак.)
непонял, калькулятор должен был ждать будет ли второе нажатие или нет???
Учитесь как делать программы, любители математики
Здравствуйте, bkat, Вы писали:
B>Здравствуйте, Quadri, Вы писали:
Q>>Здравствуйте, Мурлакотам, Вы писали:
Q>>непонял, калькулятор должен был ждать будет ли второе нажатие или нет???
B>Doubleclick?
Здравствуйте, Мурлакотам, Вы писали:
М>Здравствуйте, ДимДимыч и marat321, Вы писали:
ДД>>>Почему зависание? Через некоторое время калькулятор пишет "Для завершения работы выбранной функции потребуется много времени. Продолжить расчеты или прервать сейчас?" и предлагает продолжить или остановить. Я бы, конечно, еще вынес вычисления в отдельную от GUI нить. M>>Или вообще для достаточно больших n делать оценку факториала по формуле Стирлинга.
М>Кхм. Поскольку топикстартер зависания не ожидал, смело предположу, что таки да, виндописатели опять лажанулись. Дело в том, что символ "!!" — это двойной факториал
Здравствуйте, Роман Дубров, Вы писали:
РД>PaulMinelly пишет:
>> Ага, а ** — знак какой?
РД>в до-писишные времена в каком-то языке это был оператор возведения в степень...
Здравствуйте, Rius, Вы писали:
R>гномовской калькулятор gcalctool за несколько секунд выдал ответ 1.6097144e+1859933
Mathematica тоже за несколько секунд выдала результат, причем абсолютно точный:
160971440041001262110344361073331772650552039762288615832983522124639851539143\
021833177375612664970193161681292215130825331268756540761135076317705269207207\
538099266328729953969292050398143547901439290081745604367755359982785136829155\
547740162518455141314857556574780878024830354474858178801597943214822798610190\
958964145553559843972522862621501577914356824436144201832050764407335572159351\
722972720413841571110882996188879202318250679020812058913979697955660205717541\
108360656923614052546842971449925455341280144328104274989531703787447742811085\
919719510745518039148962102578649794759886768400358328299588760077692784140924\
517743984324294256042903788436636653156423785570292603680805253387962232348951\
... и т.д. — полностью не привожу по понятным причинам.
Здравствуйте, 0K, Вы писали:
0K>Случайно обнаружил интересную вещь. После нажатия на Win калькуляторе комбинаци 9!! происходит длительное зависание. И пришла в голову идея: есть ли еще способы (кроме факториала) вывести из строя Win калькулятор?
Офттоп, но просто интересно. Виндовый действительно зависает, я так и не дождался. Гномовский стандартный gcalctool подумал пару секунд, и выдал результат. Зато SpeedCrunch посчитал вообще мгновенно! По ходу, он использует какой-то специальный алгоритм пересчета факториала.
Новости очень смешные. Зря вы не смотрите. Как будто за наркоманами подсматриваешь. Только тетка с погодой в завязке.
There is no such thing as a winnable war.
Здравствуйте, Quadri, Вы писали:
Q>Здравствуйте, bkat, Вы писали:
Q>>>на кнопке?
B>>Ага, на кнопке "n!"
Q>эмм это же неудобно. не припоминаю ни одной кнопки с даблкликом...
Q>ага, и сделать заодно много'клик на кнопке возведения в степень, сколько раз нажал — в такую и возведет...
Ну оно же на си много плюсов на писано — многкратное повторение должно быть с пелёнок
E__>Офттоп, но просто интересно. Виндовый действительно зависает, я так и не дождался. Гномовский стандартный gcalctool подумал пару секунд, и выдал результат. Зато SpeedCrunch посчитал вообще мгновенно! По ходу, он использует какой-то специальный алгоритм пересчета факториала.
Спец алгоритм называется — hardcode — для любителей попроверять
Здравствуйте, Quadri, Вы писали:
Q>Здравствуйте, bkat, Вы писали:
Q>>>на кнопке?
B>>Ага, на кнопке "n!"
Q>эмм это же неудобно. не припоминаю ни одной кнопки с даблкликом...
Q>ага, и сделать заодно много'клик на кнопке возведения в степень, сколько раз нажал — в такую и возведет...
Так давно уже есть такая кнопка. Даже в аппаратной реализации с прошлого века замечена.