LINUXSOFT.cz
Nazwa użytkownika: Hasło:     
    CZ UK PL

> Komentarze :: zprávička Pokud programujete a myslíte si, že nepotřebujete studium matematik.....

Tak tak... 20.3.2006 11:08
Jakub Jochec
Jsou napr. problemy ktere se celkem bezproblemu daji resit vzorcem - vyrazem, misto casove narocneho cyklu, jiste clovek mavne rukou a rekne si boha par milisekund navic ... no jo, ale co kdyz jsou takovyhle cyklu v jednom programu tisice a ten program je navic casove kriticky, tj. ze urcite operace musi vykonat v urcitem presne danem case ... to je potom programovani ;-)
Re: Tak tak... 20.3.2006 11:49
Petr Zajíc
Znal jsem člověka, co testoval, zda jedno z deseti čísel není nula pomocí deseti podmínek a OR. Když jsem mu vysvětlil, že to může znásobit a použít pravidlo "nula krát jakékoli číslo rovná se nula", jenom zíral ;-))) Je to extrém, ale hezky to ukazuje, že ta matika fakt k něčemu je...
Re: Tak tak... 20.3.2006 11:54
MaReK Olšavský

To si děláš prču?? Uffff, to je palba...

Re: Tak tak... 20.3.2006 12:11
Petr Zajíc
Ne, to je bohužel pravda ;-(
Re: Tak tak... 20.3.2006 12:53
MaReK Olšavský

Tý vole... To se jinak komentovat nedá

Re: Tak tak... 20.3.2006 14:16
Ondrej Holecek
Jen mala pripominka, "nula krát jakékoli číslo rovná se nula" v aritmetice modulo 2^n jaxi neplati. A btw, neni 10 nasobeni vyrazne pomalejsi nez 10 porovnani na 0?
Re: Tak tak... 20.3.2006 15:57
Petr Zajíc
To jsem nepobral. Promiň, mám jen střední školu a v programování u mě zatím vždycky platilo, že nula krát jakékoli číslo je nula. Mluvil jsem o racionálních číslech, jejichž interpretaci zpracovávám programem. Rychlost? Nejsem odborník na instrukční sady, ale tipnu, že to násobení sežere míň cyklů procesoru. Je to ale rozhodně MNOHEM přehlednější na zápis snad ve všech programovacích jazycích, co (ne)znám.
Re: Tak tak... 20.3.2006 16:28
Ondrej Holecek

{int i=2; while(i) i*=2;} kupodivu cyklit nebude. Takze, nasobit 10 cisel jen proto, abysme zjistili jestli jedno znich nahodou neni 0 je blbost. Tva demonstrace tvrzeni, ze "programovat bez matematiky nelze" timto selhava :-)

Ale muzu te uklidnit, tohle se na stredni skole neuci a vlastne nam to implicitne nerekli ani na univerzite :-)

Re: Tak tak... 20.3.2006 17:06
Jakub Jochec
Panove prectete si laskave ten clanek a pokud mozno cely. Pane Holecku jiste mate pravdu, na jakychkoliv ceskych skolach se uci prakticky vsechno mozne jen nic uzitecneho. Vyjimkou zacinaji snad byt jen nektere obory na UTB.
Re: Tak tak... 20.3.2006 23:08
Ondřej Čečák

na jakychkoliv ceskych skolach se uci prakticky vsechno mozne jen nic uzitecneho

To zni docela silene ... doufam, ze je v tom nejaka skrita ironie ...

BTW: CEO spolecnosti Unicorn (vystudoval CVUT FJFI) pro rozhovor v Business Worldu rekl krasnou vetu: "Je pravda, ze to byla takova petileta sachova partie, ktera v zasade k nicemu neni, ale clovek to porad pouziva ..."

Takze treba tak ...

