C#

Непонятен пример вывода в задаче

Народ. Поясните плиз пример вывода, где 6.0000000 и 30.0000000, понять не могу, как они такой результат получили. А если есть желание, то прогу напишите)
Afanasi Petkov
Afanasi Petkov
407
Математическая формулировка задачи здесь такая: Σ(i=1;k)¹/(¹/r[k] + ¹/x) = R, массив положительных величин длины k известен, сопротивление R тоже, требуется вычислить заранее неизвестное значение переменной х. А главная трудность здесь - правильно задать начальное значение х. Остальное просто! Я вот, например, на плюсах задавала х как R/k и всё сходилось к правильным ответам за несколько итераций (в заданных примерах за 3-4). А на шарпе я ничего серьёзного не пишу - не тот это язык, чтобы на нём что-то серьёзное писàть!. ʘ‿ʘ
#include <iostream>
#include <iomanip>
using namespace std;
double *r, R; int k; double f(double x)
{ double s = 0; for (int i = 0; i < k; i++)
s += 1. / (1. / r[i] + 1. / x); return s - R; }
int main() { int i; double x, h = 1e-4, d = 2 * h;
while (true) { cout << "k R » "; cin >> k >> R;
r = new double[k]; for (i = 0; i < k; i++)
cin >> r[i]; x = R / k; for (i = 1; i <= 12; i++)
{ x -= f(x) * d / (f(x + h) - f(x - h));
cout << setw(2) << i << ')' << setprecision(6)
<< fixed << setw(10) << x << endl; } } }

*B
***pit Bull***
29 440
Лучший ответ
Afanasi Petkov Можете пожалуйста программу на плюсах скинуть
Afanasi Petkov Спасибо
R1 = (Rобщ / Rкол) * 2
Сергей Жалнин
Сергей Жалнин
63 849
Afanasi Petkov И для чего это формула?) Если мне нужно вычислить номинал загадочных резисторов)