# organisms.frink

```/**     A puzzle from Robin Houston:    Someone posted a really nice mathematical question on work slack.    We have a population of independent single-called organisms in a dish. At    each generation, each of them:    • with probability 0.4, dies    • otherwise, divides into twon    Initially the population is 1. What is the probability that the colony eventually becomes extinct?    https://twitter.com/robinhouston/status/1565622812924121088 */ trials = million gens = 15 alive = 0 largestDead = 0 TRIAL: for count = 1 to trials {    largest = 0    p = 1        GEN:    for gen = 1 to gens    {       if p > largest          largest = p              if p == 0       {          if largest > largestDead             largestDead = largest                    next TRIAL       }              pnew = 0       for n = 0 to p-1       {          if randomFloat[0,1] > 0.4             pnew = pnew + 2       } //      println["\$gen \$pnew"]       p = pnew    }    alive = alive + 1 } println["\$alive out of \$trials"] println["Probability of extinction is " + (1 - (alive/trials))] println["Largest dead is \$largestDead"]```

This is a program written in the programming language Frink.
For more information, view the Frink Documentation or see More Sample Frink Programs.

Alan Eliasen was born 19767 days, 14 hours, 15 minutes ago.