Wyniki: wyświetlanie i precyzja
Ta strona wyjaśnia, jak Varlig pokazuje wynik obok każdego wiersza: ile miejsc po przecinku widać, kiedy duże liczby są skracane, jak zaokrąglane są kwoty, jak wygląda każdy rodzaj wyniku i jak dokładne są wartości używane w obliczeniach. Czytaj od początku lub przejdź do tabeli, gdy wynik wygląda inaczej niż oczekujesz. Pod koniec znajdziesz limity obliczeń w pojedynczym wierszu.
Przechowywane wartości i wyświetlane wyniki
Każdy wiersz jest przetwarzany w dwóch etapach. Najpierw wykonywane jest obliczenie z zachowaniem pełnej wartości. Potem wynik jest formatowany dla czytelności, co może oznaczać zaokrąglenie. To zaokrąglenie wpływa tylko na to, co widzisz.
Gdy późniejszy wiersz używa nazwy, korzysta z pełnej wartości, a nie z zaokrąglonych cyfr:
share = 250 / 3 daje 83.3333333333share * 3 daje 250Jeśli przepiszesz widoczne cyfry do nowego wiersza, otrzymasz zaokrągloną liczbę. Aby zachować pełną precyzję, użyj nazwy.
Miejsca po przecinku
Wyniki pokazują do dziesięciu miejsc po przecinku, z zaokrągleniem ostatniej cyfry. Końcowe zera są pomijane, więc widzisz 0.75, a nie 0.7500000000.
2 / 3 daje 0.66666666671 / 8 daje 0.125Wyjątkiem jest zaokrąglanie do cyfr znaczących: zero należące do żądanej liczby cyfr jest wyświetlane, ponieważ jego pominięcie sugerowałoby mniejszą precyzję. Dlatego 31.0357 m to 3 sf daje 31.0 m, a 31.0357 m to 1 dp — 31 m.
Przeliczenia przez gęstość składnika pokazują najwyżej dziewięć cyfr znaczących, zgodnie z precyzją samej gęstości. Dlatego 1 cup milk in g wyświetla 242.739531 g. Podstawowe składniki do pieczenia są zamiast tego zapisane jako masa jednej miarki, więc 1 cup flour in g daje równe 125 g. Zapisana wartość zachowuje wszystkie cyfry.
Aby wyświetlać inną liczbę miejsc po przecinku, zmień wartość domyślną w Settings — opcje obliczeń przyjmują liczby od 0 do 15. Aby zmienić pojedynczy wiersz, użyj opcji formatowania wyniku w jego menu kontekstowym. Obie metody zmieniają tylko wygląd wyniku.
Aby zaokrąglić samą wartość, wpisz to 2 dp. Późniejsze wiersze użyją wtedy wartości zaokrąglonej. Dokładne połowy są zaokrąglane od zera, więc 2.345 to 2 dp daje 2.35, a round(-2.5) — -3.
exact = 2 / 3 daje 0.6666666667approx = 2 / 3 to 2 dp daje 0.67exact * 3 daje 2approx * 3 daje 2.01Więcej sposobów opisuje rozdział Zaokrąglanie.
Kwoty pieniężne
Kwoty podlegają regułom swojej waluty zamiast domyślnej zasady dziesięciu miejsc po przecinku:
- Zaokrąglenie do precyzji waluty. Większość walut pokazuje dwa miejsca po przecinku, jen nie pokazuje żadnego, a dinar kuwejcki — trzy. Wszystkie wymienia katalog walut.
- Końcowe zera są zachowywane.
$15jest wyświetlane jako$15.00. - Małe dodatnie kwoty zachowują cyfry. Kwota poniżej jednego centa, np.
$0.004, nie jest zaokrąglana do$0.00. - Ceny za jednostkę zachowują do czterech miejsc po przecinku zgodnie z wpisanym zapisem, więc taryfa
£0.075/kWhlub cena paliwa£1.499/Lpojawia się w całości. Tak samo działają kwoty w pensach lub centach:6.2pdaje£0.062, a24.5p/kWh—£0.245/kWh. Suma obliczona na ich podstawie jest jednak zaokrąglana do pensa:148.9p/L * 45 Lto£67.01. Przy większej liczbie miejsc cena poniżej £1 pokazuje cztery cyfry znaczące (£0.12345/kWhwyświetla się jako£0.1235/kWh), a inne ceny, np.£8/kg / 3, są zaokrąglane do pensa. - Kryptowaluty pokazują do dziesięciu miejsc po przecinku, tak jak zwykłe liczby.
Wiersz przypisujący kwotę do nazwy pokazuje ją tak samo jak każdy inny wiersz. Nazwa zachowuje pełną wartość, więc używające jej późniejsze wiersze pozostają dokładne.
£250 / 3 daje £83.33bill = £250 / 3 daje £83.33bill * 3 daje £250.00¥1,250 / 4 daje ¥313£0.075/kWh daje £0.075/kWh£8/kg / 3 daje £2.67/kgOpcje walut w Settings pozwalają wyłączyć zaokrąglanie do precyzji waluty, wyświetlać kody zamiast symboli (15.00 USD zamiast $15.00) lub pomijać końcowe zera ($15 zamiast $15.00).
Duże i małe liczby
Od 100 000 zwykłe liczby są skracane literą: k oznacza tysiąc, M milion, G miliard (tysiąc milionów), T bilion, a P biliard. Bardzo duże i bardzo małe liczby przechodzą na zapis naukowy.
Kwoty poniżej miliona są wyświetlane w całości, z dokładnością do najmniejszej jednostki waluty, aby skrót nie ukrywał części zapłaty lub zarobku: £199,999.98 pozostaje £199,999.98. Od miliona kwoty też są skracane — z literą B tam, gdzie zwykłe liczby używają G, i najwyżej trzema miejscami po przecinku.
| Wielkość | Liczba bez jednostki | Kwota pieniężna |
|---|---|---|
| poniżej 100 000 | 99,999 |
$99,999.99 |
| od 100 000 | 250k, 123.456k |
$150,000.00 |
| od 1 000 000 | 1.5M, 1.234567M |
$2.5M |
| od 10⁹ | 8.1G, 1.23456789G |
$1.235B |
| od 10¹² | 2T |
$2T |
| od 10¹⁵ | 100P |
$100P |
| powyżej 10¹⁷ | 1e18, 6.02e23 |
$1e18 |
| poniżej 0,000001, z wyjątkiem zera | 1e-7, 5e-11 |
250000 daje 250k£99,999.99 * 2 daje £199,999.98$1234567.89 daje $1.235M8,100,000,000 daje 8.1G$1,234,567,890 daje $1.235B0.0000001 daje 1e-7Litera zmienia tylko wyświetlanie. 1.5 million jest zapisywane jako 1 500 000, a wyświetlane jako 1.5M; 3bn wyświetla się jako 3G. Poniżej 100 000 wyniki używają separatorów tysięcy (99,999).
Liczba z jednostką jest zawsze wypisywana w całości, ponieważ litera obok jednostki wyglądałaby jak przedrostek: 175,200 Wh mogłoby zostać odczytane jako kilowatogodziny. Dopiero wartości powyżej 10¹⁷ lub poniżej 0,000001 przechodzą na zapis naukowy.
175200 Wh daje 175,200 Wh1 light year in km daje 9,460,730,472,580.8 kmW Settings możesz wyłączyć skróty, aby wypisywać liczby w całości, albo wyłączyć separatory tysięcy.
Rodzaje wyników
Każdy rodzaj wartości ma własny format. Tabela pokazuje po jednym lub dwa przykłady każdego z nich.
| Rodzaj | Wpisujesz | Wynik |
|---|---|---|
| Liczba | 1,000 + 10 |
1,010 |
| Kwota pieniężna | $100 + 15%, 50 CHF |
$115.00, CHF 50.00 |
| Wielkość z jednostką | 65 kg in lb, 12 kg / 4 m² |
143.3004704202 lb, 3 kg/m² |
| Wielkość w dwóch jednostkach | 180 cm in feet and inches |
5 feet 10.87 inches |
| Liczba pikseli | 420 mm in px at 300 dpi |
4,961 px |
| Zakres | 2-3 kg, 5-10% of £200 |
2 - 3 kg, £10.00 - £20.00 |
| Procent | 15 / 60 as % |
25% |
| Mnożnik | £60 / £40 as x |
1.5x |
| Ułamek | 0.75 as fraction, 22/7 as fraction |
¾, 3 1/7 |
| Notacja naukowa | 12345.6789 in sci |
1.23456789e4 |
| Szesnastkowo, binarnie, ósemkowo | 255 in hex, 255 in binary, 255 in octal |
0xFF, 0b11111111, 0o377 |
| Prawda lub fałsz | £45 > £40 |
true |
| Data | March 12 2024 + 3 days |
March 15, 2024 |
| Godzina | 12:30 PM, 1:00:30 |
12:30 PM, 01:00:30 |
| Czas trwania | 9:30 to noon, 30 min - 2 hours |
2 hours 30 min, -(1 hour 30 min) |
| Zakres dat | Q1 2025 |
Jan 1 – Mar 31, 2025 |
| Kod czasowy | 48 frames @ 24 fps |
00:00:02:00 |
| Czas okrążenia | 1:23:45.67 |
01:23:45.67 |
| Tempo | 5 km in 26:45 |
05:21/km |
| Stopnie, minuty, sekundy | 45.5 degrees as DMS |
45° 30′ 0″ |
| Godziny, minuty, sekundy | 1.5 hours as HMS |
1h 30m 0s |
| Wysokość dźwięku | 440 Hz to pitch |
A4 |
| Lista | [1, 2+3, 4*2] |
[1, 5, 8] |
| Macierz | identity(2) |
[[1, 0], [0, 1]] |
| Liczba zespolona | 3 * (2 + 3i), conj(-1 + i) |
6 + 9i, -1 - i |
| Tekst | weekday on March 12 2024, differentiate(x^3, x) |
Tuesday, (3*(x^(3-1))) |
Niektóre jednostki mają własne zasady. Miarki cups i pinty przyjmują liczbę mnogą, więc widzisz 2.5 cups i 2 pints. Wynik z dwiema jednostkami pokazuje mniejszą część z dwoma miejscami po przecinku, np. 5 feet 10.87 inches, natomiast czasy trwania oraz masy w kamieniach i funtach zaokrąglają mniejszą jednostkę do liczby całkowitej. Liczby pikseli mają separatory tysięcy i spację przed px.
500 g sugar in cups daje 2.5 cups82 kg in stones and pounds daje 12 st 13 lb89.9 min in hours and minutes daje 1 hour 30 min6000 px * 4000 px daje 24,000,000 pxNiektóre formaty zależą od dzisiejszej daty. Data z bieżącego roku pomija rok, a daty bliskie dzisiejszej mogą być wyświetlane jako określenia względne:
March 12 daje March 12tomorrow at 1am daje Tomorrow at 1:00 AMWarto znać jeszcze dwa rodzaje odpowiedzi:
- Brak wyniku i brak błędu oznacza, że wiersz nie ma nic do pokazania: jest komentarzem, pustym wierszem, definicją funkcji lub niedokończonym zapisem takim jak
total =. pending…oznacza, że wiersz potrzebuje danych, które nie są jeszcze dostępne.
Dokładność wyników
Arytmetyka dokładna
Liczby całkowite, dziesiętne i ułamki są zapisywane dokładnie. Dodawanie, odejmowanie, mnożenie, dzielenie i potęgowanie z całkowitym wykładnikiem zachowują dokładność, również dla ułamków takich jak ⅓, które nie mają skończonego rozwinięcia dziesiętnego. Porównania za pomocą == sprawdzają dokładne wartości, bez zaokrąglania.
0.1 + 0.2 == 0.3 daje true1/3 + 1/3 + 1/3 == 1 daje truePierwiastki kwadratowe są dokładne, gdy można je zapisać dokładnie; w przeciwnym razie mają dokładność do 38 cyfr znaczących (dalsze cyfry są odcinane, nie zaokrąglane). Odchylenie standardowe używa tego samego pierwiastka. gcd i lcm są dokładne, nigdy ujemne i działają na ułamkach bez wcześniejszego zaokrąglania.
sqrt(2.25) daje 1.5sqrt(1e-64) daje 1e-32gcd(12, 18) daje 6Wyniki przybliżone
Niektórych działań nie da się wykonać dokładnie, dlatego używają binarnej arytmetyki zmiennoprzecinkowej o ograniczonej liczbie cyfr dokładności:
- trygonometria, logarytmy i funkcje wykładnicze
- potęgi o wykładnikach niecałkowitych, np.
2^0.5, oraz literały w zapisie naukowym z wykładnikiem ułamkowym, np.1e2.5 - niektóre przeliczenia jednostek
- rozwiązywanie równań, pochodne numeryczne i całki
- rozkłady macierzy i wartości własne
- funkcje liczb zespolonych wykraczające poza podstawową arytmetykę
Ponieważ == porównuje dokładne wartości, dwa przybliżone wyniki mogą wyglądać identycznie, a mimo to nie być równe. Zamiast tego porównaj ich różnicę z małą tolerancją:
sqrt(2)^2 daje 2sqrt(2)^2 == 2 daje falseabs(sqrt(2)^2 - 2) < 0.000000001 daje trueDobierz tolerancję do wielkości liczb. Dziesięć miejsc po przecinku na ekranie nie gwarantuje dziesięciu poprawnych miejsc, zwłaszcza w trudnych problemach numerycznych.
W listach, macierzach i liczbach zespolonych część będąca jedynie błędem zaokrąglenia zmiennoprzecinkowego, znacznie mniejsza od otaczających ją wartości, jest pokazywana jako 0. Dzięki temu wyniki takie jak rozkład macierzy lub exp(i * pi) pozostają czytelne. Zapisana wartość zachowuje cyfry, więc obowiązuje ta sama zasada sprawdzania z tolerancją:
exp(i * pi) daje -1abs(exp(i * pi) + 1) < 0.000000001 daje trueRozmiar liczby
- Liczby dziesiętne są zapisywane jako liczba całkowita do 2¹²⁸−1 (około 38 cyfr) pomnożona przez potęgę dziesięciu od 10⁻¹²⁸ do 10¹²⁷. Liczby większe niż
1e127nadal działają, o ile mieszczą się ich cyfry. - Ułamki mogą mieć licznik i mianownik o długości do 4096 bitów każdy.
- Dodanie maleńkiej liczby do ogromnej może spowodować utratę małej części:
1e30 + 0.001pokazuje1e30. - Wyjście poza zakres podczas mnożenia lub potęgowania daje
Error: ∞, zarówno gdy wynik jest zbyt duży, jak i zbyt mały. Obliczenie nigdy nie zawija wartości do błędnej liczby.
1e30 + 0.001 daje 1e301e100 * 1e100 daje Error: ∞Limity
Każdy wiersz musi mieścić się w tych limitach. Osiągnięcie jednego z nich powoduje błąd tylko w danym wierszu, zwykle Error: calculation limit; reszta notatki działa dalej. Częściowa suma ani niedokończone obliczenie nigdy nie są przedstawiane jako wynik. Aby usunąć błąd, zmniejsz zakres, macierz, głębokość zagnieżdżenia lub rozmiar problemu.
| Element | Limit |
|---|---|
| Jeden wiersz | 64 KiB tekstu lub 4096 liczb, słów i symboli |
Lista lub range |
1024 elementy |
| Macierz | Od 1 do 32 wierszy i kolumn; wszystkie wiersze tej samej długości |
| Zagnieżdżone listy i wywołania funkcji wbudowanych | 16 poziomów |
sum lub product w zadanym zakresie |
10 000 składników |
| Zaawansowana matematyka | 100 000 kroków współdzielonych przez operacje zagnieżdżone, więc takie obliczenia szybciej osiągają limit |
| Własne funkcje | 32 parametry; maksymalnie 16 poziomów wywołań funkcji, łącznie 16 384 wywołania i wiersze treści funkcji |
| Ułamki | 4096 bitów w liczniku lub mianowniku |
| Pochodna symboliczna | 8192 znaki wyniku |
solve |
128 iteracji |
integrate |
2048 udokładnień, 20 poziomów podziału |
Varlig Calc nie obsługuje obecnie ogólnej algebry symbolicznej, całek nieoznaczonych, układów równań nieliniowych, historycznych cen kryptowalut, zapisu rzutów kośćmi takiego jak 2d6, działań na wartościach z niepewnością takich jak 10 ± 0.5 ani łańcuchów porównań takich jak 1 < x < 5. Więcej o zaawansowanych obliczeniach znajdziesz w rozdziale Zaawansowana matematyka.
Przykład całościowy
Oto budżet podróży wykorzystujący większość zasad z tej strony:
flights = £1,284.60 daje £1,284.60hotel = £96.50 * 4 daje £386.00total = flights + hotel daje £1,670.60each = total / 3 daje £556.87each * 3 daje £1,670.60each / total as % daje 33.3333333333%each / total as fraction daje ⅓total to 0 dp daje £1,671.00total * 1000 daje £1.671Meach = total / 3pokazuje udział zaokrąglony do pensów, ale nazwa zachowuje pełną wartość.each * 3używa pełnej wartości, więc daje dokładnie £1670,60, a nie £1670,61.- Wartość procentowa nie jest kwotą pieniężną, więc pokazuje dziesięć miejsc po przecinku. Jako ułamek jest dokładna.
to 0 dpzaokrągla samą wartość, a końcowe zera pozostają, ponieważ wynik jest kwotą pieniężną.- Pomnożenie przez 1000 przekracza 1 000 000, więc wynik zostaje skrócony do
£1.671M.