Komme nicht weiter

Hy Leute, hänge gerade bei einer kleinen Übung.
Aufgabe: Dreitagsfliege, start = 2 Fliegen, jeden Tag verdoppeln sie sich, aber soblad die Fliegen 3 Tage alt sind sterben jeweils diese.

Komme soweit:
Sub Dreitagsfliegen()

Dim Tage&, i&, Anz1&, Anz2&, Anz3&, H2&, H3 As Long

Anz1 = 2
Tage = InputBox(„Anzahl der Tage:“, „Dreitagsfliegen“)

For i = 1 To Tage
H2 = Anz2
H3 = Anz3
Anz3 = Anz2
Anz2 = Anz1
Anz1 = (H2 + H3) * 2

Next i

MsgBox („Nach " & Tage & " Tagen leben " & Anz1 + Anz2 + Anz3 & " Fliegen“) ‚Leerzeichen wichtig!!!‘

End Sub

Problem ist, ich komme einfach nicht drauf wie ich das programmier, so dass die 3 Tage alten Fliegen sterben, weil sich diese Anzahl ja jeden Tag ändert.

Gruß

Moin, Darkness,

ich mach Dir eine kleine Tabelle, dann findest Du die Regel:

 **Tag Geburt Tod**

 1 2 -
 2 4 -
 3 8 -
 4 16 2
 5 32 4
 6 64 8
 ...

Gruß Ralf

Hy Leute, hänge gerade bei einer kleinen Übung.
Aufgabe: Dreitagsfliege, start = 2 Fliegen, jeden Tag
verdoppeln sie sich, aber soblad die Fliegen 3 Tage alt sind
sterben jeweils diese.

Hallo Dark,

welche Ablauflogik steckt dahinter:

F = 2 'Faktor
Tag0 = 2
Tag1 = F * 2 = 4
Tag2 = F * 4 = 8
Tag3 = (8 * F) - 2 = 14
oder
Tag3 = (8 - 2) * F = 12

quasi die Frage ist pro Tag der Sterbezeitpunkt vor dem Vedopplungszeitpunkt oder umgedreht?

Gruß
Reinhard

da wir uns im statistischen mittel befinden, wird also genau um 24:00:00 geboren unzwar gleichzeitig und gestorben und das auch gleichzeitig. Natürlich sieht der betrachter es nicht gleichzeitig.

deswegen kann nur eine lösung richtig sein , oder es wären gleich wirklich viel mehr, wann stirbt der 1 waren da schon einige , einige mehr , oder ganz viele geboren (neu dazu gekommen) etc etc etc… auch ne aufgabe für eine prüfung.

sorry, hätte ein bisschen besser erklären müssen:
Alle Fliegen leben von der Geburt an nur 3 Tage.

Am 1. Tag gibt es 2 Fliegen, jede Fliege vermehrt sich pro Tag 1mal und bekommt 1 Ei. Somit gibts am 2. Tag 4 Fliegen, wobei die Neugebohrenen Fliegen erst an ihrem 2 Tag sich vermehren können.Somit gibt es am 3 Tag=
2 Fliegen (vom 1. Tag noch) vermehren sich wieder = 2 Eier
2 Fliegen (vom 2. Tag noch) vermehren sich zum 1mal= 2 Eier
Die Fliegen die am jetzigen Tag schlüfpten, können sich ja noch nicht vermehren. Am Ende des dritten Tages sterben die ersten beiden Fliegen weil sie schließlich 3 Tage alt sind…

ich glaube ich habe jetzt alles erklärt.

ok nach 2 stunden geb ich mal noch ein paar formeln mit

Geburt

geburtenmenge hoch tage

Tod

tage \> lebenstage ? geburtenmenge hoch (tage - lebenstage) : 0 

Bevölkerungsexplosion
(Titel geändert fürs Archiv)

Hi Darkness,

