Dwa małe programy.

0

Witam.

Jestem początkującym i mam problem z dwoma programami, które wydawały się dosyć proste.

Pierwszy program ma za zadanie przyjmować ilość zestawów danych + owe dane , liczyć na ich podstawie i wywalać wynik. Pierwsza dana - ogólna ilość kul ,druga - ilość kul losowanych z puli. Program ma obliczyć ilość kombinacji takich losowań. Użyłem tutaj symbolu newtona. Dla małych wartości np 4 i 2 działa dobrze i zwraca 6 ,ale dla większych np 40 i 5 wywala 0 / 44 i 4 = -1. Bardzo możliwe ,że gdzieś popełniłem głupi błąd ,albo o czymś zapomniałem. Tutaj kod:

http://wklej.org/id/1931797/

Drugi program nosi nazwę "rozmnażanie pantofelków". Tutaj też trzeba podać ilość zestawów danych oraz daną - dzień rozwoju. Program ma liczyć ile pantofelków będzie istniało danego dnia. Wiadomo, że na początku jest jeden i aby jeden mógł się rozmnożyć potrzeba jednego dnia , zatem po dniu pierwszy dojrzewa i drugiego dnia już są dwa. Ten dojrzały nadal się rozmnaża a nowo powstały potrzebuje nowego dnia aby dojrzeć itd. Zauważyłem ,że ilość w konkretnych dniach tworzy ciąg fibbonaciego i odpowiednio napisałem program. Działa lecz urządzenie sprawdzające ma problem o to ,że działanie zajmuje mu zbyt długi czas i nie wiem co z tym zrobić :/
Tutaj kod :

http://wklej.org/id/1931798/

Z góry dzięki za pomoc.

2

Ad 1. Nie licz to za pomocą silni. 40 i 5 to (40*39*38*37*36)/(5*4*3*2*1) dwukrotne liczenie 35! jest niepotrzebne - tym bardziej że powoduje przepełnienie zmiennej.
Ad 2. Najpierw oblicz sobie całość dla 45 dni (ewentualnie max z danych wejściowych), później tylko wyświetlaj - nie licz za każdym razem.

1 użytkowników online, w tym zalogowanych: 0, gości: 1