# Podręcznik programu &kcalc;

## Wprowadzenie

Ta dokumentacja opisuje program &kcalc; w wersji 1.8.

&kcalc; oferuje znacznie więcej funkcji matematycznych niż mogłoby się wydawać na pierwszy rzut oka. Przeczytaj sekcję opisującą skróty klawiszowe, aby zapoznać się z wszystkimi możliwościami programu.

Oprócz funkcji oferowanych przez większość kalkulatorów naukowych &kcalc; udostępnia wiele innych, które zasługują na wymienienie:

- &kcalc; udostępnia funkcję trygonometryczne, operacje logiczne, oraz przeprowadza obliczenia statystyczne.

- &kcalc; pozwala na kopiowanie i wklejanie liczb z/na wyświetlacz.

- Funkcja &kcalc; pamięci wyników pozwala na łatwe przywołanie wcześniej zapisanych wyników.

- Możesz skonfigurować kolory i czcionki wyświetlacza &kcalc;.

- W &kcalc; możesz określić liczbę miejsc dziesiętnych po przecinku oraz precyzję obliczeń.

- &kcalc; oferuje dużą liczbę przydanych skrótów klawiszowych, dzięki którym korzystanie z programu &kcalc; staje się bardzo proste i nie wymaga myszki.

  Porada: Po naciśnięciu (i przytrzymaniu) klawisza &Ctrl; wyświetlane są skróty klawiszowe odpowiadające poszczególnym przyciskom kalkulatora.

Życzymy dobrej zabawy w korzystaniu z programu &kcalc;!

Bernd Johannes Wuebben

## Sposób użycia

### Podstawy

Podstawy użytkowania są bardzo podobne do korzystania z bardzo wielu prostych kalkulatorów naukowych, ale są również funkcje specyficzne dla programu &kcalc;:

Pamięć wyników

- Za każdym razem, gdy klikniesz lewym przyciskiem myszki na = albo naciśniesz klawisz Enter lub =, wyświetlona wartość zostaje zapisana w pamięci wyników programu &kcalc;. Możesz poruszać się pomiędzy zapisanymi wynikami używając klawiszy &Ctrl;Z i &Ctrl; &Shift;Z.

Funkcja procentów

- Funkcja procentów działa troszkę inaczej niż w większości kalkulatorów. Lecz gdy już raz zrozumiemy jej działanie, oferowane rozszerzenia będą bardzo użyteczne. Zapoznaj się z sekcją dotyczącą funkcji Procent aby dowiedzieć się więcej szczegółów.

Wycinanie i wklejanie

- - Naciśnięcie klawisza &Ctrl;C powoduje przeniesienie liczby podanej na wyświetlaczu do schowka systemowego.

  - Naciskając klawisz &Ctrl;V wkleimy zawartość schowka do wyświetlacza jeżeli wartość liczbowa w schowku jest poprawną wartością zmiennoprzecinkową.

  - Istnieje możliwość kopiowania/wklejania poprzez klikanie kursorem myszy na wyświetlacz &kcalc; ale funkcja ta może zostać wyłączona w przyszłych wersjach.

Funkcje zaawansowane

- Gdy uruchomisz &kcalc; po raz pierwszy pokazywane są tylko przyciski odpowiadające podstawowym funkcjom arytmetycznym.

  Poprzez menu Ustawienia można włączyć dodatkowe przyciski programu &kcalc;: np. przyciski funkcji Statystycznych czy Trygonometrycznych.

### Tryb obliczeń statystycznych

W tym trybie lewa kolumna przycisków jest powiązana z funkcjami statystycznymi:

Większa część funkcjonalności w tym trybie jest skupiona na przycisku Dat. Aby stworzyć listę danych liczb, wprowadź liczbę do kalkulatora i naciśnij przycisk Dat. Na wyświetlaczu będzie się pojawiała sekwencyjnie zwiększająca się wartość wskazująca pozycję liczby na liście danych. Tradycyjny kalkulator zachowuje tylko trzy wartości dla funkcji statystycznych: ilość pojedynczych elementów na liście, sumę wartości wprowadzonych oraz sumę kwadratów wartości wprowadzonych. &kcalc; różni się tym, że zachowuje wszystkie pojedyncze wartości, umożliwiając obliczanie mediany dla wprowadzonych danych.

