C while for..for....for

Pavel Hudeček edizon na seznam.cz
Neděle Leden 29 18:21:23 CET 2023


Že existuje mnoho lepších řešení než s goto je jasné:-)

Ale zaujalo mě to s těmi řádky:
Byl by nějaký konkrétná příklad překladače, kterému to vadí? Čekal bych, 
že to bude ňákej krám, kterému je dobré se vyhnout.

PH

Dne 29.01.2023 v 17:48 Michal Gregor napsal(a):
>  Znak1='*'; goto Stisk; }
> Lze nahradit return "*";
>
>
> Neni spatne se podivat i na vysledny preklad.
> Kompreosvany radek s X prikazy dela problem dost casto i prekladaci.
>
> Michal Gregor
>
>
>
> Dne 27.01.2023 v 0:06 Aleš Procháska napsal(a):
>> Jasně, tohle je podle mě krásný příklad, kdy je jedno pořádné goto 
>> strukturovanější než ten teoreticky nejčistší kód podle 
>> Dijkstry-Wirtha :-)
>> Aleš Procháska
>>
>>> Adr0=0; Zpozkl();  if(!Outkl)   { Znak1='*'; goto Stisk; }
>>> Adr0=1; Zpozkl();  if(!Outkl)   { Znak1='7'; goto Stisk; }
>>> Adr1=1; Zpozkl();  if(!Outkl)   { Znak1='1'; goto Stisk; }
>>> Adr0=0; Zpozkl();  if(!Outkl)   { Znak1='4'; goto Stisk; }
>>> Adr2=1; Zpozkl();  if(!Outkl)   { Znak1='9'; goto Stisk; }
>>> Adr1=0; Zpozkl();  if(!Outkl)   { Znak1='8'; goto Stisk; }
>>> Adr0=1; Zpozkl();  if(!Outkl)   { Znak1='2'; goto Stisk; }
>>> Adr1=1; Zpozkl();  if(!Outkl)   { Znak1='3'; goto Stisk; }
>>> Adr3=1; Adr2=0; Zpozkl();  if(!Outkl)   { Znak1='0'; goto Stisk; }
>>> Adr0=0; Zpozkl();  if(!Outkl)   { Znak1='5'; goto Stisk; }
>>> Adr1=0; Zpozkl();  if(!Outkl)   { Znak1='6'; goto Stisk; }
>>> Adr0=1; Zpozkl();  if(!Outkl)   { Znak1='#'; goto Stisk; }


Další informace o konferenci Hw-list