Сейчас на форуме: hgdagon, asfa (+4 невидимых)

 eXeL@B —› Программирование —› Написание калькулятора (Интересно ваше мнение)
<< . 1 . 2 . 3 .
Посл.ответ Сообщение

Ранг: 9.6 (гость)
Активность: 0.010
Статус: Участник

Создано: 17 марта 2007 18:32 · Поправил: Модератор
· Личное сообщение · #1

Hi, All
Вот тут ня днях прожку написал. Взамен Win-калькулятору. А-то чето не нравится как он работает.
Даи команды некоторые не реализованы плюс, кнопок много
Вот хочу ваше мнение узнать на счет моей проги. Пожелания и критика приветствуются.
Хорошие идеи(не очень сложные, т.к. еще не профи ;) постараюсь реализовать.
Спасибо.




Ранг: 85.4 (постоянный)
Активность: 0.080
Статус: Участник

Создано: 27 марта 2007 15:55
· Личное сообщение · #2

Romilus обрати внимание на вложение. Там скрин. Не верные значения. Я ничего не подтасовывал

b571_27.03.2007_CRACKLAB.rU.tgz - error.bmp

-----
radio uno in ibisa ...




Ранг: 9.6 (гость)
Активность: 0.010
Статус: Участник

Создано: 28 марта 2007 16:18
· Личное сообщение · #3

Icelot пишет:
Romilus обрати внимание на вложение. Там скрин. Не верные значения. Я ничего не подтасовывал

всё правильно E-1110 C-1100 4-100




Ранг: 85.4 (постоянный)
Активность: 0.080
Статус: Участник

Создано: 28 марта 2007 17:20
· Личное сообщение · #4

А 123d это че?
123d = 7B = 1111011.
При таких значениях у тебя в поле dec должно быть 1230! Что самое интересное, если все стереть и ввести 1230, то твоя программа показывает правильный результат. А если удалить 0 в поле dec, то значения hex и bin не меняются!

-----
radio uno in ibisa ...





Ранг: 279.1 (наставник)
Активность: 0.160
Статус: Участник
wizard

Создано: 29 марта 2007 00:28
· Личное сообщение · #5

Icelot пишет:
Что самое интересное, если все стереть и ввести 1230, то твоя программа показывает правильный результат. А если удалить 0 в поле dec, то значения hex и bin не меняются!


Программа неизменяет значения в hex и bin при удалении dec значения при помощи клавиши Delete, если адалять при помощи Backspase то всё нормально.

-----
Что один человек сделал , другой всегда сломать может...





Ранг: 85.4 (постоянный)
Активность: 0.080
Статус: Участник

Создано: 29 марта 2007 05:57
· Личное сообщение · #6

MACKLIA пишет:
Программа неизменяет значения в hex и bin при удалении dec значения при помощи клавиши Delete, если адалять при помощи Backspase то всё нормально.

Это все же недочет. Хотя решать автору...

-----
radio uno in ibisa ...




Ранг: 9.6 (гость)
Активность: 0.010
Статус: Участник

Создано: 29 марта 2007 11:29
· Личное сообщение · #7

Icelot пишет:
Это все же недочет. Хотя решать автору...

я знаю, я просто не могу DEL перехватить. OnKeyPress не ловит. может подскажите способ.




Ранг: 85.4 (постоянный)
Активность: 0.080
Статус: Участник

Создано: 29 марта 2007 12:56
· Личное сообщение · #8

Romilus пишет:
может подскажите способ.

А Edit.OnChange не работает чтоли?

-----
radio uno in ibisa ...




Ранг: 9.6 (гость)
Активность: 0.010
Статус: Участник

Создано: 02 апреля 2007 11:41
· Личное сообщение · #9

Icelot пишет:
А Edit.OnChange не работает чтоли?

Работает, но не так как хотелось бы, надо чтобы поля одновременно обновлялись.А OnChange обнавляет только после нажатие энтера, на сколько я знаю, но могу ошибаться.




Ранг: 85.4 (постоянный)
Активность: 0.080
Статус: Участник

Создано: 02 апреля 2007 12:25
· Личное сообщение · #10

Я аж сомневаться начал.. OnChange как раз не работает при нажатии Enter! Событие генерится при ИЗМЕНЕНИИ значения поля.. Используй его и не парься. Можешь еще конечно и нажатие других клавиш отдельно обработать если так хочешь. Хотя на фиг...