das ändert nichts am Prinzip: Fliegen vermehren sich nach einer festen Regel, ab dem 4. Tag sterben die, die 3 Tage zuvor geboren wurden. Wie viele an jedem Tag geboren werden, weißt Du doch.

Gruß Ralf

ich weiß aber nicht wie ich das programiere :wink: bin Neuling

ich weiß aber nicht wie ich das programiere :wink: bin Neuling

Darkness, Dir ist nicht geholfen, wenn ich Dir den Code hinschreibe. Die passenden Anweisungen kannst Du selbst zusammensuchen, wenn Du erstmal weißt, was das Programm tun soll.

Gruß Ralf

also die tabelle ist schon krasy

tage\_\_\_\_\_\_\_\_\_eier\_\_\_gestorben\_\_\_überlebende
0\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_2\_\_\_\_\_\_\_\_\_\_\_0\_\_\_\_\_\_\_\_\_\_\_\_\_0
1\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_2\_\_\_\_\_\_\_\_\_\_\_0\_\_\_\_\_\_\_\_\_\_\_\_\_2
2\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_4\_\_\_\_\_\_\_\_\_\_\_0\_\_\_\_\_\_\_\_\_\_\_\_\_4
3\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_8\_\_\_\_\_\_\_\_\_\_\_0\_\_\_\_\_\_\_\_\_\_\_\_\_8
4\_\_\_\_\_\_\_\_\_\_\_\_\_\_16\_\_\_\_\_\_\_\_\_\_\_2\_\_\_\_\_\_\_\_\_\_\_\_14
5\_\_\_\_\_\_\_\_\_\_\_\_\_\_30\_\_\_\_\_\_\_\_\_\_\_4\_\_\_\_\_\_\_\_\_\_\_\_26
6\_\_\_\_\_\_\_\_\_\_\_\_\_\_56\_\_\_\_\_\_\_\_\_\_\_8\_\_\_\_\_\_\_\_\_\_\_\_48
7\_\_\_\_\_\_\_\_\_\_\_\_\_104\_\_\_\_\_\_\_\_\_\_16\_\_\_\_\_\_\_\_\_\_\_\_88
8\_\_\_\_\_\_\_\_\_\_\_\_\_192\_\_\_\_\_\_\_\_\_\_30\_\_\_\_\_\_\_\_\_\_\_162
9\_\_\_\_\_\_\_\_\_\_\_\_\_354\_\_\_\_\_\_\_\_\_\_56\_\_\_\_\_\_\_\_\_\_\_298
10\_\_\_\_\_\_\_\_\_\_\_\_652\_\_\_\_\_\_\_\_\_104\_\_\_\_\_\_\_\_\_\_\_548
11\_\_\_\_\_\_\_\_\_\_\_1200\_\_\_\_\_\_\_\_\_192\_\_\_\_\_\_\_\_\_\_1008
12\_\_\_\_\_\_\_\_\_\_\_2208\_\_\_\_\_\_\_\_\_354\_\_\_\_\_\_\_\_\_\_1854
13\_\_\_\_\_\_\_\_\_\_\_4062\_\_\_\_\_\_\_\_\_652\_\_\_\_\_\_\_\_\_\_3410
14\_\_\_\_\_\_\_\_\_\_\_7472\_\_\_\_\_\_\_\_1200\_\_\_\_\_\_\_\_\_\_6272
15\_\_\_\_\_\_\_\_\_\_13744\_\_\_\_\_\_\_\_2208\_\_\_\_\_\_\_\_\_11536

OT^4: ei oder fliege wer war zuerst da
erst das ei dann die fliege

