Qalculate! is a multi-purpose cross-platform desktop calculator. It is simple to use but provides power and versatility normally reserved for complicated math packages, as well as useful tools for everyday needs (such as currency conversion and percent calculation). Features include a large library of customizable functions, unit calculations and conversion, symbolic calculations (including integrals and equations), arbitrary precision, uncertainty propagation, interval arithmetic, plotting, and a user-friendly interface (Gtk, Qt, and CLI).
Changes:
- Add set functions (union, intersect, setdiff, setxor, isMember, isSubset) and operators (∪, ∩, ∖, ⊖, ∈, ⊆, etc.)
- Add characters(), count(), digitSum(), and digitalRoot(), find(), popCount(), string(), and while() functions
- Support negative row and column values in element(), row(), and column() functions
- Support matrix[row][column] syntax
- Support text objects in sort() function
- Add third optional argument to interval() function to allow exclusion of exact endpoints
- Ignore "to" and "where" (and equivalent symbols) inside quotation marks
- Ignore dot in front of plus or minus (for consistent behavior in line with entrywise operators)
- Show "Division by zero" warning for all divisions by zero
- Make display of expressions with time units in time format more consistent
- Fix support for vector in argument of many functions (erf, mod, exp, etc.)
- Fix explicit conversion to mixed units for year variants
- Fix first digit missing in return value of integerDigits() in some cases
- Fix segfault when Calculator object is destroyed with uninitialized random state
- Fix infinite loop when referencing subfunction in another subfunction
- Fix segfault in replace() with variable specified using where expression, e.g. "replace(v, x, 1) where v = x"
- Fix segfault when data set function name is followed immediately by a single dot
- Fix v[i]=a syntax for vector element assignment
- Do not bind escape key (fixes bad behavior with keys that generate escape sequences, e.g function keys)
- Fix use of x, y, z, without backslash, for arguments when using function command
- Minor bug fixes and feature enhancements
Download the source code here:
libqalculate-5.11.0.tar.gz
Download the source code for the graphical user interfaces (qalculate-gtk and qalculate-qt) here:
qalculate-gtk-5.11.0.tar.gz
qalculate-qt-5.11.0.tar.gz
Download Windows binaries here:
64-bit installer
64-bit zip (unpack and run without further installation; no application data are read or written outside of the unpacked directory)
The binaries requires Windows 10 (1809) or later. They can also be installed using the Windows Package Manager (winget) or Chocolatey.
GNU/Linux binaries:
flatpak packages (recommended) are available at https://flathub.org/apps/details/io.github.Qalculate.qalculate-qt (Qt GUI) and https://flathub.org/apps/details/io.github.Qalculate (GTK GUI).
64-bit (x86) self-contained binaries (GTK GUI) (extract and run from anywhere on most GNU/Linux distributions; no translations included)
For more information visit the website at http://qalculate.github.io/.