ceckovy kviz

Jaroslav Buchta jaroslav.buchta na hascomp.cz
Středa Září 6 11:28:48 CEST 2023


Tak ted jsem se prehlednul, neni dobre ani if(A=B) ani if(A), spravne je 
A=B; if(A!=0)...
Dne 06.09.2023 v 11:26 Jaroslav Buchta napsal(a):
> Pardon samozrejme if(A) nepouzivat bylo mysleno...
> Stejne je paradoxem, ze pro psani bezpecnostne kritickych kodu se 
> pouziva vesmes C, kdyz je z principu pro to nejmene vhodne a 
> programatori musi sami dodrzovat slozita a prisna pravidla, aby to 
> proslo... Nebo mozna prave proto?
>
>
> Dne 06.09.2023 v 11:20 Ladislav Vaiz napsal(a):
>> Celé je to jeden příkaz namísto dvou. Když to bude celé za jiným if 
>> nebo za else, tak není potřeba psát závorky.
>> Místo to podle mě má maximálně v entry level IOCCC 
>> (https://www.ioccc.org/)
>> L.
>>
>>
>> Dne 06.09.2023 v 11:18 Jaroslav Buchta napsal(a):
>>> To asi neni jasne kazdemu, v zivote jsem to nevidel pouzite v 
>>> realnem kodu.
>>> Ani to if(A=B) se nema pouzivat a nikdo s pudem sebezachovy to 
>>> nepouziva (ve starsich zdrojacich to obcas je, v novejsich, kde se 
>>> uz nejak dodrzuji pravidla bezpecneho kodu, ne)
>>>
>>> Dne 06.09.2023 v 11:12 Martin Záruba napsal(a):
>>>>
>>>> Jasně. Chápu, ale moc mě to nenadchlo.
>>>>
>>>> Ještě mi také není jasné, v čem je lepší zápis
>>>>
>>>> if (C=D,A=B) {};
>>>>
>>>> než
>>>>
>>>> C=D; if (A=B) {}; který mi připadá přehlednější.
>>>>
>>>> Martin Záruba
>>>> Dne 6.9.2023 v 10:45 Jaroslav Buchta napsal(a):
>>>>> Protoze if proste testuje vyraz na 0. 0=false, cokoli jineho true.
>>>>> Dne 06.09.2023 v 10:38 Martin Záruba napsal(a):
>>>>>>
>>>>>> Je to opravdu tak? Testuje to A na 0 ? Z čeho vyplývá, že na 0?
>>>>>>
>>>>>> Martin Záruba
>>>>>> Dne 6.9.2023 v 10:16 d.petr napsal(a):
>>>>>>> Wek to už obšírně popsal, tak jen stručně konkrétně:
>>>>>>>
>>>>>>>> if (C=D, A=B) {};
>>>>>>> by v Pas asi bylo:
>>>>>>> C := D;
>>>>>>> A := B;
>>>>>>> if (A <> 0) begin end;
>>>>>>>
>>>>>>>> if (--i, A=B) {};
>>>>>>> by v Pas asi bylo:
>>>>>>> i := i - 1;
>>>>>>> A := B;
>>>>>>> if (A <> 0) begin end;
>>>>>>>
>>>>>>>> for (; i--; ++j, ++k) {};
>>>>>>> by v Pas asi bylo:
>>>>>>> while (i <> 0) do
>>>>>>>     begin
>>>>>>>     i := i - 1;
>>>>>>>     ...
>>>>>>>     j := j + 1;
>>>>>>>     k := k + 1
>>>>>>>     end;
>>>>>>>
>>>>>>> P.
>>>>>>>
>>>>>>>
>>>>>>> Pavel Kutina napsal(a) dne 05. 09. 23 v 20:04:
>>>>>>>> Pěkně prosím, můžete ty tři "úsporné" příklady trochu rozvést? Koukám na to jak vrána, jsem taky přeučenej pascalista :)
>>>>>>>>
>>>>>>>> Díky.
>>>>>>>>
>>>>>>>> Pavel Kutina
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> ----- Original Message ----- From: "d.petr"<d.petr na post.cz>
>>>>>>>> To: "HW-news"<hw-list na list.hw.cz>
>>>>>>>> Sent: Tuesday, September 5, 2023 8:43 PM
>>>>>>>> Subject: Re: ceckovy kviz
>>>>>>>>
>>>>>>>>
>>>>>>>> i++: úspornější zápis neznám, ale i jiné jazyky to používají, určitě třeba Perl
>>>>>>>>
>>>>>>>> Podobná přiřazení občas používám, ačkoliv ne úplně A=B, ale třeba
>>>>>>>> if ((Vysledek = write (...)))
>>>>>>>> Ty dvojité závorky potlačí výpis varování pro tento případ.
>>>>>>>>
>>>>>>>> Ale výjimečně napíšu třeba i něco na způsob
>>>>>>>> if (C=D, A=B) {};
>>>>>>>> if (--i, A=B) {};
>>>>>>>> resp. for (; i--; ++j, ++k) {};
>>>>>>>> Ale to fakt jen tehdy, když to nesnižuje čitelnost a přehlednost a když jsem přesvědčen, že mi to ani v budoucnu nebude překážet. :-)
>>>>>>>>
>>>>>>>> P.
>>>>>>>>
>>>>>>>>
>>>>>>>> Martin Záruba napsal(a) dne 05. 09. 23 v 14:24:
>>>>>>>>> ...
>>>>>>>>> Uznávám, že zápis je velmi úsporný. Například
>>>>>>>>> i++;
>>>>>>>>> nenapíšete asi v žádném jiném jazyku úsporněji. Na druhou stranu.... Použili jste někdy někdo zápis
>>>>>>>>>
>>>>>>>>> if (A=B) {};
>>>>>>>> _______________________________________________
>>>>>>>> HW-list mailing list  -  sponsored bywww.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
>>>>>>> _______________________________________________
>>>>>>> HW-list mailing list  -  sponsored bywww.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
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> HW-list mailing list  -  sponsored bywww.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
>>>
>>>
>>>
>>> _______________________________________________
>>> HW-list mailing list  -  sponsored bywww.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
>
>
>
> _______________________________________________
> 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/9236ab25/attachment.htm>


Další informace o konferenci Hw-list