Python jako kalkulator

Nie będziemy na razie używać funkcji matematycznych. Obliczać będziemy wartości wyrażeń zbudowanych z liczb i operatorów matematycznych.

W liczbach separatorem dziesiętnym jest kropka.
Użycie przecinka między liczbami też jest dozwolone, ale przecinek nie jest wówczas separatorem – rozdziela kolejne wspólrzędne wektora.

Po lewej stronie jest dodawanie liczb, po prawej jest wektor o trzech współrzędnych (druga z nich powstała przez dodawanie).

Operatory dodawania (+), odejmowania (-) i mnożenia (*) działają zgodnie z oczekiwaniami.

Działanie operatora dzielenia (/) jest trochę zaskakujące. Co więcej operator ten działa inaczej w Pythonie 2 a inaczej w Pythonie 3. Nieoczekiwane zachowanie dotyczy tylko dzielenia liczb bez części ułamkowej.

Python 3: Python 2:

Operator potęgowania ma nietypowy zapis (**) – by obliczyć $\sqrt 2$ wpisujemy 2**0.5.

Obliczenie $\sqrt[3]{-1}$

Szukamy liczb zespolonych (punktów) z1, z2, z3.

Wpisanie polecenia z1 = (-1)**(1.0/3) skończy się komunikatem o błędzie: negative number cannot be raised to a fractional power. Musimy użyć liczb zespolonych:

Pozostałe pierwiastki trzeciego stopnia z liczby -1 znajdziemy tak: $z_2=z_1^2,\,\,z_3=z_1^3$

Ukryj