Re: Tak tak... 21.3.2006 10:02
Jakub Jochec
Jiste ze je v tom trocha ironie, ale bohuzel ne tolik kolik bych si sam pral...
Re: Tak tak... 3.4.2006 09:52
GeBu
Hodně pěkně vyjádřené - člověk znalosti ze školy používá ani o tom neví.
Re: Tak tak... 21.3.2006 08:21
Ondrej Holecek
Nereagoval sem na clanek ale na prispevek do diskuse. Clanek je tak dlouhy, ze si cas na jeho precteni vyhradim jen velmi tezko :-(
"pane Holecku" mne oslovuje stevartka v autobusech studentagenci a kdyz mi tak rekne, mam chut jim probodat gumy. ;-) Myslim ze bude mnohem prijemnejsi a v koncinach i "normalnejsi" kdyz si propriste potykame.
Re: Tak tak... 21.3.2006 10:40
Jakub Jochec
Dobra, sem zvykly vykat, ale tykani mi problemy nedela :-).
Jiste sak tak sem to bral.
Re: Tak tak... 20.3.2006 19:22
Jan Němec
Když už se tady bavíme o maličkostech, tak se připojím. Já osobně bych tam taky dal těch deset podmínek na nulu (pokud by to bylo 10 proměnných a ne např. pole, kde bych použil cyklus). Jednak kvůli té aritmetice modulo 2^n tj. např. 16 != 0 && 16 != 0, ale 16 * 16 == 256 a 256 == 0, pokud počítáme v C charech. A v reálných číslech bych zase musel řešit, jestli epsilon * epsilon, kde epsilon != 0.0, ale je velmi malé není náhodou podtečení nebo 0.0 atd. Takže v počítači součin dvou nenul je nenula jen někdy. A taky ten kód s deseti testy na nulu pochopí i blb, což může být výhoda.
Re: Tak tak... 20.3.2006 19:24
Petr Skovron

Co se tyce porovnani rychlosti, neni nic snazsiho nez si to zkusit. Nasledujici programy 100.000.000x provedou zmineny vypocet pomoci zminenych algoritmu:

http://pikomat.mff.cuni.cz/petr/multip.c 1,44s
result = ((a*b*c*d*e*f*g*h) == 0);

http://pikomat.mff.cuni.cz/petr/or.c 0,81s
result = ((a==0) || (b==0) || (c==0) || (d==0) || (e==0) || (f==0) || (g==0) || (h==0));

A jeste jeden,
http://pikomat.mff.cuni.cz/petr/or2.c 0,66s
result = ((a|b|c|d|e|f|g|h)==0);

(Kompilovano gcc bez optimalizaci, pousteno na cca dva roky starem pocitaci.)

A jak tady uz padlo, ten multip ma navic hroznou nevyhodu, ze treba na (lehce vykonstruovane) hodnoty 32 64 64 4 2 64 8 16384 dava chybny vysledek (nulu najde).

Re: Tak tak... 20.3.2006 19:32
Petr Skovron

[uh, ten posledni algoritmus ma taky nevyhodu, ze dava blbe vysledky :-\]


KOMENTARZE
Tak tak... 20.3.2006 11:08 Jakub Jochec
  L Re: Tak tak... 20.3.2006 11:49 Petr Zajíc
    |- Re: Tak tak... 20.3.2006 11:54 MaReK Olšavský
    | L Re: Tak tak... 20.3.2006 12:11 Petr Zajíc
    |   L Re: Tak tak... 20.3.2006 12:53 MaReK Olšavský
    L Re: Tak tak... 20.3.2006 14:16 Ondrej Holecek
      L Re: Tak tak... 20.3.2006 15:57 Petr Zajíc
        |- Re: Tak tak... 20.3.2006 16:28 Ondrej Holecek
        | L Re: Tak tak... 20.3.2006 17:06 Jakub Jochec
        |   |- Re: Tak tak... 20.3.2006 23:08 Ondřej Čečák
        |   | |- Re: Tak tak... 21.3.2006 10:02 Jakub Jochec
        |   | L Re: Tak tak... 3.4.2006 09:52 GeBu
        |   L Re: Tak tak... 21.3.2006 08:21 Ondrej Holecek
        |     L Re: Tak tak... 21.3.2006 10:40 Jakub Jochec
        |- Re: Tak tak... 20.3.2006 19:22 Jan Němec
        L Re: Tak tak... 20.3.2006 19:24 Petr Skovron
          L Re: Tak tak... 20.3.2006 19:32 Petr Skovron
Tylko zarejestrowani użytkownicy mogą dopisywać komentarze.
> Szukanie oprogramowania
1. Pacman linux
Download: 4850x
2. FreeBSD
Download: 9044x
3. PCLinuxOS-2010
Download: 8541x
4. alcolix
Download: 10915x
5. Onebase Linux
Download: 9631x
6. Novell Linux Desktop
Download: 0x
7. KateOS
Download: 6219x

1. xinetd
Download: 2382x
2. RDGS
Download: 937x
3. spkg
Download: 4692x
4. LinPacker
Download: 9918x
5. VFU File Manager
Download: 3173x
6. LeftHand Mała Księgowość
Download: 7171x
7. MISU pyFotoResize
Download: 2775x
8. Lefthand CRM
Download: 3540x
9. MetadataExtractor
Download: 0x
10. RCP100
Download: 3089x
11. Predaj softveru
Download: 0x
12. MSH Free Autoresponder
Download: 0x
©Pavel Kysilka - 2003-2024 | mailatlinuxsoft.cz | Design: www.megadesign.cz