Thumbnail play icon

Pohyblivá řádová čárkaComputerphile

Přidat do sledovaných sérií 8
93 %
Tvoje hodnocení
Počet hodnocení:211
Počet zobrazení:2 854

Počítače by měly být přeci dokonale přesné, tak proč nám tvrdí, že 0,1 + 0,2 = 0,3000...1?

Komentáře (25)

Zrušit a napsat nový komentář

Odpovědět

To mi priponulo tú hádanku:
Do hotelu přišli tři lordi. V recepci si řekli za jeden pokoj 10 liber, které každý z gentlemanů zaplatil - dohromady 30 liber.
Když měl poslíček odnést pánům zavazadla, přispěchal ředitel hotelu, že měli hosté zaplatit jen 25 liber. Dal tedy poslíčkovi pět liber, ať je lordům vrátí.
Poslíček nevěděl, jak rozdělit 5 liber mezi tři osoby, tak dal každému po libře a dvě si nechal.
Každý tedy zaplatil 9 liber (deset původně, jednu dostal zpět). 3x9=27. Dvě libry si nechal poslíček. 27+2=29. Kam zmizela jedna libra?

51

Odpovědět

Je to sranda ako sa dá zblbnúť mozog a nevšimnúť si, že namiesto odčítania, niekto sčíta to čo páni vytiahli z peňaženky s tým, čo si naopak poslíček do peňaženky dal. Skrátene, páni hotel obohotili o 27 libier a poslíček hotel obral o 2. čiže 27-2. Ja som sa nad tým príkladom tiež vminulosti pozastavil a nechápal som, čo sa to deje :D

40

Odpovědět

+RododendronA nebo : Meli dohromady zaplatit 25,- ale zaplatili 27, protože si poslíček 2Kč nechal. Cílová částka 30kč v tu chvíli nehraje roli. Pokud budu bazirovat na 30kč musím počítat jinak. 30 zaplaceno = 25+5vráceno ředitelem => 25+3vráceno poslíčkem+2ponecháno

20

Odpovědět

To si človek najprv trochu ponadáva, kým na to príde sám. Porovnávať float operátorom == je čistá programátorská samovražda.

110

Odpovědět

praise be

10

Odpovědět

Má to něco společného s tím, že když platím v bance, tak mi to odečte z účtu vždy o 0.0011 Kč víc? Například platím 150Kč, tak do potvrzovací sms mi dojde, že jsem zaplatil 150,0011Kč.

111

Odpovědět

Ne, to znamená, že posíláte 150,00 a ta 11 na konci znamená měnu CZK nikoliv hodnotu. A ještě to znamená, že máte pravděpodobně účet u Raiffeisenbank :-D

550

Odpovědět

Velmi zajímavé video, ocením nějaké další od tohoto člověka.

350

Odpovědět

Jak tu někdo psal, že stále po zhlednutí videa nechápe, proč to tak vyjde, tak je to proto, že to nejdůležitější vynechal. Právě v tom sčítání, co by řekl že je hrozně zdlouhavé, tak v podstatě se binární kód "uřízne" v určitých mocninách dvou, a tudíž když to pak sčítáte, sečtou právě ty nuly a jedničky pod sebou jak on to měl, a to se zpět převede do desítkové soustavy, ale protože bylo číslo uřízlé těsně "za jedničkami" a ne "za nulami", tak se číslo zdá trochu větší, takže při sečtení vyjde číslo o malinko větší ve dvojkové soustavě, a když se převede zpět na desítkovou, znamená to součet mocnin dvou, tedy jak říkal poloviny, čtvrtiny osminy atd, a ty vyjdou celkově o malinko více, než je desítkové číslo 3. A právě proto že to neukázal názorně na tom příkladu, což by mi přišlo celkem jednoduché (23 cifer neni zas tolik a sčítání ve dvojkové soustavě je celkem jednoduché) a pak by bylo vidět, že při převedení zpět vyjde číslo o malinko větší.
Teda přišlo by to zřejmé člověku, kdo rozumí dvojkové soustavě a video by bylo maximálně o minutu delší.
Ale snad jsem to trochu osvětlil pro ty, co tomu ještě trochu nerozuměli.

342

Odpovědět

Myslím že pro většinu lidí by musel vysvětlit proč 1 + 1 = 10 :)

250

Odpovědět

+MalkyInu, lidé se dělí na 10 částí - ti kteří rozumí dvojkově soustavě a ti, kteří ne... :)

120

Odpovědět

+Malkyne na "10 částí" ale "do 10 skupin" .... zní i vypadá to lépe a dává to oproti "částem" i logiku .-)

00

Odpovědět

9 minutové video kde je pouze řečeno, že i jiné soustavy než desítková mají periodická čísla.
A popis videa vyvolává dojem, že většina lidí považuje pc za nějakou kouzelnou krabičku, kterou ovládá národ skřítků. Takže by jim spíše prospělo video o tom, jak funguje tranzistor a jak se z něj staví základní logické hradla.