-----
radio uno in ibisa ...




Ранг: 17.6 (новичок)
Активность: 0.01=0.01
Статус: Участник

Создано: 02 апреля 2007 12:30
· Личное сообщение · #11

Romilus

Юзай #8
и будет тибе счастье:
Char in [#8, '0'..'9'] - dec

UpCase(Char) in [#8, '0'..'9', 'A'..'F'] -Hex
и т.д.



Ранг: 9.6 (гость)
Активность: 0.010
Статус: Участник

Создано: 03 апреля 2007 12:31
· Личное сообщение · #12

vitokop пишет:
Юзай #8
и будет тибе счастье:
Char in [#8, '0'..'9'] - dec

UpCase(Char) in [#8, '0'..'9', 'A'..'F'] -Hex
и т.д.


Да, я так и делаю, но все равно спасибо за поддержку и совет



Ранг: 7.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 12 мая 2007 07:04
· Личное сообщение · #13

А почему бы не сделать вычислитель выражений? Чтобы можно было написать любое математическое выражение типа 2 + arcsin( sqrt (2) / 2)*(3 + 2^3) + max(2, 3*tg(pi/8), 4*sin(pi/5)) ..... и чтобы калькулятор это всё мог вычислить, учитывая пробелы, скобки, ВСЕ математические функции и константы? Это реализовать несложно. Вот мой калькулятор например это вычисляет, более того, там можно вычислять логические выражения, присваивать переменным значения и определять функции, в которые в дальнейшем можно подставлять значения - и всё это делает небольшой калькулятор. Фантастика? Нет, реальность))) К сожалению, сам калькулятор выложить здесь не могу, поскольку я его написал ещё в 98 году под OWL, а этот OWL приказал долго жить... Но ничего, выкладываю тут CPP-файл, который содержит основные алгоритмы вычислителя выражений, обработчик ошибок сопроцесора и др. рекомендую посмотреть - очень интересно)))

5b8e_11.05.2007_CRACKLAB.rU.tgz - EXPRESS.zip




Ранг: 75.0 (постоянный)
Активность: 0.050
Статус: Участник

Создано: 12 мая 2007 07:21
· Личное сообщение · #14

Чёт не запускается твоя прога у меня (win2000)




Ранг: 387.4 (мудрец)
Активность: 0.170
Статус: Участник
системщик

Создано: 15 мая 2007 20:15
· Личное сообщение · #15

X-BEOWOLF, я выложил такой калькулятор на второй странице




Ранг: 81.2 (постоянный)
Активность: 0.040
Статус: Участник

Создано: 18 мая 2007 23:37
· Личное сообщение · #16

по-моему писать калк бессмысленно,
если только он не выполняет какие-либо
супер-хитрые действия



Ранг: 158.7 (ветеран)
Активность: 0.110
Статус: Участник

Создано: 19 мая 2007 01:03
· Личное сообщение · #17

NicknamES пишет:
по-моему писать калк бессмысленно,

Ну не скажи, не скажи. У всех есть безумные увлечения, я, например, собираю калькуляторы, и пока только один смог удовлетворить мои потребности.(2x2)
Просто обычно все считают, что писать калки глупо и поэтому толковый найти очень и очень сложно.

-----
Я ещё не волшебник, я только учусь...





Ранг: 221.8 (наставник)
Активность: 0.150
Статус: Участник

Создано: 19 мая 2007 07:31
· Личное сообщение · #18

один из лучших имха www.avtlab.ru но сцуко всеравно не то... хочу нойти калькулятор чтоб он умел ксореть к примеру всю последовательность хекс циферог на 1 цифергу...



Ранг: 384.1 (мудрец)
Активность: 0.250
Статус: Участник
www.int3.net

Создано: 19 мая 2007 19:30
· Личное сообщение · #19

Red Bar0n
hiew

-----
Подписи - ЗЛО! Нужно убирать!





Ранг: 221.8 (наставник)
Активность: 0.150
Статус: Участник

Создано: 19 мая 2007 22:37
· Личное сообщение · #20

niceхювер и юзаю но для сплоентов неудобно сцук




Ранг: 221.8 (наставник)
Активность: 0.150
Статус: Участник

Создано: 20 мая 2007 00:37
· Личное сообщение · #21

