Магия числ
Dec. 11th, 2020 11:37 am![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Вот простенькая программка без единой операции деления или вычисления остатка, без условных операторов или выражений, и без единого явно упомянутого простого числа, которая печатает простые числа вплоть до 67. А в числах с плавающей точкой типа double значащих бит всего 53, включая скрытый.
Сможете улучшить результат?
#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; }
Сможете улучшить результат?
no subject
Date: 2020-12-11 08:33 pm (UTC)Фигасе.
no subject
Date: 2020-12-11 10:14 pm (UTC)no subject
Date: 2020-12-11 08:46 pm (UTC)no subject
Date: 2020-12-11 09:31 pm (UTC)no subject
Date: 2020-12-11 10:26 pm (UTC)