Avatar
Theodor Johnson
Redaktor
Avatar
Theodor Johnson:

Ahoj, zrovna jsem narazil na logický operátor xor, ale zajímalo by mě jak funguje se třemi podmínkami

0 XOR 0 = 0
1 XOR 0 = 1
0 XOR 1 = 1
1 XOR 1 = 0

1 XOR 1 XOR 1 = 1
0 XOR 0 XOR 0 = 0
Odpovědět 12.8.2013 10:47
Přecházím na "Cross-Platform Development"
Avatar
archlin
Člen
Avatar
archlin:

1 xor 1 xor 1 = (1 xor 1) xor 1 => 1
0 xor 0 xor 0 = (0 xor 0) xor 0 => 0

Nahoru Odpovědět 12.8.2013 10:55
sublime text 2
Avatar
Theodor Johnson
Redaktor
Avatar
Odpovídá na archlin
Theodor Johnson:

Díky, teď už mi to došlo :)

Nahoru Odpovědět 12.8.2013 10:58
Přecházím na "Cross-Platform Development"
Avatar
Martin Dráb
Redaktor
Avatar
Martin Dráb:

XOR = exkluzivní OR, nebo také non-ekvivalence:
A XOR B je to samé jako NOT (A <=> B)

Nahoru Odpovědět 12.8.2013 11:01
2 + 2 = 5 for extremely large values of 2
Avatar
Kit
Redaktor
Avatar
Odpovídá na Theodor Johnson
Kit:

XOR je operátor, který by se měl používat co nejméně a hlavně až po zralé úvaze. Jeho použití v programování není sice tak rizikové jako v elektronice, ale i tak je většinou lepší se mu vyhnout.

Nahoru Odpovědět 12.8.2013 11:18
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Theodor Johnson
Redaktor
Avatar
Odpovídá na Kit
Theodor Johnson:

Zatím jsem ho nepoužil nikdy, spíš jsem to našel na msdn a zajímalo mě jak funguje :)

Nahoru Odpovědět 12.8.2013 11:31
Přecházím na "Cross-Platform Development"
Avatar
Kit
Redaktor
Avatar
Odpovídá na Theodor Johnson
Kit:

Na MSDN jsem už našel spoustu kravin, např. "goto".

Uvědom si, že MSDN není manuál, ale referenční příručka. Musí v ní být i konstrukce, které se sice nemají používat, ale jsou součástí jazyka.

Nahoru Odpovědět  +1 12.8.2013 12:05
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Kit
Luboš Běhounek (Satik):

Nevidím důvod se XORu vyhýbat.
Logický XOR sice nepoužívám, protože se dá vše zapsat bez něj, ale binární xor se občas docela hodí :)

Nahoru Odpovědět 12.8.2013 12:22
:)
Avatar
Kit
Redaktor
Avatar
Odpovídá na Luboš Běhounek (Satik)
Kit:

Nevzpomínám si, kdy jsem naposledy XOR potřeboval. Možná když jsem chtěl invertovat maskou nějakou logickou hodnotu. Takové operace se většinou skrývají uvnitř GUI a není potřebné s nimi přímo manipulovat.

Nahoru Odpovědět 12.8.2013 12:28
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Kit
Luboš Běhounek (Satik):

Proč by do jazyka dávali něco, co se nemá používat?

Nahoru Odpovědět 12.8.2013 12:44
:)
Avatar
TomBen
Redaktor
Avatar
Odpovídá na Luboš Běhounek (Satik)
TomBen:

Protože ho používat lze. Svoboda kódování. :D
To že existuje tě nenutí ho použít, ale když chceš, tak i můžeš.

Nahoru Odpovědět 12.8.2013 12:50
Za posledních 200 miliónů let se nic zvláštního nestalo, akorát dinosauři vymřeli a opice se naučily programovat.
Avatar
Kit
Redaktor
Avatar
Odpovídá na Luboš Běhounek (Satik)
Kit:

Aby si naivky myslely, že to musí používat. Taková lehká forma sadismu.

Nahoru Odpovědět 12.8.2013 12:51
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Kit
Luboš Běhounek (Satik):

Že ty si myslíš, že se něco nemá používat, ještě neznamená, že se to nemá používat :)