поскольку avtlab.ru не открываеться залью сюда аттач. вид конечно у него странный но по функционалу почти эксель даже кое где круче

423c_19.05.2007_CRACKLAB.rU.tgz - calc.zip



Ранг: 68.8 (постоянный)
Активность: 0.120
Статус: Участник

Создано: 20 мая 2007 00:54
· Личное сообщение · #22

Red Bar0n пишет:
вид конечно у него странный но по функционалу почти эксель


вид - в стиле "минимализм". Суперская вещица, спасибо




Ранг: 124.7 (ветеран)
Активность: 0.070
Статус: Участник

Создано: 21 мая 2007 16:18
· Личное сообщение · #23

avtlab-овский поддерживает большие числа?



Ранг: 68.8 (постоянный)
Активность: 0.120
Статус: Участник

Создано: 21 мая 2007 21:48 · Поправил: bash
· Личное сообщение · #24

Nitrogen пишет:
avtlab-овский поддерживает большие числа?


'9999999999' is not a valid integer value
Но в нём очень удобно работать, всё навиду



Ранг: 158.7 (ветеран)
Активность: 0.110
Статус: Участник

Создано: 21 мая 2007 23:13
· Личное сообщение · #25

2147483647 -самое большое допустимое по вводу число.
А насчёт того что навиду, так у большенства строковых калков размер окна регулируется как пользователю угодно. Правда по функциональности большенство отстаёт, а точнее тихо мирно плетуться в конце.

-----
Я ещё не волшебник, я только учусь...





Ранг: 124.7 (ветеран)
Активность: 0.070
Статус: Участник

Создано: 23 мая 2007 04:10
· Личное сообщение · #26

ну раз большие не держит, то майкрософтовый power calc рулит не по детски




Ранг: 387.4 (мудрец)
Активность: 0.170
Статус: Участник
системщик

Создано: 24 мая 2007 20:05
· Личное сообщение · #27

Вот, вычистил наконец-то parser. Вот новая версия моего калькулятора. Считает выражения такого типа:

sin(rad(90))
(0x12<<4)+1
htons(20480)


и показывает ответы в uint32/int32/double/bin/bigInt. То есть, виден арифметически-правильный bin int ответ и то что будет в регистре после такой операции из-за overflow/underflow а так же sign extension в сдучаях типа "(-16*4000)>>8"

b67b_24.05.2007_CRACKLAB.rU.tgz - calc.rar



Ранг: 352.4 (мудрец), 4thx
Активность: 0.150
Статус: Участник
retired

Создано: 24 мая 2007 21:36
· Личное сообщение · #28

s0larian
crypto++ использовал? я слышал не самые лестные отзывы о ней (тормоза), правда сам не пробовал




Ранг: 387.4 (мудрец)
Активность: 0.170
Статус: Участник
системщик

Создано: 24 мая 2007 23:57
· Личное сообщение · #29

ssx, ага, для big integers. С производительностью тоже порядок - "7**2345" считаеццо мгновенно. То есть, уточню, с производительностью для калька проблем нет. Я ж не RSA sign делаю для тысяч значений

Вот, кста, исправит глюк - теперь операции с одинаковым приоритетом считаются слева на право.

b534_24.05.2007_CRACKLAB.rU.tgz - calc.rar




Ранг: 387.4 (мудрец)
Активность: 0.170
Статус: Участник
системщик

Создано: 29 мая 2007 00:11
· Личное сообщение · #30

вот новая версия v0.1.5 (если кто-нить пользуется)

* statically linked MS run-time, should run on win2000 and win9x now
* support for formulas: see the .ini for examples. These
formulas are already built in (stored in a resource) but can be
overwritten or extended using the .ini file. IE .ini is not required
for operation.
* fixed % (modulo) operator
* added a "simple" mode where only double output is shown
* added a version resource
* compressed the executable with upx

calc.ini

[settings]
#mode=simple

[formula]
lpkm=inv($1*1.609344/3.7854118)
km=$1*1.609344
mi=$1/1.609344
kg=$1*0.45359237
lb=$1/0.45359237
gal=$1/3.7854118
l=inv(gal(1))*$1
blah=100*foo($1)
foo=blah($1)


4ddb_28.05.2007_CRACKLAB.rU.tgz - calc.exe


<< . 1 . 2 . 3 .
 eXeL@B —› Программирование —› Написание калькулятора (Интересно ваше мнение)
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати