forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Проекты на MidletPascal (http://forum.boolean.name/forumdisplay.php?f=88)
-   -   FNcalc - калькулятор, строящий графики (http://forum.boolean.name/showthread.php?t=2930)

Bruteo 12.03.2007 07:48

FNcalc - калькулятор, строящий графики
 
Прошу протестировать мою программу для расчета сложных математических выражений, построения графиков и вычисления интегралов.
Описание, скриншоты, загрузка
Для смартфонов с symbian 9, у которых разрешение дисплея 240x320 и выше, рекомендую эту версию с иконкой 55x55.
Отписывайтесь, пожалуйста, работает ли у вас стандартная версия и какой у вас телефон.
Пришлось разделить программу на две версии: lite и стандартную. Lite компилируется в MidletPascal с опцией: Real numbers=Fixed-point, а стандартная версия с опцией: Real numbers=Floating-point. В итоге: стандартная версия на некоторых телефонах считает неверно, поэтому работать на этих телефонах не будет. Если кто знает как с этим справиться - прошу поведать мне :)
Еще актуален этот вопрос
Жду предложений по улучшению программы и информацию об ошибках.
P.S.: нормальную иконку сделаю чуть позже.

IVenoMI 13.03.2007 01:22

Re: FNcalc - калькулятор, строящий графики
 
Очень полезно, станрдарт работает нормально, тело - Asus p505, прошивку к сожалению не скажу, у нее нет маркировки...

impersonalis 13.03.2007 02:22

Re: FNcalc - калькулятор, строящий графики
 
2^7=272
=|
siemens me75
графики описать не могу - но неправильно =/

Bruteo 13.03.2007 10:03

Re: FNcalc - калькулятор, строящий графики
 
to impersonalis
:(
значит нужно юзать lite версию на me75.

Новая версия 1.01
Изменения
-Добавлена возможность задавать значение x. Т.е. если в строке присутствует x, при расчете будет запрошено численное значение x
-Добавлена возможность удаления набранного выражения через меню
-Добавлена возможность сброса настроек построения графиков к настройкам по умолчанию
-Для стандартной версии добавлена проверка на совместимость с телефоном. Если стандартная версия не совместима с телефоном, то она выведет на экран предупреждение и не будет продолжать работать
-Положение некоторых пунктов меню изменено для удобства
-Исправлены ошибки

impersonalis 14.03.2007 00:11

Re: FNcalc - калькулятор, строящий графики
 
скачал LITE
2^7=128 ) приятно радует
Проверяю графики
x - good
x^2 - бесконечный цикл. график нарисовался правильно, но управление обратно я так и не получил.
upd
Проверил ещё раз. В цикл не впадает, сбило столку недетерминированное поведение телфона при работе с графиком: то чистый экран с надписью из серии "подожите"(точно не помню) - график. в углу значок свёрнутого меню, то координатные оси - построенный граик без индикатора меню
ковыряю дальше:
х^3 :
правая часть графика - похоже на правду
левая - превратилась в y=0

Что называется - не долго музыка играла =/ А уж обрадовался было. Такая тулаз пригодилась бы

Bruteo 14.03.2007 02:03

Re: FNcalc - калькулятор, строящий графики
 
Цитата:

Сообщение от impersonalis
скачал LITE
но управление обратно я так и не получил.

Бывает такое на lite версии. Зависимость от чего-либо конкретного я пока не выявил.
Цитата:

Сообщение от impersonalis
сбило столку недетерминированное поведение телфона при работе с графиком: то чистый экран с надписью из серии "подожите"(точно не помню) - график. в углу значок свёрнутого меню, то координатные оси - построенный граик без индикатора меню

В этом месте мидлет себя тоже ведет странно. По идее: должна выводиться надпись "Подождите", а при следующей перерисовке экрана должен появляться уже достроенный график. Но мидлет иногда сам обновляет экран, когда ему захочется, и график строится "частями". Я ещё доработаю этот момент.
Цитата:

Сообщение от impersonalis
х^3 :
правая часть графика - похоже на правду
левая - превратилась в y=0

Именно поэтому я не рекомендую юзать значок ^, а возводить в степень так: pow(x,3). Я это указал на странице с описанием ;)
Сейчас проверил на Nokia 6681: если писать "x^3" - левая часть=0; если писать pow(x,3)-все ok.
Я постараюсь разобраться с использованием значка ^
Цитата:

Сообщение от impersonalis
Что называется - не долго музыка играла =/ А уж обрадовался было. Такая тулаз пригодилась бы

Не стоит так быстро разочаровываться. Еще чуть довести до ума программку - и будет конфетка :)

impersonalis 14.03.2007 20:07

Re: FNcalc - калькулятор, строящий графики
 
pow(x,4) - при Ymax=10 строится основной график слева и справа от него вертикальные линии; при Ymax=90 всё нормально
pow(e,x) - тоже самое что и с предыдущим графиокм, но вертикальные линии рисуются только с правой стороны.

Кстати, почему вставка происходит не на место курсора, а в конец строки?

График sin(x) - построился бе3 проблем (наверное, потому что нормированный).

sin(pi/2)=1 - good
sin(pi)=0.0034 - ?
sin(2*pi)=0.006 - ?!
sin(20*pi)=-0.0017 ?! отбрасывание периода можно было бы реализовать отдельным логическим блоком: имхо, для вычислений с тригонометрией пригодилось бы.

Неплохо было бы сделать поддержку выражений типа sin(2pi)... Но это мелочи)

Bruteo 14.03.2007 22:23

Re: FNcalc - калькулятор, строящий графики
 
Цитата:

