ceckovy kviz
Jaroslav Buchta
jaroslav.buchta na hascomp.cz
Středa Září 6 23:30:02 CEST 2023
Jenze pri vice vnorenich je z toho uplnej maglajz. Nehlede na pocet koz ;-)
Dne 06.09.2023 v 23:26 Aleš Procháska napsal(a):
>
> Já třeba proto, že si myslím, že ta úplně nejlepšinkatější verze je
>
> if kozy>2 then
>
> splnuje_predpoklady=1;
>
> endif;
>
> při formátování příkazu dělám, že tam ta otevírací závorka vůbec není
> a píšu
>
> if (kozy>2) {
>
> splnuje_predpoklady=1;
>
> }
>
> (včetně stejného odsazeni „}“.
>
> Aleš Procháska
>
> *From:* Hw-list <hw-list-bounces na list.hw.cz> *On Behalf Of *Jaroslav
> Buchta
> *Sent:* Wednesday, 6 September, 2023 23:13
> *To:* hw-list na list.hw.cz
> *Subject:* Re: ceckovy kviz
>
> Jo, to je taky zakladni doporuceni v MISRA...
>
> Jeste k tem zavorkam, kdyz to vidim, tento zapis me naprosto irituje,
> podle me vubec nejsou prehledne bloky. Jak jsem pochopil, je pro to i
> ruzne pojmenovani formatovani textu.
>
> Proc normalne vsichni nepouzivaji:
>
> if(..)
>
> {
>
> if(..)
>
> {
>
> neco;
>
> }
>
> neco;
>
> }
>
> ?
>
> Dne 06.09.2023 v 23:09 Petr Labaj napsal(a):
>
> Jen úplně nepodstatná poznámka:
> právě kvůli nebezpečí nějakého odsunutí nebo naopak dopsání, které
> by už bylo mimo podmínku, používám zásadně blokové závorky i při
> jediném příkazu v if.
>
> Tedy ne:
> if (kozy>2) splnuje_predpoklady=1;
>
> ale
>
> if (kozy>2) {
> splnuje_predpoklady=1;
> }
>
> PL
>
> ********************
>
> Dne 6.9.2023 v 22:45 Pavel Hudeček napsal(a):
>
> Já si myslím, že tohle je typický příklad umělé konstrukce,
> kterou přímo v této podobě nikdo normálně nepoužije. Jenže
> šedá je teorie a zelený strom života...
>
> Měříme na pár kanálech ADC a jednou to uděláme bez přerušení a
> podruhé s:
>
> *for (uint8_t mxIdx=AD_chanStart; mxIdx<=AD_chanEnd; mxIdx++)* {
> ADC0_MUXPOS = mxIdx;
> ...
> adData[mxIdx-AD_chanStart] = ADC0_RES;
> }
>
> Normální for, v jednom řádku se dozvíme od, do a po jak
> velkých krocích.
>
> Jenže normálně nechci měřit for cyklem a v něm čekat až je
> změřeno, takže chci použít přerušení. Ale v něm chci mít taky
> takový jeden řádek, kde je jedna konstrukce s od, do a po
> jakých krocích.
>
> ISR (ADC0_RESRDY_vect) {
> static uint8_t mxIdx=AD_chanStart;
>
> adData[mxIdx-AD_chanStart] = ADC0_RES;
> *if (++mxIdx > AD_chanEnd) mxIdx = AD_chanStart;*
> ...
> }
> Jen je škoda, že ta inicializační hodnota je tam dvakrát. Ale
> pořád je to lepší, než rozdělený na řádky ++ a if. Proč?
> Jednak když to vidím, tak je to jako vidět ten for, prostě
> jasná konstrukce, kde hned vím co dělá a proč. No a hlavně se
> při nějaké úpravě nemůže snadno stát, že se z toho omylem kus
> odsune, vymaže, či zkopíruje kam nemá.
>
> Je možné, že když to někdo vidí poprvé, tak mu to chvíli jasné
> není. Jakmile to pochopí, tak je to prostě standardní
> konstrukce s na první pohled jasným chováním, stejně jako for
> použitý běžným způsobem.
>
> PH
>
> Dne 06.09.2023 v 21:38 Petr Labaj napsal(a):
>
> Myslím, že jde o to, jak má člověk nastaveno samohodnocení.
> Jestli na svém interním žebříčku postoupím výše pokud
> napíšu fakt prďáckou konstrukci, kterou nikdo jiný napsat
> neumí.
> Nebo jestli naopak postoupím tehdy, pokud napíšu program,
> který je každému jasný na první pohled.
>
> a=i--;
> a=--i;
>
> je jistě správně.
> Ale pokud napíšu
> a=i;
> i--;
>
> i--;
> a=i;
>
> tak je to stejné, a zřejmě i kompilátor to přeloží stejně
> nebo skoro stejně.
>
> A otázka:
> Který z těch zápisů je na první pohled jasnější, a kde
> spíš neudělám chybu? Ne v okamžiku, kdy se soustředím na
> kvíz, ale kdy jsem unavený a mám vytahané očí čuměním 10
> hodin na monitor.
> Který zápis bude pochopitelnější kolegovi, který sice
> programuje PLC, ale C viděl jen z rychlíku?
>
> PL
>
> ********************
>
> Dne 6.9.2023 v 21:22 Jindrich Fucik napsal(a):
>
> ...
> Protože pochopitelně i tohle je správný zápis:
> a=i--;
> a=--i;
> a kupodivu "a" se bude lišit.
> ...
>
>
>
>
> _______________________________________________
>
> HW-list mailing list - sponsored bywww.HW.cz <http://www.HW.cz>
>
> Hw-list na list.hw.cz
>
> http://list.hw.cz/mailman/listinfo/hw-list
>
>
> _______________________________________________
> HW-list mailing list - sponsored bywww.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20230906/67fd51a0/attachment.htm>
Další informace o konferenci Hw-list