919

Odpovědět

Odpovědět

Cítím se fakt hloupě, ale ani po zhlédnutí videa pořád nechápu, proč by počítač při sčítání 1/10 + 2/10 napsal 0,300000...1.

133

Odpovědět

ze stejného důvodu, jako když překládáš text z češtiny do angličtiny a při reverzním překladu dostaneš něco jiného

tak zde je ten překlad je o mnoho snazší, ale má také své limity, rozdíl ve "zbytcích"
zde nastává problém, že jakákoliv číselná soustava obsahuje čísla, která nemají ukončený rozvoj (desetinný např. číslo 1/3, binární např. číslo 1/10 převedené do binární soustavy 0,0001100110011...)...tzn. překlad programu z dekadických vstupů do binárních a zpět do dekadických přináší úskalí, protože počítač si nemůže pamatovat číslo až do nekonečna, ale má proto vyhrazen jistý prostor (32-bit...23 řádů, 64-bit 50+ řádů), takže ten rozdíl, ta chyby, např. u těch třetin bude na posledním digitu (např. u 32-bitového na 23. místě)

ztraceno v překladu

320

Odpovědět

1) Výsledek sčítání dvou periodických čísel číslici po číslici bude v některých případech více či méně zaokrouhlený (0.33333333333... + 0.33333333333...).
2) 1/3 je příklad periodického čísla v desítkové soustavě.
3) 1/10 je příklad periodického čísla ve dvojkové soustavě.

00

Odpovědět

+Tomáš Jeziorskýtady někdo dělal výpisky z odkazu nad :D

00

Odpovědět

Proč 1/10 = 0,000110011... ?

158

Odpovědět

je to úplne jednoduché , zoberieš desatinú časť číslo , a postupuješ:
1/10 = 0.100 = 100

100 *2
0|200 *2
0|400 *2
0|800
1|600
1|200
0|400
0|800
1|600
1|200

atd

106

Odpovědět

+anffPřesněji:

0 *1/2 celkpvě 0
0 *1/4 celkově 0
0 *1/8 celkově 0
1 *1/16 celkově 1/16=0,0625
1 *1/32 celkově 1/16+1/32=0,0625+0,3125=0,09375
0 *1/64 celkově 0,09375
0 *1/128 celkově 0,09375
1 *1/256 celkově 0,09375+1/256=0,09765625
1 *1/512 celkově 0,09765625+1/512=0,099609375

A proto je tam ta periodicita. Ve dvojkové soustavě čím více máš cifer za desetinou částkou, tím více se blížíš k racionálnímu číslu 0,1.
Zkrátka ve dvojkové soustavě je 0,1 zapsané jako iracionální číslo a tedy čím více řádů, tím blíže jsi 0,1 v desítkové soustavě.
Stejně jako 1/3 v desítkové soustavě se dá zapsat jako 0,3 nebo 0,33 nebo 0,333 atd, a čím víc cifer za desetinou řádkou, tím jsi blíže zlomku 1/3

150

Odpovědět

+anffanff: Možná bylo dobré říct, co to je a jak to funguje. Jedná se přímý výpočet binárního zápisu čísla za desetinnou čárkou. Je to analogie pro výpočet binárního zápisu celého čísla. Vysvětlovat proč to funguje nedokážu jednoduchým způsobem, ale zkrátka násobíte číslo dvěma, do dalšího kroku přenášíte jenom zbytek za desetinnou čárkou a cifry před desetinnou čárkou z jednotlivých kroků tvoří postupně binární zápis.

Mike: Ta periodicita je tam z trochu jiného důvodu. Aby číslo nebylo periodické, musel by existovat zlomek, který se danému číslu rovná s mocninou dvojky ve jmenovateli a nějakým celým číslem v čitateli. Např. 0.375 je zapsatelné jako 3/8, takže nebude periodické. Číslo 0.1 je ale rovno 1/10, což je 1/(2x5). Je to zlomek v základním tvaru, nelze jej nijak dál zjednodušit, a ať ho rozšíříš čímkoli, nedostaneš mocninu dvojky ve jmenovateli. Tím pádem takový zlomek neexistuje a musíš to zapsat periodicky.
Ale třeba v soustavě o základu 110 to lze provést, rozšíříš jej 11 a máš 11/110, 110 je mocnina 110 (první), takže v pohodě. Proto jsou 1/3,1/6,1/7 atd. všechno periodická čísla v desítkové soustavě, protože to nelze rozšířit, abychom dostali mocninu 10.

51

Odpovědět

Upřímně nechápu ty, kteří na normální zvídavou otázku kliknou palec dolů...

241

Odpovědět

První!!!! xDDDDD :DDDD :P ;) :DDDD x'DDDD

1347

Odpovědět

A určitě nejsi 1,000000001-tý? :D

894
Souhlasím Tato webová stránka používá k analýze návštěvnosti soubory cookie. Používáním tohoto webu s jejich použitím souhlasíte. (Další informace)