Dwumian Newtona
Ostatnio zmodyfikowano 2009-04-27 18:25
Mapet Temat założony przez niniejszego użytkownika |
» 2009-03-26 00:30:03 Jeśli chodzi ci o rozpisanie z postaci (a+b)^n to wygląda to tak: (n nad 0)*a^n + (n nad 1)*a^(n-1)^2 + .. +(n nad (n-1))a*b^(n-1) + (n nad n)b^n. (To właśnie z tego można wyprowadzić sobie wzory skróconego mnożenia)
Problem jest taki ze to dotyczy skończonej ilości wyrazów + to ze n>=1.
Dlatego właśnie chciałem się dowiedzieć czy to ja coś mieszam, czy błąd jest na tym co dostałem od profesorka. I chyba raczej to drugie. Zagadam do niego w któryś dzień i zapytam się czy czegoś tam nie brakuje |
|
DejaVu |
» 2009-03-26 00:36:38 Zauważ, że w Dwumianie Newtona występuje Symbol Newtona, w którym zawsze n jest większe lub równe k. W Twoim zadaniu taka sytuacja nie ma miejsca, ponieważ n jest stałą = 4, natomiast, k jest zmienną = i. Tak więc n<k, gdy i>4. |
|
Mapet Temat założony przez niniejszego użytkownika |
» 2009-04-27 17:03:23 Odświeżam temat gdyż sprawa się rozwiązała a ja zapomniałem podać rozwiązania tego problemu. ;p Mianowicie jak się okazało istnieje dwumian newtona z liczba rzeczywista ujemna xd. Wystarczyło poszukać trochę na necie. (n nad r) = (n(n-1) .....(n-k+1))/r! Przykład : (1/2 nad 3) = 1/2(1/2-1)(1/2-2)/1*2*3 Dla niedowiarków i leni program liczący owe wyrażenie http://yfrog.com/5r51252014pza pomocą ciągu #include <stdio.h> #define e 0.000000001
double licz( double x, int * ile ) { double a = 1, wynik = 0; int i = 1; if( x < 0 ) x =- x; while( a > e ) { wynik += a; a =( a * x * i ) /( i + 3 ); i += 4; * ile += 1; } return wynik; }
int main() { int ile = 0, * w_ile; double x, wynik; do { printf( "Podaj x (-1<x<1) = " ); scanf( "%lf", & x ); } while( - 1 >= x || x >= 1 ); wynik = licz( x, & ile ); printf( "Wynik = %0.10lf\nIlosc z sumowanych wyrazow to: %d\n", wynik, ile ); return 0; }
|
|
GoldWolf |
» 2009-04-27 18:25:06 Jeśli jest wszystko git, to myślę, iż można zamknąć temat. |
|
1 « 2 » |