Nahoru Odpovědět 12.8.2013 13:00
:)
Avatar
TomBen
Redaktor
Avatar
Odpovídá na Kit
TomBen:

On xor prolezl do všech jazyků z JSA, kde to smysl dávalo.

edit: myslím v tom low level programování to mělo smysl

Editováno 12.8.2013 13:02
Nahoru Odpovědět  +1 12.8.2013 13:01
Za posledních 200 miliónů let se nic zvláštního nestalo, akorát dinosauři vymřeli a opice se naučily programovat.
Avatar
TomBen
Redaktor
Avatar
Odpovídá na Luboš Běhounek (Satik)
TomBen:

Nemá neznamená nesmí. :-)
Existuje strašná spousta věcí, které se nemají.
Už jsi šel někdy přes trávu? A víš že existuje chodník?
A že se silnice 'má' přecházet jen po zebře?
Kdyby všichni dělali jen co mají, byli bychom stroje.

Nahoru Odpovědět  +2 12.8.2013 13:04
Za posledních 200 miliónů let se nic zvláštního nestalo, akorát dinosauři vymřeli a opice se naučily programovat.
Avatar
Kit
Redaktor
Avatar
Odpovídá na TomBen
Kit:

Po trávě se nechodí, ale lítá :)

Nahoru Odpovědět  +1 12.8.2013 13:07
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na TomBen
Luboš Běhounek (Satik):

Reagoval jsem tím hlavně na Kitův názor na goto - že se nemá používat.

Je to jeho názor, ale prezentuje ho tu jako by to byl obecně uznávaný fakt, což není.

Nahoru Odpovědět 12.8.2013 13:11
:)
Avatar
Jiří Gracík
Redaktor
Avatar
Odpovídá na Luboš Běhounek (Satik)
Jiří Gracík:

Mám dojem, že má na mysli používání goto například v C#. Třeba v ASM by to šlo asi těžko jinak :)

Editováno 12.8.2013 13:17
Nahoru Odpovědět 12.8.2013 13:17
Creating websites is awesome till you see the result in another browser ...
Avatar
Odpovídá na Jiří Gracík
Luboš Běhounek (Satik):

Ano, to souhlasí, já také neměl na mysli asm :)

Nahoru Odpovědět 12.8.2013 13:21
:)
Avatar
Jiří Gracík
Redaktor
Avatar
Odpovídá na Luboš Běhounek (Satik)
Jiří Gracík:

Má goto třeba v již zmiňovaném C# nějaké vhodné využití?

Nahoru Odpovědět 12.8.2013 13:27
Creating websites is awesome till you see the result in another browser ...
Avatar
Odpovídá na Jiří Gracík
Luboš Běhounek (Satik):

Problém s goto byl ten, že se dříve používalo nadměrně a znepřehleňovalo to kód.

Ale stejně tak někteří začátečníci nadužívají třeba podmínky...

Když se goto použije opravdu na vhodném místě, tak to dokonce kód může být přehlednější a rychlejší - třeba pro vyskočení z vnořených smyček.

Editováno 12.8.2013 13:48
Nahoru Odpovědět 12.8.2013 13:48
:)
Avatar
vitamin
Neregistrovaný
Avatar
Odpovídá na Jiří Gracík
vitamin:

Vyskocenie z vnoreneho cykly/switchu.

 
Nahoru Odpovědět 12.8.2013 13:48
Avatar
Jiří Gracík
Redaktor
Avatar
Odpovídá na Luboš Běhounek (Satik)
Jiří Gracík:

Jsem rád za názor z druhýho břehu, jak učitel tak kit by za goto vraždili, pak nemá mít člověk dojem že se to nesmí/nemá používat :)

Nahoru Odpovědět  +1 12.8.2013 13:49
Creating websites is awesome till you see the result in another browser ...
Avatar
Petr Nymsa
Redaktor
Avatar
Odpovídá na vitamin
Petr Nymsa:

Z vnořeného cyklus vyskočím buď správně nastavenou podmínkou nebo ho vložím do metody a v místě, kde potřebuju vyskočit vrátím chybnou hodnotu... goto osobně nepoužívám

