Магия числ
Вот простенькая программка без единой операции деления или вычисления остатка, без условных операторов или выражений, и без единого явно упомянутого простого числа, которая печатает простые числа вплоть до 67. А в числах с плавающей точкой типа double значащих бит всего 53, включая скрытый.
Сможете улучшить результат?
This entry was originally posted at https://spamsink.dreamwidth.org/1197779.html. Please comment there using OpenID.
#include <stdio.h>
#include <math.h>
double magic(double f) {
double ff = floor(f);
double r = log(ff+6)*(log(ff+6)-1);
return (f-ff)*floor(r)+f;
}
double C = 2.6358597414547913;
int main() {
int i;
for (i = 1; i < 20; ++i) {
printf("%d\n", (int)C);
C = magic(C);
}
return 0;
}Сможете улучшить результат?
This entry was originally posted at https://spamsink.dreamwidth.org/1197779.html. Please comment there using OpenID.