Разработка, производство и продажа радиоэлектронной аппаратуры
|
Требуется программист в Зеленограде - обработка данных с датчиков; ColdFire; 40 тыс.
e-mail: jobsmp@pochta.ru
|
99% это из-за [+]
Отправлено
MegaJohn 14 августа 2008 г. 14:33
В ответ на:
убедись сам[+] отправлено
MegaJohn 14 августа 2008 г. 14:31
( MAX( DIGITS_NUM( MUL_POWER_10( highest, -pwr_10 ) ), \
DIGITS_NUM( MUL_POWER_10( lowest, -pwr_10 ) ) ) +!!pnt_pos ), \
где
#define MUL_POWER_10( value, power ) \
( \
power == 0 ? value : \
power == 1 ? value*10L : \
power == 2 ? value*100L : \
power == 3 ? value*1000L : \
power == 4 ? value*10000L : \
power == 5 ? value*100000L : \
power == 6 ? value*1000000L : \
power == 7 ? value*10000000L : \
power == 8 ? value*100000000L : \
power == 9 ? value*1000000000L : \
power == -9 ? value/1000000000L : \
power == -8 ? value/100000000L : \
power == -7 ? value/10000000L : \
power == -6 ? value/1000000L : \
power == -5 ? value/100000L : \
power == -4 ? value/10000L : \
power == -3 ? value/1000L : \
power == -2 ? value/100L : \
power == -1 ? value/10L : value \
)
и
#define DIGITS_NUM( x ) \
( 1+ \
( !!(x >= 10L)) + \
( !!(x >= 100L)) + \
( !!(x >= 1000L)) + \
( !!(x >= 10000L)) + \
( !!(x >= 100000L)) + \
( !!(x >= 1000000L)) + \
( !!(x >= 10000000L)) + \
( !!(x >= 100000000L)) + \
( !!(x >= 1000000000L)) + \
( !!(x <= -1000000000L)) + \
( !!(x <= -100000000L)) + \
( !!(x <= -10000000L)) + \
( !!(x <= -1000000L)) + \
( !!(x <= -100000L)) + \
( !!(x <= -10000L)) + \
( !!(x <= -1000L)) + \
( !!(x <= -100L)) + \
( !!(x <= -10L)) + \
( !!(x < 0L)) )
Составить ответ | Вернуться на конференцию
Ответы