Nahoru Odpovědět  +1 12.8.2013 13:50
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar

Neregistrovaný
Avatar
Odpovídá na Petr Nymsa
:

Miesto pozitia navestia a goto radsej vytvoris pomocnu premennu(ktora sa musi testovat v kazdom cykle) alebo este lepsie spravys dalsiu funkciu a budes testovat navratovu hodnotu...

 
Nahoru Odpovědět 12.8.2013 13:55
Avatar
Kit
Redaktor
Avatar
Odpovídá na Jiří Gracík
Kit:

Takové goto je totiž zpravidla úplně zbytečné. Obvykle je jen ukázkou toho, že programátor neumí používat vhodnější způsoby strukturování kódu.

Nahoru Odpovědět 12.8.2013 13:57
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Jiří Gracík
Redaktor
Avatar
Odpovídá na Kit
Jiří Gracík:

Přijde mi to zvláštní ale jako výmluvu to beru ;)

// občas mi totiž není vůbec jasný o čem se vy dva hádáte, konečně jednou vím :D

Editováno 12.8.2013 13:59
Nahoru Odpovědět 12.8.2013 13:58
Creating websites is awesome till you see the result in another browser ...
Avatar
Kit
Redaktor
Avatar
Odpovídá na
Kit:

Aspoň si vymysli nějaké jméno.

Jdeš na to chybně. Přemýšlíš nad otázkou: "jak mám nahradit goto?" a to je špatně.

Nahoru Odpovědět 12.8.2013 14:00
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Redaktor
Avatar
Odpovídá na Jiří Gracík
Kit:

Luboš Běhounek (Satik) totiž hájí své pozice, kterými jsem si kdysi prošel a které jsem před několika lety opustil.

Nahoru Odpovědět 12.8.2013 14:07
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
vitamin
Člen
Avatar
Odpovídá na Kit
vitamin:

Ja nechcem nahradit goto. Goto nema nahradu :)
Vyskocit z vnoreneho cyklu sa da najlepsie pomocou goto. Je to prehladnejsie a rychlejsie ako pouzivat docasne premenne.
Je to preto lebo c# neumoznuje pomenovat cyklus a pouzit nieco taketo:

for:name(...){

    while(...){

        break name;
    }
}
 
Nahoru Odpovědět  ±0 12.8.2013 14:09
Avatar
Kit
Redaktor
Avatar
Odpovídá na vitamin
Kit:

Z cyklu se dá vyskočit i returnem, což by v daném případě bylo asi nejvhodnější.

O dočasných proměnných nebyla řeč. Často jsou zbytečné.

Nahoru Odpovědět 12.8.2013 14:13
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Jiří Gracík
Luboš Běhounek (Satik):

Občas mi to také není jasné, třeba asi před půl rokem jsme se hádali o použití klíčového slova var ( http://www.itnetwork.cz/…10d0b7e1f78e )
a Kit až před měsícem zjistil, k čemu slouží :D

Nahoru Odpovědět  +1 12.8.2013 14:13
:)
Avatar
Kit
Redaktor
Avatar
Odpovídá na Luboš Běhounek (Satik)
Kit:

Kde bys byl, kdybys neměl oponenta? :)

Nahoru Odpovědět  +2 12.8.2013 14:21
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Jiří Gracík
Redaktor
Avatar
Jiří Gracík:

Kit | Luboš Běhounek (Satik)

mě se vaše hádky líbí, sice mám vždycky pocit že ke konci diskusi převzali mimozemšťani, ale většinou si i něco odnesu :D

Nahoru Odpovědět  +2 12.8.2013 15:08
Creating websites is awesome till you see the result in another browser ...
Avatar
Odpovídá na Jiří Gracík
Michael Olšavský:

Většinou si odneseš plno argumentů pro a proti, ale žádnou výslednou odpověď :D

 
Nahoru Odpovědět  +2 12.8.2013 17:32
Avatar
Kit
Redaktor
Avatar
Odpovídá na Michael Olšavský
Kit:

Však to tak má být. Ať každý hezky přemýšlí sám za sebe. Tady nejsme na základní škole.

Nahoru Odpovědět  +1 12.8.2013 17:49
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 36 zpráv z 36.