Kalkules program manual

Basic information


Main window description

Kalkules - main window
  1. Type the expression to evaluate here.
  2. The result of the evaluation or the potential error will be displayed here.
  3. Value saved in memory.
  4. Selection of the set of numbers (R - real numbers, C - complex numbers, Z(n) - set of primitive residue classes modulo n ).
  5. Selection of the angle unit (degrees, radians, gradians). Affects the evaluation of functions sin, cos, tan, cotan, arcsin, arccos, arctan, arccot, sinh, cosh, tanh, cotanh, arcsinh, arccosh, arctanh, arccoth.
  6. Selection of the number system (Hex - hexadecimal, Dec - decimal, Oct - octal, Bin - binary)
  7. Number of decimal places, the result will be rounded to ( 2 to 30 )
  8. Buttons for inserting functions.
  9. Buttons for inserting numbers.
  10. Buttons for inserting operators.
  11. Checkbox for inserting hyperbolic functions.
  12. Checkbox for calculating with fractions.
  13. Shrink-window button.
  14. Button for drawing graphs of entered functions.
  15. Button for calculating series summations or products.
  16. Expression preview button.
  17. Button for differentiating functions.

Program settings

The setting dialog is available from the main menu: Preferences/Show preferences...

Behaviour tab

Kalkules - settings

Option Meaning
Copy result to clipboard If checked, the result will be automatically copied to clipboard after each calculation.
Check for updates at start If checked, the program will automatically check if there is a later version available at start (connection to the internet is needed).
Run Kalkules just once If checked, the program will enable running only one instance. This means that if you already have Kalkules running, and you try to launch it again, it will not start a new instance, but will show the window of the running instance instead.
Automatically close parentheses If checked, the program will automatically close all unclosed parentheses in the entered expression before every calculation.
Remember at next start Select which items should be saved when closing the program, and restored at next start.
When inserting an operator after calculation Select what should be inserted as the expression, when you try to insert an operator (+, -, etc.) immediately after performing a calculation.

Number format tab

Kalkules - settings

Option Meaning
Decimal separator Select which character should be used as a decimal separator. You can choose a dot, comma, or the default decimal separator which is set in your operating system.
Result notation Choose how the calculation result will be displayed. You can choose between ordinary (0.25) and exponential (scientific: 2.5E-1) notation. Note that in some special cases, the exponential notation will be used regardless of this setting. (For instance, if the result is a very small number.)
Complex number format Choose between mathematical (5+2i) and electrotechnical (5+j5) complex number format.

Default state tab

Kalkules - settings

Settings on this tab define program state (selected number set, numeral system, etc.) right after start. If the "Remember last state" option is checked, these settings are ignored and the program will be in the exact state it was when last turned off.



Always try to be using the latest available version of Kalkules. If the "Check updates at start" option is checked, the program will announce that there is a later version. You can also check for updates manually from the main menu Help/Check for updates.

Download the latest version from the Kalkules homepage. You do not have to, uninstall nor delete the old version, just install the new version to same location as the old one. If you have downloaded the zip archive, just replace the old files. (Do not replace the settings.ini file if you want to keep your old settings).


Rules for writing expressions

The expression notation consists out of numerals( 0 to 9, possibly A to F ), single-character operators ( +, -, *, etc... ), multi-character operators ( div, mod, nad ), functions ( f.i. sin ), variables ( f.i. radius ) and constants ( f.i. $pi ).

You can use an unlimited number of brackets in the expression.

The expression is not case-sensitive.

For better lucidity you can type spaces in the expression. They are ignored when evaluating.

Meaning of the operators

Operator Meaning Example
% percentage calculation 5 + 20 %
^ power f.i. 5 2 5^2
! factorial 5 !
nad combinatorial number 5 nad 2
div integer division 5 div 2
mod reminder from integer division 5 mod 2
* multiplication 5 * 2
/ division 5 / 2
+ addition 5 + 2
- subtraction 5 - 2


Expression browser

Expression browser is a handy tool for storing commonly used expressions and mathematical formulas. It can be accessed from the main menu: View/Expression browser... . The expressions are stored in special "libraries" - xml files stored in { kalkules folder }\lib\{ language code }\ where the language code is the iso code of your selected program language. For instance: C:\Program files\Kalkules\lib\en\

Kalkules - expression browser

To use en expression, simply select it and click the [Use] button. You can also add your own expressions, categories and even whole libraries. Also you can modify the standard libraries. All these tasks can be performed by right mouse click on the expression tree. For more information, visit the Kalkules wiki page about creating expression libraries.

