LINUX.ORG.RU

Как написать программу калькулятор

 


0

1

Хочу повторить программу калькулятор из windows XP. Не знаю с чего начать касательно теории. Что и как используется для программных калькуляторов: стэк, просто переменные, сериализация, eval, как реализовать в калькуляторе работу с обыкновенными недесятичными дробями и т.д.

И ещё, может посоветуте мощных программ калькуляторов наподобие хардверных калькуляторов с графическим дисплеем.


может посоветуте мощных программ калькуляторов

speedcrunch, но графики не рисует вроде.

AS ★★★★★
()

гугли-читай, это стандартная задача для первых курсов

trashymichael ★★★
()

bc это целый С https://ru.wikipedia.org/wiki/Bc, а задачу калькулятора обычно ставят для развития понимания работы компиляторов\интерпретаторов, и эта задача решается в любом яп, т.к. любой яп может сойти за калькулятор

trashymichael ★★★
()
Ответ на: комментарий от pup_kin

man bc

   MATH LIBRARY
       If bc is invoked with the -l option, a math library  is  preloaded  and
       the  default  scale  is  set to 20.   The math functions will calculate
       their results to the scale set at the time of  their  call.   The  math
       library defines the following functions:

       s (x)  The sine of x, x is in radians.

       c (x)  The cosine of x, x is in radians.

       a (x)  The arctangent of x, arctangent returns radians.

       l (x)  The natural logarithm of x.

       e (x)  The exponential function of raising e to the value x.

       j (n,x)
              The Bessel function of integer order n of x.

deadNightTiger ★★★★★
()

как реализовать в калькуляторе работу с обыкновенными недесятичными дробями

это уже несколько специфично

хардверных калькуляторов с графическим дисплеем

может сойдут консольные pari/gp, интерпретатор питона, J (у последнего есть и web-gui)

anonymous
()

Сериализация для калькулятора? Он у тебя сетевой или между ребутами память сохранять должен? Пиши логику и гуй на любом языке, хоть mvc туда воткни.

unt1tled ★★★★
()

Вот и выросло поколение, у которой во время учёбы не было своего написанного калькулятора.

Vinni_Pooh ★★★★★
()

как реализовать в калькуляторе работу с обыкновенными недесятичными дробями

lisp, чего мелочиться

(+ 1/2 1/3)
5/6

(+ 1/2 1/4 1/8)
7/8

futurama ★★★★★
()

Не знаю с чего начать касательно теории.

Касательно теории бери Страуструпа, у него как раз применение классов C++ разобрано на примере написания простого калькулятора. :)

Но для такой задачи теория обычно малоинтересна, чего там теоретизировать-то. Стек, операции... Если интересует повышенная точность, смотри в сторону GMP.

повторить программу калькулятор из windows XP

реализовать в калькуляторе работу с обыкновенными недесятичными дробями

Там разве такое было? Но сама по себе задачка интересная, если сделаешь как опциональный режим - будет неплохо. Недесятичную дробь можно определить как структуру из двух целых - числителя и знаменателя.

hobbit ★★★★★
()
Ответ на: комментарий от anonymous

Это уг на лиспе? Нет, есть же

Теория вычислений для программистов

Всякие академические языки не нужны. Ruby получше будет.

По теме: начни с польской нотации.

Из программ-калькуляторов: kcalc, qalculate.

Zomba444ok
()
Ответ на: комментарий от Zomba444ok

Из программ-калькуляторов: kcalc, qalculate.

Удваиваю: если хочешь реально принести пользу, не пиши велосипед с нуля. Возьми одну из указанных программ и добавь недостающее.

Кстати, в Windows 7 к искспишному калькулятору ещё пару вкусных режимов добавили.

anonymous
()
Ответ на: комментарий от pup_kin

sci-mathematics/calc
Доступные версии: 2.12.2.2 (~)2.12.4.13-r1 (~)2.12.5.4
Установленные версии: 2.12.4.13(09:48:25 26.02.2014)
Домашняя страница: http://www.isthe.com/chongo/tech/comp/calc/
Описание: Arbitrary precision C-like arithmetic system


Вот тут есть.

NeverLoved ★★★★★
()

Не знаю, почему тут многие советуют gnome-calculator, ведь он какой-то обрезанный и неудобный. Рекомендую qalculate.

anonymous_sama ★★★★★
()
Ответ на: комментарий от Zomba444ok

Теория вычислений для программистов

Детская книжонка, по сравнению с

Всякие академические языки не нужны.

руби не нужен еще больше. А схема там - просто инструмент, который показывает идеи. Не способен понять — вон из профессии.

anonymous
()
Ответ на: комментарий от anonymous_sama

qalculate

Это какой-то зомбокалькулятор. Вот gnome-calculator хорош, но не хватает хистори...

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от anonymous

SICP

Детская книжонка, по сравнению с

Всякие ruby не нужны.

лисп вообще не нужен. А руби там - просто инструмент, показывающий идеи. Не способен понять - вон из профессии

Zomba444ok
()
Ответ на: комментарий от anonymous

Ответ в стиле «где нормальные аргументы?»

Не думаю, что можно было ожидать другого ответа.

Zomba444ok
()

В книге по Qt Макса Шлее в «Глава 6. Управление автоматическим размещением элементов. Табличное размещение QGridLayout» есть исходный код с реализацией простейшего калькулятора с графическим кнопочным интерфейсом, весь код умещается в три исходных файла, в сумме занимает примерно 150 строк.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.