[OT] Arduino

Petr Simek psimek na jcu.cz
Neděle Leden 7 10:37:48 CET 2024


On Sun, 7 Jan 2024, Jaroslav Buchta wrote:

> Podle me to bude fungovat, while preskace polozky dokud nebude cislo < nez v 
> tabulce.
> Problem vidim akorat u 0, kdy to utece mimo tabulku navzdy, melo by byt IMHO 
> <= misto <
>

No jasne ono to postupuje dokud cislo neni mensi nez cislo v tabulce.
Ale pokud cislo bude nula tak nule neni mensi nez nula a skonci to
ve smycce.. Takze to fungovat bude dokud nenavzorkuje nulu.


*------------------------------------------------------------------------*
|                          Petr Simek   APS JU                           |
|                             psimek na jcu.cz                              |
*------------------------------------------------------------------------*


> Dne 07.01.2024 v 9:17 Petr Simek napsal(a):
>> On Sat, 6 Jan 2024, David Obdrzalek wrote:
>> 
>>> D.O.
>>> 
>>> (*) Jeden příklad za všechny:
>>> https://robodoupe.cz/2018/programatorske-poznamky-k-jednomu-arduino-projektu/ 
>> 
>> Dival jsem se na tu vasi stranku a moc se mi nezda priklad :
>> 
>>   typedef struct{
>>     uint16_t cislo;
>>     char pismeno;
>>   } tabulka_t;
>> 
>>   tabulka_t tabulka[] = {
>>     {994, 0},
>>     {908, 'D'},
>>     {807, 'A'},
>>     {724, 'B'},
>>     {482, 'C'},
>>     {0, '0'}
>>   };
>> 
>>   char urciPismeno(uint16_t cislo)
>>   {
>>     uint8_t index=0;
>>     while( cislo < tabulka[index].cislo ) index++;
>>     return tabulka[index].pismeno;
>>   }
>> 
>> 
>> Prijde mi ze kdyz je 'cislo' mensi nez 994 tak to vzdy vrati
>> prvni radek z tabulky - nulu a kdyz bude cislo 994 nebo vetsi
>> tak se to rozbehne po pameti nez to nekde narazi na dvojbajt
>> s vyssi hodnotou (a vrati to nejaky nesmysl) nebo to pojede
>> v cyklu navzdy.
>>


Další informace o konferenci Hw-list