В начале пытался записать через for( int i = 1; i==256; i*2){} Но что-то пошло не так и я не смог понять,как делить до определенного делителя, не используя массивы
При расчете "снизу вверх" получается так:
var x = 5.0;
var xSquare = x * x;
var result = xSquare;
for (var i = 256; i >= 2; i /= 2)
result = xSquare + i / result;
result = x / result;
Linq-вариант для полноты картины:
double x = 5;
double r = x * Enumerable.Range(0, 9).Aggregate(0.0, (t, i) => (1 << (8 - i)) / (x * x + t));
Console.WriteLine(r); // 0.19936603598533
Набросал кода, вроде выполняет вашу задачу.
int i = 256;
double x = 5;
double pow = Math.Pow(x, 2);
double result = pow;
while (i / 2 != 0)
{
result = pow + (i / result);
i /= 2;
}
result = x / (pow + result);
Рекурсивный вариант
double Calc(double x, int i = 1)
{
if (i == 256) return x*x+i/(x*x);
if (i == 1) return x / Calc(x, 2);
return x*x + i / Calc(x, i*2);
}
Console.WriteLine(Calc(5));
Который вернет ещё и верный ответ 0.19936603598533
Виртуальный выделенный сервер (VDS) становится отличным выбором
Нужна временная папка для хранения и обработки файловПрочитал на msdn, что можно воспользоваться Path
Дана кастомная реализация MD5, найденная на просторах сети
Я не знаю как написать код который будет округлять до десятков и сотенНапример у меня есть 365 и надо что бы его округляло к 370 или есть 350 и надо...