tage\_\_\_\_\_\_\_\_\_eier\_\_\_gestorben\_\_\_überlebende
0\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_2\_\_\_\_\_\_\_\_\_\_\_0\_\_\_\_\_\_\_\_\_\_\_\_\_0
1\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_2\_\_\_\_\_\_\_\_\_\_\_0\_\_\_\_\_\_\_\_\_\_\_\_\_2
2\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_4\_\_\_\_\_\_\_\_\_\_\_0\_\_\_\_\_\_\_\_\_\_\_\_\_4
3\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_8\_\_\_\_\_\_\_\_\_\_\_0\_\_\_\_\_\_\_\_\_\_\_\_\_8
4\_\_\_\_\_\_\_\_\_\_\_\_\_\_16\_\_\_\_\_\_\_\_\_\_\_2\_\_\_\_\_\_\_\_\_\_\_\_14
5\_\_\_\_\_\_\_\_\_\_\_\_\_\_30\_\_\_\_\_\_\_\_\_\_\_4\_\_\_\_\_\_\_\_\_\_\_\_26
6\_\_\_\_\_\_\_\_\_\_\_\_\_\_56\_\_\_\_\_\_\_\_\_\_\_8\_\_\_\_\_\_\_\_\_\_\_\_48
7\_\_\_\_\_\_\_\_\_\_\_\_\_104\_\_\_\_\_\_\_\_\_\_16\_\_\_\_\_\_\_\_\_\_\_\_88
8\_\_\_\_\_\_\_\_\_\_\_\_\_192\_\_\_\_\_\_\_\_\_\_30\_\_\_\_\_\_\_\_\_\_\_162
9\_\_\_\_\_\_\_\_\_\_\_\_\_354\_\_\_\_\_\_\_\_\_\_56\_\_\_\_\_\_\_\_\_\_\_298
10\_\_\_\_\_\_\_\_\_\_\_\_652\_\_\_\_\_\_\_\_\_104\_\_\_\_\_\_\_\_\_\_\_548
11\_\_\_\_\_\_\_\_\_\_\_1200\_\_\_\_\_\_\_\_\_192\_\_\_\_\_\_\_\_\_\_1008
12\_\_\_\_\_\_\_\_\_\_\_2208\_\_\_\_\_\_\_\_\_354\_\_\_\_\_\_\_\_\_\_1854
13\_\_\_\_\_\_\_\_\_\_\_4062\_\_\_\_\_\_\_\_\_652\_\_\_\_\_\_\_\_\_\_3410
14\_\_\_\_\_\_\_\_\_\_\_7472\_\_\_\_\_\_\_\_1200\_\_\_\_\_\_\_\_\_\_6272
15\_\_\_\_\_\_\_\_\_\_13744\_\_\_\_\_\_\_\_2208\_\_\_\_\_\_\_\_\_11536

hier also die tabelle des glaubensbekenntnis nach … apostel …

klar erstmal war da eine fliege und die wolle so ganz alleine erstmal ein ei legen :smile:

