Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
The Modern C# Challenge

You're reading from   The Modern C# Challenge Become an expert C# programmer by solving interesting programming problems

Arrow left icon
Product type Paperback
Published in Oct 2018
Publisher Packt
ISBN-13 9781789535426
Length 362 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
Rod Stephens Rod Stephens
Author Profile Icon Rod Stephens
Rod Stephens
Arrow right icon
View More author details
Toc

Problems


Use the following problems to test your skills at building simulations. Give each problem a try before you turn to the solutions and download the example programs.

82. Dawkins' weasel

Dawkins' weasel, also known as the weasel program, is a relatively simple text simulation that was intended to demonstrate how random variation and selection can lead to non-random results. The idea was inspired by the infinite monkey theorem, which states that a monkey typing randomly on a typewriter for an infinite amount of time will eventually reproduce all of the works of William Shakespeare. Thinking about that theorem, Richard Dawkins decided to write a simulation that would generate Hamlet's line, "Methinks it is like a weasel." (Hamlet, Act 3, Scene 2.)

The simulation starts with a completely random string of 28 letters and spaces. (The Hamlet quote is 28 characters long.) The program then creates a sequence of generations until the random string morphs into the target string.

During each generation...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime