Проброс "6d10" на китайском клоне CASIO FX-3950P
Публикуем сокращенный обзор автора intheyear9595, полный текст находится в оригинальной статье его блога.
Обзавелся на днях чудом - программируемым калькулятором "inформат KNA01". Калькулятор как выяснилось, является полным (гонконгским) клоном CASIO FX-3950P.
Чем он меня так привлек?
- реально программируемый (не просто запись алгебраических выражений со скобками)
- двустрочный
- есть 8 регистров
- 360 байт под программы (один оператор - байт), 240 - под статданные
- есть операторы условного и безусловного перехода (!), т.е. ветвление
- есть генератор случайных чисел
- легок
- сказочно дешев
- считает интегралы и производные (численным методом), работает с комплексными числами, со статданными, причем статданные реально хранятся в памяти и их можно выборочно менять после ввода
Калькулятор "inформат KNA01" (слева) и оригинал "CASIO FX-3950P" (справа):
Документация "информата" - плохо переведенное и частично урезанное руководство пользователя от калькулятора CASIO. Программно в "информате" вроде бы, все работает идентично тому, что описано в документации для CASIO. Одно исключение, которое я нашел - работа функции Rnd (округление). Так как первой программой, которую я хотел написать была - имитация броска нескольких кубиков (дайсов), это меня на пару дней застопорило (я не был уверен, что правильно использую функцию). После сверки с документацией от "оригинала" решено было имитировать эту функцию последовательным вычитанием (определяем дробную часть последовательным вычитанием единицы, затем от оригинального значения отнимаем дробную часть).
- D - количество кубиков
- C - количество граней кубика
- B - бросок кубика (вещественное число)
- A - дробная часть
- X - сумма
0->X:
?->D:
?->C:
Lbl 0:
6Ran#+1->B:
B->A:
Lbl 1:
A-1->A:
A>1=>Goto 1:
B-A+X->X:
D-1->D:
D>1=>Goto 0:
X
Для оценки быстродействия, переписал программу из книги "Астрономические формулы для калькулятора".
X=1:
Lbl 1:
e(ln(tan-1(tan 45)))->Y:
X+1->X
100>X=>Goto 1:
Y
Время выполнения - 75 секунд ("троечка"), TI-82 считает 15 секунд
Проверка точности по тесту программным методом
1.0000001->A:
0->D:
Lbl 1:
A*A->A:
D+1->D:
27>D=>Goto 1:
A
показала 674520,6067 ("троечка"), однако прямое вычисление дало 574530,4707 ("пятерка")
В сравнении с МК-54 калькулятор конечно, во многом проигрывает, однако не забываем, что МК-54 - это хардкорный эзотерический программируемый калькулятор с обратной польской нотацией, программирование и отладка которого производится при помощи таблиц мнемоник его машинного кода (sic!). Мне лично не хватает в "информате" стека и/или прямой адресации. Маловероятно, но возможно, что это удастся как-то обойти, т.к. в "информате" есть память под статданные...
Недостатки: крышка защищает лицевую панель от царапин, но достаточно мягка и не защищает калькулятор от включения. Впрочем, в калькуляторе есть автоматическое отключение. Ну и в целом, пластмасса не выглядит особо прочной.
"Недостатки" из разряда "не варит кофе" (пожелания): не работает оператор округления "Rnd", нет прямой адресации, стека, массивов, строк, процедур, строковых переменных, нет решения алгебраических выражений, нет матриц, нет интерфейса для связи с ПК, звуковой индикации решения задачи, оператора паузы, не чертит графики.
blog comments powered by Disqus