tage\_\_\_\_\_\_fliegen\_\_\_gestorben\_\_\_überlebende
1\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_2\_\_\_\_\_\_\_\_\_\_\_0\_\_\_\_\_\_\_\_\_\_\_\_\_2
2\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_4\_\_\_\_\_\_\_\_\_\_\_0\_\_\_\_\_\_\_\_\_\_\_\_\_4
3\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_8\_\_\_\_\_\_\_\_\_\_\_0\_\_\_\_\_\_\_\_\_\_\_\_\_8
4\_\_\_\_\_\_\_\_\_\_\_\_\_\_16\_\_\_\_\_\_\_\_\_\_\_2\_\_\_\_\_\_\_\_\_\_\_\_14
5\_\_\_\_\_\_\_\_\_\_\_\_\_\_30\_\_\_\_\_\_\_\_\_\_\_4\_\_\_\_\_\_\_\_\_\_\_\_26
6\_\_\_\_\_\_\_\_\_\_\_\_\_\_56\_\_\_\_\_\_\_\_\_\_\_8\_\_\_\_\_\_\_\_\_\_\_\_48
7\_\_\_\_\_\_\_\_\_\_\_\_\_104\_\_\_\_\_\_\_\_\_\_16\_\_\_\_\_\_\_\_\_\_\_\_88
8\_\_\_\_\_\_\_\_\_\_\_\_\_192\_\_\_\_\_\_\_\_\_\_30\_\_\_\_\_\_\_\_\_\_\_162
9\_\_\_\_\_\_\_\_\_\_\_\_\_354\_\_\_\_\_\_\_\_\_\_56\_\_\_\_\_\_\_\_\_\_\_298
10\_\_\_\_\_\_\_\_\_\_\_\_652\_\_\_\_\_\_\_\_\_104\_\_\_\_\_\_\_\_\_\_\_548
11\_\_\_\_\_\_\_\_\_\_\_1200\_\_\_\_\_\_\_\_\_192\_\_\_\_\_\_\_\_\_\_1008
12\_\_\_\_\_\_\_\_\_\_\_2208\_\_\_\_\_\_\_\_\_354\_\_\_\_\_\_\_\_\_\_1854
13\_\_\_\_\_\_\_\_\_\_\_4062\_\_\_\_\_\_\_\_\_652\_\_\_\_\_\_\_\_\_\_3410
14\_\_\_\_\_\_\_\_\_\_\_7472\_\_\_\_\_\_\_\_1200\_\_\_\_\_\_\_\_\_\_6272
15\_\_\_\_\_\_\_\_\_\_13744\_\_\_\_\_\_\_\_2208\_\_\_\_\_\_\_\_\_11536

du könntest 3 arrays machen
eier, tote, lebende
wobei [tage] der index ist.

tage_________eier___gestorben___überlebende
0_______________2___________0_____________0
1_______________2___________0_____________2
2_______________4___________0_____________4
3_______________8___________0_____________8

bis hier leicht :smile:

jetzt folgt (weil nur lebende hühner eierlegen können)

eier = eier des vortages + überlebende des vortages,
tote = eier vor 3 tagen
leben = eier selber tag - tote selber tag
4______________16___________2____________14

eier = eier des vortages + überlebende des vortages,
tote = eier vor 3 tagen
leben = eier selber tag - tote selber tag

5______________30___________4____________26

eier = eier des vortages + überlebende des vortages,
tote = eier vor 3 tagen
leben = eier selber tag - tote selber tag

6______________56___________8____________48

so sehen dann die arrays aus :smile:

Sub population()
'
' by RakonDark 2010
' email : [email protected]
'
Dim eierproduktionsrate As Integer
Dim eierlebenszeit As Integer
' Tag der Populationsanzeige
Const tag As Integer = 15
Dim pop\_fliegen(1 To tag) As Double
Dim pop\_eier(1 To tag) As Double
Dim pop\_sterben(1 To tag) As Double
Dim pop\_ueberleben(1 To tag) As Double
Dim populationsgruender As Integer
populationsgruender = 2
eierproduktionsrate = 1 ' pro populationsgrüender
eierlebenszeit = 3 ' tage

For dertagx = 1 To tag
 If dertagx = 1 Then
 pop\_fliegen(dertagx) = populationsgruender
 Else
 pop\_fliegen(dertagx) = pop\_eier(dertagx - 1) + pop\_ueberleben(dertagx - 1)
 End If
 pop\_eier(dertagx) = pop\_fliegen(dertagx) \* eierproduktionsrate
 If dertagx \> eierlebenszeit Then
 pop\_sterben(dertagx) = pop\_eier(dertagx - eierlebenszeit)
 Else
 pop\_sterben(dertagx) = 0
 End If
 pop\_ueberleben(dertagx) = pop\_eier(dertagx) - pop\_sterben(dertagx)

Next dertagx

MsgBox (" Nach " & tag & " tagen , Fliegen die Eier legen : " & pop\_eier(tag) & ", Fliegen die am ende des Tages sterben:" & pop\_sterben(tag))
'
' enjoy it for free
'
End Sub