Сообщение от impersonalis
pow(x,4) - при Ymax=10 строится основной график слева и справа от него вертикальные линии; при Ymax=90 всё нормально
pow(e,x) - тоже самое что и с предыдущим графиокм, но вертикальные линии рисуются только с правой стороны.

Не совсем понял, как выглядит график. Проверил на телефонах, что были под рукой - все строится нормально. Можно описать поподробней?
Возможно, шаг построения в настройках указан слишком большой. Максимально точно будет строить при шаге=1
Цитата:

Сообщение от impersonalis
Кстати, почему вставка происходит не на место курсора, а в конец строки?

Насколько мне известно, в мобильной яве нет такого понятия как положение курсора. Соответственно, вставлять можно либо в начало, либо в конец строки.
Цитата:

Сообщение от impersonalis
sin(pi)=0.0034 - ?
sin(2*pi)=0.006 - ?!
sin(20*pi)=-0.0017 ?!

Это особенность lite версии. Такое происходит из-за сильно ограниченной точности вычисления. Позже я сделаю так, чтобы синус числа, кратного pi, был равен строго нулю.
Надеюсь, работа над MidletPascal возобновится, и станет возможным использовать стандартную версию на всех телефонах.
Цитата:

Сообщение от impersonalis
отбрасывание периода можно было бы реализовать отдельным логическим блоком: имхо, для вычислений с тригонометрией пригодилось бы.
Неплохо было бы сделать поддержку выражений типа sin(2pi)... Но это мелочи)

Эти функции я, скорее всего, добавлю.
Спасибо, за помощь в тестировании ;)

Bruteo 18.03.2007 23:15

Re: FNcalc - калькулятор, строящий графики
 
Новая версия 1.02
Изменения
-Добавлена возможность вычисления определенных интегралов
-Добавлена возможность вычисления логарифма по любому основанию с помощью функции log([основание],[аргумент])
-Добавлена возможность задания параметра x при вычислении не только числом, но и строкой, содержащей функции, константы и т.д.
-Добавлена проверка на превышение допустимой точности
-Константы "pi" и "e" теперь выводятся с точностью 30 знаков
-Улучшена работа тригонометрических функций
-Улучшена проверка на совместимость стандартной версии с телефоном
-Исправлена ошибка при использовании функции pow в выражениях, содержащих знак "-"
-Исправлены мелкие ошибки
-Удалена возможность использования операторов "^" и "#" для возведения в степень из-за их неправильной работы

Bruteo 17.07.2007 06:35

Re: FNcalc - калькулятор, строящий графики
 
Новая версия 1.03
Изменения
-Добавлена возможность перемещения по построенным графикам
-Добавлена сетка при построении графиков, изменён цвет граничных координат, координатные оси теперь всегда проходят через центр дисплея телефона, координатные оси стали толще в два раза
-Добавлены гиперболические функции: гиперболический синус sh(x), гиперболический косинус ch(x), гиперболический тангенс th(x), гиперболический котангенс cth(x), гиперболический секанс sch(x), гиперболический косеканс csch(x)
-Добавлены секанс sc(x) и косеканс csc(x)
-Добавлена функция Хевисайда h(x)
-Добавлен символ Кронекера (дельта Кронекера) kron(a,b)
-Исправлены ошибки
-Заменена иконка в версиях с маленькой иконкой

Форум программы

impersonalis 17.07.2007 14:33

Re: FNcalc - калькулятор, строящий графики
 
Будут ли попытки реализовать весь функционал для всех моделей телефонов?

Bruteo 18.07.2007 03:26

Re: FNcalc - калькулятор, строящий графики
 
Похоже, что это невозможно, пока авторы Midlet pascal не исправят глючную библиотеку для работы с числами, которая не на всех телефонах работает как должна.
Переводить fncalc на другую библиотеку, менее глючную и быстрее считающую - я попробую. По ощущениям - это довольно просто сделать :)

BlackDragon 10.09.2007 16:57

Re: FNcalc - калькулятор, строящий графики
 
Классная программа!
Давно такую искал. На самсунге д520 полная версия вроде нормально работает.
А в новых версиях можно ли реализовать такую функцию:
на экране,допустим ,пишем:
а=4.6
р=78.07
с=5.4
а+55-3*cos(p)=d
d^c*a= *ответ*

и чтоб несколько таких "листов" с расчетами сохранялись,потом их можно было бы посмотреть изменить.
Это очень удобно,когда много однотипных расчетов или надо подобрать какие либо переменные.

Bruteo 10.09.2007 19:46

Re: FNcalc - калькулятор, строящий графики
 
Скорее всего, возможность сохранения и загрузки выражений добавлю.
По поводу работы с несколькими переменными - может быть. Сейчас можно работать с одной переменной, которую можно задавать через математические функции и константы.

Bruteo 17.10.2009 23:54

Ответ: FNcalc - калькулятор, строящий графики
 
Новая версия Fncalc 2.1:
http://frolov.net/fncalc/

Изменения по отношению к первой ветке:
-Добавлена полная поддержка телефонов и устройств с сенсорными дисплеями
-Добавлена возможность вычисления неопределённых интегралов, используя соединение с интернетом
-Исправлено: для выбора функции из списка не обязательно жать "Выбрать"
-Исправлено: построение фукнций, которые определены не на всём отрезке построения, например: корень из x на отрезке от -10 до 10
-Исправлено: корректное построение функций с разрывами, например: tan(x)
-Добавлено: возможность выбора меньшей точности построения для ускорения построения графиков
-Исправлено: более понятное задание шага построения графиков в настройках - через выбор точности(средняя, максимальная, низкая)
-Исправлена ошибка, при которой графики строились неверно в случаях, когда горизонтальная ось(y=0) была вне экрана
-Исправлены некоторые ошибки


Часовой пояс GMT +4, время: 14:32.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot