OT Kviz z jazyka C IV.
Jan Waclawek
konfera@efton.sk
Úterý Říjen 6 21:30:57 CEST 2009
> // predpoklad: abs(e) je male cislo
> int16_t a;
> a = i + e;
> while(a<0) a+=N;
> while(a>=N) a-=N;
> i=a;
Hehe nejako takto som to mal povodne (nie celkom, ale v tomto duchu); a potom som si povedal, ved to s mod musi byt jednoduchsie...
> co treba:
> uint8_t NovaMenuPos (uint8_t u8OldMenu, int16_t i16Dif, uint8_t u8N){
> int16_t i16Pos;
> i16Pos = i16Dif + u8OldMenu;
> i16Pos %= u8N;
> if (i16Pos < 0) i16Pos += u8N;
> return (uint8_t)i16Pos;
> }
>
>
no a takto nejako to mam teraz... mno, ani to tak velmi jednoduchsie nie je... ;-)
wek
Další informace o konferenci Hw-list