- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
#include <stdio.h>
#include <math.h>
int main()
{
double i = 9;
i = fabs( i/2 );
while ( --i > 0 );
printf("\n %f \n", i);
if ( i == 0 )
printf ("1\n");
else if ( i == -0.5 )
printf ("2\n");
else
printf ("3\n");
}
конечно можно было бы еще double на запчасти разобрать (мантиса, степень) и сдвигом + битовым and выдрать целую часть и из нее просто взять нижний бит. почти все актуальные процы используют IEEE 754, так что даже будет немножко портабельно.
действительного числа же
искренне ваш, Доктор Матан
ЗЫ: я бы проверял дробную часть частного на не-больше плюс/минус бесконечно малая
while ( --i > 0 );