Przyciski | Funkcje
N | Przywołuje liczbę wprowadzonych danych
Inv N | Wyświetla sumę wprowadzonych danych
Mea | Wyświetla średnią wprowadzonych danych
Inv Mea | Wyświetla sumę kwadratów wszystkich wprowadzonych danych
Std | Wyświetla odchylenie standardowe próbki(n)
Inv Std | Wyświetla odchylenie standardowe populacji (n-1)
Med | Wyświetla medianę
Dat | Wprowadza daną
Inv Dat | Usuwa ostatnią wprowadzoną daną
Cst | Usuwa wszystkie wprowadzone dane

### Tryb Trygonometryczny

W tym trybie lewa kolumna przycisków jest powiązana z funkcjami trygonometrycznymi:

Przyciski | Funkcje
Hyp | Włącza tryb hyperboliczny. Na przykład Hyp Sin to sinus hiperboliczny: sinh(x)
Sin | Oblicza sinus
Inv Sin | Oblicza arcus sinus
Cos | Oblicza cosinus
Inv Cos | Oblicza arcus cosinus
Tan | Oblicza tangens
Inv Tan | Oblicza cotangens
Log | Oblicza logarytm o podstawie 10
Inv Log | Oblicza 10 do potęgi x
Ln | Oblicza logarytm naturalny (o podstawie e)
Inv Ln | Oblicza funkcję wykładniczą e do potęgi x

### Działania na pamięci

&kcalc; obsługuje działania na pamięci takie jak w zwykłych kalkulatorach, oraz posiada dodatkowo sześć miejsc na przechowywanie stałych.

#### Podstawowe działania na pamięci

&kcalc; potrafi zapamiętywać dla Ciebie rezultaty operacji w celu ich późniejszego użycia w obliczeniach. Dostęp do tych funkcji umożliwiają przyciski MR, MS, M+ and MC.

MS

- Przycisk MS zapisuje bieżący wynik do pamięci (Memory Store).

M+

- Przycisk M+ dodaje bieżący wynik do znajdującego się w pamięci. Jeśli zapisane było 20 a bieżącym wynikiem jest 5, po naciśnięciu powyższego przycisku pamięć będzie zawierała 25. Jeśli pamięć jest pusta, przycisk działa jak MS po prostu zapisując wynik.

MR

- Przycisk MR wyświetla wartość wcześniej zapisaną w pamięci (Memory Recall).

MC

- Przycisk MC czyści pamięć (Memory Clear).

Jeśli w pamięci znajduje się jakaś wartość, znaczek M pojawia sie w pasku stanu, obok znacznika trybu pracy kalkulatora.

#### Stałe

Przyciski wartości stałych C1 to C6 są widoczne tylko po włączeniu pozycji Constants Buttons w menu Settings.

Aby zapisać liczbę pokazywaną na wyświetlaczu programu &kcalc; w jednej z sześciu stałych, naciśnij najpierw przycisk Inv a następnie jeden z odpowiednich przycisków C1 do C6 C6.

W celu użycia wartości zachowanej w dowolnej ze stałych w obliczeniach, naciśnij właściwy przycisk(C1 to C6) a wybrana liczba pojawi się na wyświetlaczu.

Istnieje możliwość zmiany nazw przycisków stałych aby łatwiej zapamiętać który przycisk przechowuje jaką wartość stałą. Kliknij prawym przyciskiem myszy na jeden z przycisków C1 do C6. Pojawi się menu kontekstowe w którym możesz wybrać Ustaw nazwę.

Istnieje bardzo dużo (w większości fizycznych) predefinowanych stałych, które mogą zostać umieszczone na przyciskach C1 - C6, poprzez wybranie właściwej stałej w menu kontekstowych, które pojawia sie po kliknięciu prawym przyciskiem myszy na jeden z przycisków wartości stałych i wskazanie Wybierz z listy. Mimo że stałe są również dostępne przez pozycję Stałe w menu głównym, zachowanie ich na przyciskach stałych jest bardzo użyteczne, jeśli są one używane często.

### Skróty klawiszowe