If you create a library that could be used also by others, send the current xml file to support@kalkules.com and we will include it in the program (and you'll become famous :)).


Use of functions


Functions must be entered in the format: name(parameter) f.i.: sin(5)

Overview of all available functions

Notation: Meaning:
abs(x) Absolute value of x
arccos(x) Arccosine of x
arccosh(x) Argument of hyperbolic cosine of x
arccot(x) Arc cotangent of x
arccoth(x) Argument of hyperbolic cotangent of x
arcsin(x) Arcsine of angle x
arcsinh(x) Argument of hyperbolic arcsine of x
arctan(x) Arctangent of x
arctanh(x) Argument of hyperbolic tangent of x
cos(x) Cosine of angle x *
cosh(x) Hyperbolic cosine of x
cotan(x) Cotangent of angle x *
cotanh(x) Hyperbolic cotangent of x
csc(x) Cosecant of angle x *
deg(x) Conversion of angle x to tenths of degrees
dms(x) Conversion of angle x to degrees, minutes, seconds
gamma(x) Gamma function of x
ln(x) Natural logarithm of x (base e)
log(x) Decimal logarithm of x (base 10)
logy(x) Logarithm base y of x (see Logarithm with variable base)
rnd(x) Rounded x
sec(x) Secant of angle x *
sign(x) Sign of x
sin(x) Sine of angle x *
sinh(x) Hyperbolic sine of x
sqr(x) Square of x ( = x^2 )
sqrt(x) Square root of x ( = x^(1/2) )
tan(x) Tangent of angle x *
tanh(x) Hyperbolic tangent of x
* All angle input parameters are in units which are set by the "Angle mode" setting (5).

Hyperbolic functions

If you want to insert a hyperbolic function, check the "hyp" checkbox( 11 ) and press the button of the relevant goniometric function.

Logarithm with variable base

Logarithm with variable base is a specific function, because it requires a parameter as input, and also the actual base. Enter the function as usual ( logy(parameter) ). When evaluating, a new variable named "y" will appear on the variable form. Enter the desiderative base of the logarithm as the value of this variable.

Angle conversion

To convert angles from decimal degrees to degrees, minutes and seconds, use the function dms(). For opposite conversion use the deg() function.

Percentage calculations

The program can perform several kinds of percentage calculations. The type of calculation is determined by a specific notation, as shown in the following table:

Calculation: Notation: Result:
Calculating 10% of 50 50 * 10 % 5
Adding 10% to 50 50 + 10 % 55
Subtracting 10% from 50 50 - 10 % 45

Other notation with the symbol % will be automatically converted to a real number f.i.:

Notation: Is the same as:
10 % 0,1
5 / 10 % 5 / 0,1
5 + ( 10 % ) 5 + ( 0,1 )


Use of constants

To view the constant window, select View/Constants... from the main menu.

Kalkules - constants

Select the constant you want to use, and click on the Use button (you can also double-click on he constant). The selected constant will be inserted on the cursor position in the expression. Another way is to type the constant ID directly into the expression (f.i: $pi/2).

Note: The constant ID must always start with the character $.


Use of variables

It is possible to use self-named variables in the expression. 2( 3,14 * r^2 ) + 3,14*2*r*v

Rules for naming variables

Inserting variables into the expression

Simply type the variable into the expression (f.i.: 2+volume/4). Select View/Variables... from the main window, fill in the variable values. If the variable form does not contain all the variables, click on the Refresh button.

Kalkules - variables


The way expressions are evaluated

The expression evaluation conforms to the basic mathematical rules.

The expression is evaluated by parts with this priority:

If the expression contains more operators or functions with the same priority ( f.i. 5*2/3 ), they are evaluated in order from left to right. The only exception are the power operators, which are evaluated from right to left ( f.i. 2^3^2 ).

If you are not sure, if the expression will be evaluated in the right order, use brackets. To check the written expression for errors, it is advisable to use the Expression preview tool (16).


Calculating with fractions

In the Real-number mode, it is possible to process calculations in the form of fractions - simply check the "Fractions" option ( 12 ). Type the expression as usually ( f.i. 5 / 2 + 1 / 3 ). However, it does not make much sense to use this option on expressions, which contain functions ( f.i. sin, ln, etc... ), because in that case, the expression is evaluated in real numbers and the final result is then converted to a fraction. Then the result will be probably something like: 107 494 545 841 760 867 / 2 500 000 000 000 000 .


Calculating with complex numbers

Switch the program to Complex-number mode ( 4 ).

Enter the expression as usually. You can enter the complex numbers in algebraic ( 5+j2 ) or exponential (5,39 e^j21,8) shape.

The available functions are power ( the exponent can only be a natural number f.i.: (5+j2)^2 ), absolute and inverse value. After the evaluation, you can switch the result between algebraic and exponential shape with the AE button.


Calculating on the set of primitive residue classes

Switch the program to "set of primitive residue classes modulo n" mode - Z(n)( 4 ) and set the desired base of the set ( f.i. n=7 ). The base can only be set to a prime number from 2 to 97.

Negative numbers, and numbers, that do not match the set will be automatically converted. F.i. if the base of the set is set to n=5, then expression 9-2 will be converted to 4+3, so the result will be 2.

Division will be converted to addition of the complement of the divisor, to one. F.i. when n=7, expression 5 / 2 will be converted to 5+6, and the result will be 4.


Calculating in various number systems

Every calculation can be processed in all of the available number systems ( Binary, Octal, Decimal, Hexadecimal ). To switch between the systems, use the buttons on the main window ( 6 ). To convert numbers ( or even whole expressions ) to a different number system, type it as usual, and switch to the desired number system. The conversion works also on decimal (1.2) numbers.

Note: When converting / evaluating in the hexadecimal system, all the variables containing only characters a,b,c,d,e and f will be treated as numbers.


Differentiating functions

Enter the function you wish to differentiate in the main window as usual and press the [f(x)'] button. The following window will appear:

Kalkules - function differentiation

If the entered function contains several variables, the function will be partially differentiated with respect to one variable, with other variables held constant. This variable can be chosen in the "Variable" combo box. You can also choose a higher order of the derivative (up to 10, default 1).To complete the differentiation press the [Calculate] button.


Tool description

Graph of function

A tool for drawing graphs of continuous functions. Enter the function as usually, and view the graph from the main menu (Tools/Graph of function...), or by pressing the button on the main window ( 14 ). The function must contain an independed variable x. (f.i.: sin(x), 1/x, ...). If the function contains other variables, it is necessary to enter them the usual way.

If you want to display graphs of multiple functions, display the first function, then go back to the main window, enter the second function and display it the same way as the first one. Both functions will now be displayed in the same coordinate system. This way you can add a virtually unlimited number of functions.

Kalkules - graph of function

Description of the control components

  1. Buttons for moving the displayed area of the graph (the "home" button will set the start of the coordinates to the center of the window).
  2. Number of pixels the graph will move when the move button is pressed (min: 5, max: 80).
  3. Scale buttons. Use the buttons [+] and [-] to zoom in and out. Buttons [+X], [-X], [+Y] and [-Y] zoom in/out in separate axis.
  4. Grid density.
  5. Goniometric scale. When turned on, the x scale and grid will be displayed in the multiples of pi.
  6. Buttons for exporting the graph in a form of an image. The first button copies the graphs image into clipboard, while the second button can be used to save the graph as a bitmap file on disk.
  7. Clearing button. This button removes all the displayed functions.

Unit converter

Kalkules - unit converter

A tool for converting values between different units. Select the desired unit category (f.i. Length), then select base and target unit, and enter the base value. The result will appear automatically in the target value field.


A tool for quick basic combinatorial calculation processing. Select the type of calculation, enter the input variables (n,k) and press the Calculate button.

Kalkules - combinatorics


This tool enables you to:

Kalkules - polynomials

The polynomial, which is currently being entered (P or Q), is shown in simplified shape in the result area for control purposes. That means, when you enter f.i. 5a3b+2-1, polynomial 15ab+1 will be shown. If you want to use the result of the previous operation, use the "Copy result" button.

The exponents must be whole numbers between -32 768 and 32 767. They are entered using the ^ character, f.i.: 5x^2+3 means 5x2+3.

Both polynomials together must have max 5 variables. F.i. polynomial 3a+5bc-4d+e is correct, while the polynomial 3a+5bc-4d+e-2f has too many variables( a,b,c,d,e and f ).

To rise a polynomial to a natural base, you must enter the polynomial as P (in the P field), set the base (n) and press the [P^n] button. To draw the Horner scheme, you must enter the polynomial as Q, set the point of the scheme (m) and press the [HSch(m)] button.

Series summation / product

Kalkules - series summation / product

A tool for fast calculating of summations or products of finite real number series. Enter the expression as usually and press the button on the main window ( 15 ). The controlling variable ("n" on the picture) can be entered optionally. The rules for naming it are the same as for normal variables.


Kalkules - statistical calculations

To calculate the sum, count, product, and the arithmetic mean, it is sufficient to enter only the values of the items (x), and leave the y values, which represent the weight of each item, set to their default value (1). To calculate other parameters however, it is necessary to enter also the weights of the items.

Quadratic equation

Kalkules - quadratic equation

A tool for calculating the roots of a quadratic equation. Enter the input values (a, b, c) and press the Calculate button. The output fields (x1, x2) will contain roots of the entered equation. If the equation has no real roots (D<0), complex roots will be calculated.

Rule of three

Kalkules - rule of three

Enter all values, select direct or inverse proportion and click the "Calculate" button.