Pozor na kalkulačku ve Windows, nebo propadnete z matematiky

Používáte kalkulačku ve Windows? Jeden z vás nám do redakčního e-mailu napsal stížnost, že nepočítá zcela korektně podle elementárních matematických zásad. Máme na mysli samozřejmě prioritu početních operací, tedy učivo ze základní školy.

Jedná se o starý problém, který si však zaslouží připomenutí. Zvláště pak v případě, pokud byste potřebovali spočítat něco důležitého (Přeci jen by bylo nepříjemné vyhladit špatným výpočtem třeba v Temelíně polovinu Česka :-).

Když na kalkulačce budete chtít spočítat příklad 4 + 2 * 5, namísto správného výsledku 14 se zobrazí 30. Kalkulačka totiž ignoruje přednost násobení před sčítáním a příklad počítá sekvenčně tak, jak vyťukáváte číslice za sebou, tedy:

4 + 2 = 6 a dále 6 * 5 = 30

Správně by ale po klepnutí na tlačítko = měla zobrazit 14, neboť výraz 4 + 2 * 5 lze rozepsat jako 4 + 5 + 5. Právě proto má násobení přednost před sčítáním.

Klepněte pro větší obrázekKlepněte pro větší obrázekKlepněte pro větší obrázekKlepněte pro větší obrázek
Po klepnutí na tlačítko = se bohužel zobrazí 30, což je samozřejmě špatně. Nutno podotknout, že se nejedná o nikterak nový problém. Stejným chováním trpí i starší kalkulačky Windows.

Kalkulačka ve Windows se začne korektně chovat leda v případě, že ji přepnete do vědeckého režimu!

Klepněte pro větší obrázekKlepněte pro větší obrázek
Ve vědeckém režimu kalkulačky už posloupnost operací funguje dle pravidel a výsledkem je 14. Pokud si tohoto rozdílného chování nebude uživatel vědom, spočítá naprostý nesmysl.

Možná je toto nekorektní chování způsobeno jen tím, že Microsoft kopíruje primitivně-sekvenční chování starých levných plastových kalkulaček a vědecký režim už napodobuje ty lepší, na které si pamatujeme třeba ze středoškolských a vysokoškolských studií. Má to jeden háček, Microsoft je v tomto přístupu široko daleko jediný.

Klepněte pro větší obrázekKlepněte pro větší obrázekKlepněte pro větší obrázek
Kalkulačka z čistého Androidu 8.1, macOS a ta webová v Googlu. Všechny dodržují posloupnost, takže výsledkem je 14 a nikoliv 30 jako v případě Windows.

Když stejný výpočet bez uvedení závorek vyzkoušíte v kalkulačce na Androidu (přinejmenším na tom čistém), na webu, anebo na macOS, všichni dodržují i v základním režimu korektní posloupnost a výsledkem tedy bude číslo 14.

Rozpaky budí i programátorský režim kalkulačky

Nutno podotknout, že se nejedná o jediné zvláštní chování kalkulačky z Windows 10, které budí rozpaky. Jisté problémy má i programátorský režim. Pokud v něm výpočty omezíme na bajty (BYTE), bere v potaz pouze signed bajty, tedy bajty se znaménkem. Takový bajt může nabývat hodnot -127 až 127.

Klepněte pro větší obrázek
Bajt s šestnáctkovou hodnotou FF má tu desítkovou 255. To často znají i neprogramátoři díky hexadecimálnímu vyjádření RGB barvy (FFFFFF = plný bílý odstín RGB). V případě programátorského režimu kalkulačky ve Windows 10 však šestnáctková hodnota FF odpovídá desítkové hodnotě -1, protože kalkulačka počítá se signed bajty, tedy s bajty se znaménkem.

Základní unsigned bajt bez znaménka má ale přeci rozsah 0 až 255! Bohužel, kalkulačka Windows jej z nějakých těžko pochopitelných příčin nepodporuje, a tak se pro podobné počty se základními bajty naprosto nehodí, což je velká škoda.

Co udělat s novým počítačem s Windows, než ho začnete používat

Diskuze (125) Další článek: Británie vymýšlí způsob, jak dostat Zuckerberga k výslechu. Už delší dobu se mu nechce

Témata článku: Software, Google, Microsoft, Windows, Android, Tipy, Matematika, Početní operace, Starý problém, Základní režim, Chování, Stejný výpočet, Nekorektní chování, Velká škoda, Temelín, Stejné chování, Správný výsledek, Posloupnost, Nový problém, Naprostý nesmysl, Redakční e-mail, Jistý problém, Základní škola, Znaménko, Kalkulačka


Určitě si přečtěte

Užitečné funkce ve Windows 10, o kterých možná ani nevíte

Užitečné funkce ve Windows 10, o kterých možná ani nevíte

** Operační systém Windows 10 nabízí spoustu užitečných drobností ** O některých funkcích mnoho uživatelů není ** Ukážeme vám některé užitečné vychytávky

Vladislav Kluska | 81

Tohle tak jednou zažít: Nová vzducholoď Airlander 10 s prosklenou podlahou

Tohle tak jednou zažít: Nová vzducholoď Airlander 10 s prosklenou podlahou

** Airlander 10 nabídne plavby vzduchem v interiéru s prosklenou podlahou ** Luxusní vzducholoď byla původně vyvíjena pro vojenské účely ** Počítá se s třídenními „kochacími“ výlety za poznáním

Karel Kilián | 7

Říjnová aktualizace způsobuje na počítačích HP „modrou obrazovku smrti“

Říjnová aktualizace způsobuje na počítačích HP „modrou obrazovku smrti“

** Uživatelé hlásí další problémy s kumulativní aktualizací KB4464330 ** Na některých počítačích HP končí update „modrou obrazovkou smrti“ ** Na vině je patrně ovladač klávesnice

Karel Kilián | 79

Moral machine: Už víme, zdali je lepší zabít psy, sebe nebo matky na přechodu

Moral machine: Už víme, zdali je lepší zabít psy, sebe nebo matky na přechodu

** Jak byste se sami vypořádali s tramavajovým dilematem? ** Vědci před lety spustili globální dotazník ** Nyní se pochlubili s výsledky

Jakub Čížek | 150

Porno insider: Jak virtuální realita vstupuje do filmů pro dospělé

Porno insider: Jak virtuální realita vstupuje do filmů pro dospělé

** Pornografie údajně představuje třetinu internetové obsahu a je technologický tahounem ** Do erotického obsahu postupně zasahuje i virtuální realita ** Kromě vizuálního vjemu se pracuje také na virtuálním uspokojení toho hmatového

Jan Dudek | 30


Aktuální číslo časopisu Computer

Odhalte skryté funkce Windows 10

Test levných Androidů do 4 000 Kč

Srovnání úsporných minipočítačů

Změřili jsme rychlost 10Gb/s ethernetu