« poprzedni punkt | następny punkt » |
Użyjemy jeszcze raz rozumowania związanego z interpretacją symbolu,
aby
wyprowadzić pewien pożyteczny wzór. Niech X będzie n-elementowym
zbiorem i a pewnym jego wyróżnionym elementem, a ∈X.
Podzielimy wszystkie k-elementowe podzbiory zbioru X na dwie kategorie:
Oczywiście, tych pierwszych jest , bo wybieramy k-elementowe
podzbiory zbioru X-{a}. Zbiorów drugiej kategorii jest
, bo
składają się one z elementu a i dowolnego (k-1)-elementowego podzbioru
zbioru X-{a}. Ponieważ do każdego podzbioru zbioru X albo a należy albo
a nie należy, zatem suma tych zbiorów, to wszystkie podzbiory
k-elementowe.
Udowodniliśmy tym samym następujący wzór
(*)
Okazuje się, że wzór ten jest niezwykle przydatny, gdy chcemy
wyliczyć wartość symbolu Newtona dla konkretnych n i k. Utworzymy w tym
celu tablicę w postaci trójkąta prostokątnego (por.Rys.11.6.1(a)).
Jeden
bok i przeciwprostokątna tego trójkąta są wypełnione jedynkami,
natomiast kolejne pozycje n-tego wiersza są wypełnione liczbami
wyliczonymi z właśnie udowodnionego wzoru (*): dodajemy dwie pozycje z
poprzedniego wiersza z sąsiedniej (tzn. (k-1)-szej) i tej samej (tzn.
k-tej) kolumny. Proste.
Opisany trójkąt nosi nazwę trójkąta Pascala i zwykle jest przedstawiany jak na rysunku Rys.11.6.1(b). Czytelnik zechce samodzielnie napisać i zaimplementować algorytm wyliczania wartości symbolu Newtona dla dowolnych n i k, zgodnie z zasugerowanym algorytmem.
Pytanie 11.6.1: Dlaczego, w tym przypadku, nie jest rozsądnym rozwiązaniem napisanie algorytmu rekurencyjnego?
Zobacz odpowiedź
Rys. 11.6.1 Trójkąt Pascala
Zadanie-Zabawa (Trójkąt Sierpińskiego) Napisz program, który drukuje trójkąt Pascala w postaci 11.6.1(b), ale tak, że wszystkie liczby nieparzyste zostały zastąpione kropkami, a liczby parzyste odpowiednimi odstępami (puste miejsca). Porównaj uzyskany obraz z wynikiem następującego procesu: Trójkąt równoboczny podziel na cztery jednakowe trójkąty równoboczne i wytnij środkowy. Następnie zrób to samo z każdym z pozostałych trzech trójkątów. Otrzymasz 9 trójkątów równobocznych i znów z każdego z nich wytnij środkowy trójkąt równoboczny. itd. A może napiszesz algorytm, który realizuje ten proces?
« poprzedni punkt | następny punkt » |