Kalkulator naukowy

Stronę tą wyświetlono już: 523 razy

Projekt kalkulatora umożliwiającego nie tylko wykonywanie obliczeń numerycznych, ale również utworzenie własnych zmiennych i makr na potrzeby przeprowadzanych obliczeń. Lista operatorów matematycznych obsługiwanych przez program jest następująca:

  • zaprzeczenie !
  • oraz &
  • lub |
  • xor ^
  • dodawanie +
  • inkrementacja ++
  • odejmowanie -
  • dekrementacja --
  • mnożenie *
  • dzielenie /
  • podstawienie =
  • większe >
  • mniejsze <
  • większe lub równe > =
  • mniejsze lub równe <=
  • nie równe !=
  • równe ==
  • dodaj wartość +=
  • odejmij wartość -=
  • pomnóż przez wartość *=
  • podziel przez wartość /=
  • lewy nawias (
  • prawy nawias )
  • potęgowanie #
  • dzielenie modulo %

Lista dostępnych funkcji matematycznych:

  • sin sinus kąta wyrażonego w radianach
  • cos kosinus kąta wyrażonego w radianach
  • tan tangens kąta wyrażonego w radianach
  • sinh sinus hiperboliczny kąta wyrażonego w radianach
  • cosh kosinus hiperboliczny kąta wyrażonego w radianach
  • tanh tangens hiperboliczny kąta wyrażonego w radianach
  • asin arkus sinus
  • acos arkus kosinus
  • atan arkus tangens
  • abs wartość bezwzględna
  • floor zaokrąglij do całkowitej w dół
  • ceil zaokrągla liczbę do całkowitej w górę
  • middle zaokrągla do liczby całkowitej w dół, gdy wartość po przecinku jest mniejsza lub równa 0.5 natomiast w górę w przeciwnym przypadku
  • ln logarytm naturalny podanej liczby
  • log10 logarytm dziesiętny podanej liczby
  • exp stała e podniesiona do podanej potęgi
  • rad zamienia stopnie na radiany
  • deg zamienia radiany na stopnie
  • sqrt pierwiastek drugiego stopnia
  • silnia oblicza silnię liczby całkowitej, większej od 0
  • IsFirstNumber sprawdza, czy zadana liczba jest liczbą pierwszą

Lista dostępnych stałych matematycznych i fizycznych:

  • pi - stosunek obwodu koła do jego średnicy
  • mp - masa protonu 1.6726231e-27 kg
  • mn - masa neutronu 1.6749286e-27 kg
  • me - masa elektronu 9.1093897e-31 kg
  • g - przyspieszenie ziemskie 9.80665 m/s^2
  • G - stała grawitacyjna 6.67259e-11 m^3 / (kg * s^2)

Lista dostępnych makr:

  • log_a_b a,b (ln(b)/ln(a)) - oblicza logarytm o podstawie a z b
  • if w,t,f ((w!=0)*t+(w==0)*f) - zwraca f gdy w = 0, natomiast t w przeciwnym przypadku
  • dist x,y (sqrt(x#2+y#2)) - odległość punktu o współrzędnych x, y od początku dwuwymiarowego układu współrzędnych kartezjańskich
  • dist x,y,z (sqrt(x#2+y#2+z#2)) - oblicza odległość punktu o współrzędnych x, y, z od początku trójwymiarowego układu współrzędnych kartezjańskich
  • min a,b (if(a << b,a,b)) - zwraca wartość najmniejszą spośród dwóch dostępnych: a oraz b
  • max a,b (if(a >> b,a,b)) - zwraca największą wartość spośród dwóch dostępnych: a oraz b
  • ctg Angle (1/tan(Angle)) - kotangens kąta zawartego pomiędzy dwoma punktami
  • sigm Betha,x (1/(1-exp(-Betha*x)))
  • log2 arg (ln(arg)/ln(2)) - logarytm drugiego stopnia z arg

Dyrektywy:

  • cls - czyści listę wykonanych dotąd poleceń
  • define - umożliwia utworzenie własnego makra
  • nazwa_zmiennej=wartość_lub_wyrażenie - tworzenie nowej zmiennej w pamięci kalkulatora (tylko w przypadku gdy zmienna o podanej nazwie nie istnieje w pamięci kalkulatora, gdyż w tymże przypadku dyrektywa staje się zwykłym podstawieniem wartości)
  • delete nazwa_zmiennej_lub_makra - usuwa z pamięci daną zmienną lub makro
  • Diagram2D zmienna,min,max,gęstość,f(zmienna) - rysuje wykres 2D

Przykład tworzenia makra

Listing 1
  1. define nazwa_makra (arg1,arg2)(arg1*arg2)

Powyższy przykład tworzy makro o nazwie nazwa_makra z dwoma argumentami arg1, arg2, które należy podać przy "wywoływaniu" tegoż makra. Pozostałe wyrażenie (arg1*arg2) określa operację wykonywaną przez makro. Korzystając z makra np. w następujący sposób:

Listing 2
  1. nazwa_makra(2,3)

należy pamiętać, że kompilator przed rozpoczęciem obliczeń podstawi w jego miejsce następujące wyrażenie:

Listing 3
  1. (2*3)

Przykład tworzenia wykresu:

Listing 4
  1. Diagram2D x, 0, 100, 1000, x * sin(x)

Powyższy przykład wyświetla 1000 punktów obliczeniowych funkcji f(x)= x*sin(x) z zakresu wartości od 0 do 100.

Okno główne programu kalkulator podzielone zostało na trzy części:

  1. linii poleceń;
  2. linii wyświetlania wyniku ostatniego obliczenia
  3. listy stu ostatnich poleceń wykonanych przez program
Widok okna głównego programu kalkulator.
Rys. 1
Widok okna głównego programu kalkulator.

Jak widać na załączonym rysunku 2 dyrektywa Diagram2D umożliwia sporządzenie wykresu funkcji i wyświetlenie go w oddzielnym oknie.

Widok okna wykresu stworzonego w programie kalkulator.
Rys. 2
Widok okna wykresu stworzonego w programie kalkulator.

Wideo prezentacja programu

Załączniki:

Kalkulator naukowy

Komentarze