This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: "Software calculator" – news · newspapers · books · scholar · JSTOR (November 2016) (Learn how and when to remove this template message)

A **software calculator** is a calculator that has been implemented as a computer program, rather than as a physical hardware device.

They are among the simpler interactive software tools, and, as such, they provide operations for the user to select one at a time. They can be used to perform any process that consists of a sequence of steps each of which applies one of these operations, and have no purpose other than these processes, because the operations are the sole, or at least the primary, features of the calculator, rather than being secondary features that support other functionality that is not normally known simply as calculation.

As a *calculator*, rather than a computer, they usually have a small set of relatively simple operations, perform short processes that are not compute intensive and do not accept large amounts of input data or produce many results.

Software calculators are available for many different platforms, and they can be:

- A program for, or included with an operating system.
- A program implemented as server or client-side scripting (such as JavaScript) within a web page.
- Embedded in a calculator watch.
- Also complex software may have calculator-like dialogs, sometimes with the full calculator functionality, to enter data into the system.

Computers as we know them today first emerged in the 1940s and 1950s. The software that they ran was naturally used to perform calculations, but it was specially designed for a substantial application that was not limited to simple calculations. For example, the LEO computer was designed to run business application software such as payroll.

Software specifically to perform calculations as its main purpose was first written in the 1960s, and the first software package for general calculations to obtain widespread use was released in 1978.^{[1]} This was VisiCalc and it was called an *interactive visible calculator*, but it was actually a spreadsheet, and these are now not normally known simply as calculators.

The Unix version released in 1979, V7 Unix, contained a command-line accessible calculator.

Calculators have been used since ancient times and until the advent of software calculators they were physical, hardware machines. The most recent hardware calculators are electronic hand-held devices with buttons for digits and operations, and a small window for inputs and results.

The first software calculators imitated these hardware calculators by implementing the same functionality with mouse-operated, rather than finger-operated, buttons. Such software calculators first emerged in the 1980s as part of the original Macintosh operating system (System 1) and the Windows operating system (Windows 1.0).

Some software calculators directly simulate one of the hardware calculators, by presenting an image that looks like the calculator, and by providing the same functionality.

This section does not cite any sources. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: "Software calculator" – news · newspapers · books · scholar · JSTOR (November 2016) (Learn how and when to remove this template message)

There is now a very wide range of software calculators, and searching the Internet produces very large numbers of programs that are called *calculators*.

The results include numerical calculators that apply arithmetic operations or mathematical functions to numbers, and that produce numerical results or graphs of numerical functions, plus some non-numerical tools and games that are also called calculators.

Many of the results are calculators that do not imitate or simulate hardware calculators, but that take advantage of the greater power of computer software to implement alternative types of calculators. Software calculators are provided on the Internet which are customizable to use any conceivable algebraic expression. These user-customizable software calculators can also be used in conjunction with formula or equation creation capabilities so that the software calculator can now be created to perform all possible mathematical functions. No longer limited to a set of trigonometric and simple algebraic expressions, versions of the software calculator are now tailored to any and all topical applications.

For broader coverage of this topic, see List of arbitrary-precision arithmetic software. |

Every type of hardware calculator has been implemented in software, including conversion, financial, graphing, programmable and scientific calculators.

Other numerical calculators that do not imitate hardware calculators include:

- Formula calculators
- Window-based calculators
- Specialised calculators.

Window-based calculators present a dialog box that allows users to enter data, rather than data *and* operations, and they have a built-in formula that is automatically applied to this data. There are many examples of such calculators in finance, mathematics, science and other disciplines.

There are software calculators that contain operations relevant to a specific application area and profession, including automotive, construction and electrical engineering.

Non-numerical calculators include life-style and scientific calculators:

**Love calculator**: The input is two*names*, and there is a button to work out the*compatibility*, as a percentage, of two people with these names.**Formula weight calculator**: The input is a*chemical molecular formula*, using the periodic-table symbols and notation, and there is a button to work out the*percentages*of its constituents.**Astronomical calculator**: The input is a date and one or multiple celestial bodies (usually the sun, moon, planets, planetoids or comets). The program calculates the position of these bodies to the given date and gives a numerical output of the position (usually in right ascension and declination, whereby the used eqinox may be settable), sometimes also from brightness, angle diameter and phase.

Some programs can generate a list of astronomical events of certain types during a period of time, e.g. a year. Astronomical calculators can be also a part of a simulation software, displaying the sky at a certain time.

There are some software games that are called calculators, including:

**Sudoku calculators**: The input is a Sudoku*puzzle*, the operations support*solving*the puzzle, such as selecting a digit as the solution for a cell, and the result is a*solution*of the entire puzzle.**Poker calculators**: A common feature of these is to calculate the*odds*of winning with a given Poker hand.

There are many interactive software packages that provide user-accessible calculation features, but that are not normally called *calculators*, because the calculation features play only a supporting role rather than being an end in themselves. These include:

- Spreadsheets, where user-supplied calculations can define a cell’s content.
- Computer algebra systems, which can manipulate mathematical expressions, including evaluating simple calculations.
- Databases, where user-supplied calculations can specify a field’s value.

Spreadsheets are not normally called *calculators* because their main purpose is to organise data in rows and columns, and to automatically update the values of possibly many dependent cells when the value in another cell changes. The calculation features are only used in a supporting role to specify the values in some cells.

Computer algebra systems are not normally called *calculators* because their main purpose is to perform symbolic manipulation of mathematical expressions that can contain variables and complex operations, such as integration. However, the expressions can be basic calculations that do not use variables, and that are simply evaluated, as with a calculator.

Databases are not normally called *calculators* because their main purpose is data entry and storage, plus reporting against this data. The calculation features are only used in a supporting role to specify the values in some fields.