data na seriak v C pro jednocip

Bolek kraljaprvni@volny.cz
Čtvrtek Květen 6 14:17:38 CEST 2004


> Doporučíte jak napsat v C rozložení čtyřznakového čísla tak aby to bylo
> jednoduché a rychlé? První potřebuji tisíce, pak stovky, desítky a na
> závěr jednotky.
> 
> Pokud by to bylo obráceně, tak je to jednoduché:
> 	for(i=0; i<4; i++)	
> 	{
> 	cislice =cislo%10;
> 	cislo=cislo/10;
> 	};
> 
> Příklad: cislo = 1234
> 		Pak dostanu cislo = 4, následne 3, 2, 1
> 
> Ja ale potřebuji dostat cislo = 1, nasledne 2, 3, 4
> 
>  Napadá mne jen 
> cislice = cislo/1000;
> cislo = cislo%1000;
> cislice = cislo/100;
> cislo = cislo%100;
> cislice = cislo/10;
> cislice = cislo%10;
> 
> A to je dost matematicky náročné. Též by se nějak dala použit funkce
> printf, ale jak pro HI-TECH ?

Ten prevod na konci dotazu je matematicky jeste mene narocny, nez ten 
prevod od zadu, ktery vas napadl a zrejme vam vyhovuje. Takze v cem je 
problem?

Pres printf bych to v zadnem pripade nedelal. To bude jeste narocnejsi. 
Za prve, printf bude delat totez, co ten vas kod, ale navic jeste bude 
muset vyhodnotit formatovaci retezec. Bude to pomalejsi, pametove 
narocnejsi a prilinkuje se vam fura zbytecneho kodu.




Další informace o konferenci Hw-list