Populatiedynamica 6

Lijsten en tuples

Opdracht

Schrijf een Python-script dat 2 functies bevat.

Schrijf een functie, vul_lijst_aan_met_max_tijdstip, die een string omzet naar een lijst en deze lijst nog verder aanvult.

  1. De functie heeft een string als inputargument:

    “Naampopulatie, startaantal, groeisnelheid, draagkracht”

    Deze string wordt door de functie omgezet naar een lijst van volgende vorm:

    [Naampopulatie, startaantal, groeisnelheid, draagkracht]

  2. Zorg dat de strings ook omgezet worden naar integers en floats indien nodig.
  3. Maak een nieuwe variabele ‘naam’ die de populatienaam bevat en verwijder de naam uit de lijst.
  4. Vul de lijst aan met volgende twee elementen, maak hierbij gebruik van een tweede functie, bereken_tijd_tot_percentage_draagkracht (maak gebruik van stapgrootte 1):

    a. Het tijdstip waarop 99% van de draagkracht wordt bereikt

    b. Het bijhorende aantal

Aanname: de populatie kent begrensde groei.

\[N_t = \frac{K}{1 + (\frac{K}{N_0}-1)* e^{-r*t}}\]
  1. De functie geeft de naam en de lijst met waarden terug. Print dit ook in een zin.

Data olifanten: [7806, 0.039, 50000, 162, 49517]

voorbeeld

  >>> vul_lijst_aan_met_max_tijdstip('olifanten,7608,0.039,50000')
  > Data olifanten: [7806, 0.039, 50000, 162, 49502]
  >>> vul_lijst_aan_met_max_tijdstip('Giraffen,5603,0.026,6000')
  > Data giraffen: [5603, 0.026, 6000, 75, 5940]
  >>> vul_lijst_aan_met_max_tijdstip('leeuwen,5003,0.030,10000')
  > Data leeuwen: [5003, 0.03, 10000, 154, 9902]