Aby uprościć dokonywanie obliczeń, &kcalc; posiada skróty jednoklawiszowe dla większości funkcji. Na przykład wprowadzając `7R`lub `7r` otrzymamy wartość dla 1/7 liczby.

Podczas obliczeń, możesz zawsze nacisnąć i przytrzymać klawisz &Ctrl;, aby wyświetlić skróty klawiszowe dla poszczególnych funkcji.

Klawisz skrótu | Funkcje | Opis
H | Hyp | Włącza tryb hiperboliczny
S | Sin |
C | Cos |
T | Tan |
N | Ln | logarytm naturalny
L | Log | logarytm o podstawie 10
I | Inv | Tryb odwrotny, ⪚ jeżeli chcesz otrzymać wartość funkcji arcus sinus(x) naciśnij kolejno `i s`
\ | +/- | Zmiana znaku
[ | x^2 |
^ | x^y |
! | x! | Silnia
< | Lsh | Przesunięcie bitowe w lewo. Uwaga: naciskając Inv Lsh otrzymujemy przesunięcie bitowe w prawo
& | And | Logiczne I (bitowe)
* | X | Mnożenie
/ | / | Dzielenie
D | Dat | Wprowadzenie danej w trybie statystycznym
O | Or | Logiczne LUB (bitowe). Uwaga: naciskając Inv Or otrzymamy XOR
R | 1/x | Odwrotność
= | = |
Enter | = |
Return | = |
Page Up | C | Wyczyść
Esc | C | Wyczyść
Cofnij | C | Wyczyść
Page Down | AC | Wyczyść wszystko
Następne | AC | Wyczyść wszystko
Del | AC | Wyczyść wszystko

## Komentarz do funkcji specjalnych

### Mod i Inv Mod

Mod zwraca wynik dzielenia modulo jednej liczby przez drugą.

- `22 Mod 8 =` daje wynik 6

  `22.345 Mod 8 =` daje wynik 6.345

Inv Mod zwraca liczbę całkowitą dzielenia modulo podanej liczby przez drugą.

- `22 Inv Mod 8 =` daje wynik 2

  `22.345 Inv Mod 8 =` również daje wynik 2

### %

Używane zamiast przycisku =,% jest interpretowane w następujący sposób:

- Jeżeli ostatnim operatorem był znak + lub - drugi argument operacji jest interpretowany jako podstawa dla procentu określonego przez pierwszy argument.

- Jeżeli ostatnim operatorem jest znak * następuje dzielenie wyniku mnożenia przez 100.

- Jeżeli ostatnim operatorem jest znak / zwrócony zostanie procent określony przez pierwszy argumentu z drugiego.

- W każdym innym wypadku przycisk % zwróci wartość identyczną jak po naciśnięciu klawisza =.

Przykłady:

- `150 + 50 %` daje wynik 225 (150 plus 50% z tej wartości)

  `42 * 3 %` daje wynik 1.26 (42 * 3 / 100)

  `45 / 55 %` daje wynik 81.81... (45 to 81.81.. procent liczby 55)

### Lsh i Inv Lsh

Lsh przesuwa w lewo (bitowo) całkowitą cześć wyświetlanej wartości (mnoży ją przez 2) n razy, gdzie n jest kolejnym wprowadzonym argumentem, i zwraca wartość:

- `10 Lsh 3 =` daje wynik 80 (kolejne 3 mnożenia wyników razy 2 - 10x2=20 x 2 = 40 x 2 = 80).

  `10.345 Lsh 3 =` również daje wynik 80.

Inv Lsh przesuwa w lewo wartość całkowitą (dzielenie przez 2) n razy.

- `16 Inv Lsh 2 =` daje wynik 4 (16 i kolejne wyniki dzielone 2 razy przez 2 - 16 / 2 = 8 / 2 =4).

  `16.999 Inv Lsh 2 =` również daje wynik 4.

### Cmp, And, Or i Xor

Przyciski funkcji Cmp, And i Or dokonują obliczeń logicznych i dlatego są bardziej czytelne gdy Podstawa jest ustawiona raczej na Hex, Oct lub Bin niż Dec. W następnych przykładach Podstawa jest ustawiona na Bin.

Cmp dokonuje dopełnienia cyfry 1 (odwraca bity).

- `101 Cmp` daje wynik 111...111010

And wykonuje operację logicznego I.

- `101 And 110 =` daje wynik 100

Or wykonuje operacje logicznego LUB.

- `101 Or 110 =` daje wynik 111

Xor wykonuje operację XOR (exclusive OR).

- `101 Xor 110 =` daje wynik 11

## Pytania i odpowiedzi

Jak mogę otrzymać liczbę e (Eulera)?

Wykonaj `1 Inv Ln`.

Jak mogę ustawić dwa miejsca po przecinku ?

Kliknij menu Ustawienia->Konfiguracja: KCalc,. Zaznacz opcję Ustaw miejsca dziesiętne i korzystając z przycisków strzałek ustaw wartość 2.

A dokładność?

Głównym współczynnikiem określającym precyzję w programie &kcalc; jest wsparcie przez biblioteki libc i libmath typu danych w C `long double`. &kcalc; potrafi pozyskać te informacje w momencie swojej kompilacji i ustawić je jako podstawowy typ dla reprezentowanych danych.

Ustaw Dokładności w oknie Ustawienia -> Konfiguracja: KCalc programu &kcalc; tak aby obliczenie powyżej zwracały poprawne wartości. Polecamy ustawić dokładność na 14 jeżeli podstawowym typem dla reprezentowanych danych w posiadanej kopii &kcalc; jest `long double`, w innym wypadku wystarczy 8 lub 10.

Większa dokładność niekoniecznie prowadzi do lepszych wyników. Poeksperymentuj z tymi ustawieniami, a zrozumiesz co mam na myśli.

&commands;

## Zasługi i licencje

Prawa autorskie do programu &kcalc; ©:

Bernd Johannes Wuebben 1996-2000

2000-2004 Zespół &kde;

- &Bernd.Johannes.Wuebben; &Bernd.Johannes.Wuebben.mail;

- &Evan.Teran; &Evan.Teran.mail;

- &Espen.Sand; &Espen.Sand.mail;

- &Chris.Howells; &Chris.Howells.mail;

- &Aaron.J.Seigo; &Aaron.J.Seigo.mail;

- &Charles.Samuels; &Charles.Samuels.mail;

Inspiracją do powstania program &kcalc; był program xfrmcalc napisany przez Martin'a Bartlett'a, którego silnik jest nadal częścią &kcalc;.

Prawa autorskie do dokumentacji © 2001,2002,2005, 2006:

- &Bernd.Johannes.Wuebben; &Bernd.Johannes.Wuebben.mail;

- &Pamela.Roberts; &Pamela.Roberts.mail;

- &J.Hall; &J.Hall.mail;

- &Anne-Marie.Mahfouf;&Anne-Marie.Mahfouf.mail;

&underFDL; &underGPL;

## Instalacja

&kcalc; jest częścią pakietu tdeutils, który należy do projektu &kde; i zazwyczaj jest instalowany podczas instalacji &kde;. Więcej szczegółów na temat &kde; znajdziesz na stronie http://www.kde.org.

### Kompilacja i instalacja

&install.intro.documentation; &install.compile.documentation;

### Jak włączyć obsługę typu long double w programie &kcalc;

Jeżeli Twój komputer obsługuje typ danych C `long double` i jeżeli pracujesz z biblioteką libc masz możliwość włączenia obsługi typu `long double` w programie &kcalc;.

Oto jak tego dokonać:

1. Sprawdź plik `../config.h` i zobacz czy HAVE_LONG_DOUBLE został zdefiniowany, &ie; powinieneś znaleźć następującą linię:

       #define HAVE_LONG_DOUBLE 1

   Jeśli nie ma linii z takim napisem oznacza to, że Twój komputer nie obsługuje liczb IEEE typu long double.

2. Zmień plik `kcalctype.h`, `configdlg.cpp`, `kcalc.cpp` oraz `kcalc_core.cpp` i usuń następujące linie:

       #ifdef HAVE_LONG_DOUBLE
       #undef HAVE_LONG_DOUBLE
       #endif

3. Skompiluj ponownie program &kcalc;.