Я думал вообще ток в цепи, а тут на заштрихованном резюке, тогда малость не так будет, как я указывал ранее.
Просто инженер АиТ добавил 06.04.2015 в 15:11 Если не думать, то http://morepic.ru/images3/bgb_9383.jpg http://morepic.ru/images3/klk_80.jpg Симулятор показал 8.13062mA |
Задача вполне олимпийская, но совершенно не по физике. Физического смысла в ней ноль целых хрен десятых. Это в чистом виде задача по математике, а именно на понимание абстрактного понятия счётного бесконечного множества. Считать, что это задача по физике - всё равно, что полагать, будто механико-математический факультет МГУ готовит механиков :lol:
|
У меня есть мысль и я её сейчас нарисую.
Просто инженер АиТ добавил 07.04.2015 в 09:31 http://morepic.ru/images3/1_6420.jpg |
гадал-гадал и решил все свалить на ЭВМ.
она четко показала , что при к-ве звеньев > 10 результат будет один и тот-же (экв. сопротивление цепи). для этого существует даже разработанный класс. ___________________________________ http://morepic.ru/images3/sus_266.jpg #include <stdio.h> #include <conio.h> class Vodka { private: int n; float R; float r; float vobo(int n, float r1) const; public: Vodka() {} ~Vodka() {} void bovo(int c, float rr); int bofo() const {return n;} float volo() const {return R;} }; void Vodka :: bovo(int c, float rr) { n = c; r=rr; R = vobo(n,2*r); } float Vodka :: vobo(int n, float r1) const { if(n<=1) return r1; else { r1=r+(r1*r/(r1+r)); n--; return vobo(n,r1); } } int main() { Vodka *Rus=new Vodka [5]; int i,n; float r = 1; for(i=0,n=1;i<5;i++,n+=3) Rus[i].bovo(n,r); for(i=0;i<5;i++) printf("\n *** n = %d R = %f\n",Rus[i].bofo(),Rus[i].volo()); delete [] Rus; getch(); return 0; } Rafa добавил 13.04.2015 в 15:04 ток в любом звене можна найти с помощью класса. http://morepic.ru/images3/ggg_6056.jpg #include <stdio.h> #include <conio.h> class Vodka { private: int n; int N; float R; float r; float vobo(int n, float r1) const; void kio (float I, float U, int k) const; public: Vodka() {} ~Vodka() {} void bovo(int c, float rr, int k, float u); int bofo() const {return n;} float volo() const {return R;} }; void Vodka :: bovo(int c, float rr, int k, float u) { n = c; N=k; r=rr; R = vobo(n,2*r); kio (u/R,u,1); } float Vodka :: vobo(int n, float r1) const { if(n<=1) return r1; else { r1=r+(r1*r/(r1+r)); n--; return vobo(n,r1); } } void Vodka :: kio (float I, float U, int k) const { U=U-(I*r); printf("\n *** %d : %f\n",k,U/r); if(k != N) { k++; I = I - (U/r); kio (I,U,k); } } int main() { Vodka *Rus=new Vodka ; int i,n=1000,k=100; float r = 1, U = 1; Rus->bovo(n,r,k,U); printf("\n *** n = %d R = %f\n",Rus->bofo(),Rus->volo()); delete Rus; getch(); return 0; } Rafa добавил 13.04.2015 в 15:04 отрицательные числа впечатляют. но все ок. эвм тоже иногда тупит. Rafa добавил 13.04.2015 в 15:06 Цитата:
|
Цитата:
А вот применение рекурсии мне понравилось. |
Цитата:
ведь она :468: стек |
|
откуда у тебя I/6 ток?
|
Цитата:
схема вроде симетричная же |
Цитата:
куб разбивается на 6 контуров, 8 узлов. сумма напряжений по контуру равно нулю. Напряжение равно IR. Сумма токов в каждом узле ноль. далее система уравнений решается любым из методов, например методом крамера |
Цитата:
http://morepic.ru/images3/frf81166033_8894.jpg |
в общем рутинная задача - 12 неизвестных (токи в гранях) и 6 контуров +8 узлов =14 уравнений
находишь токи, напряжение между точками А и Б равно сумме напряжений любого пути по граням. Результат уже не интересен |
Цитата:
уверен что результат системы уравнений даст тот-же результат дано только сопротивление грани. надо найти общее сопр. |
Цитата:
Цитата:
|
Цитата:
может проще в мультисиме проверить гипотезу ? :oiE: |
| Часовой пояс GMT +3, время: 05:01. |
Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot