title: Cant find the problem in the program "Hammurabi", copied it from book (German)
body: <p>I'm trying to learn JavaScript with a German book called "Programmieren Lernen mit Javascript" by Stephan Elter.</p>
  
  <p>In the capital, I have a problem with writing a small game called "Hammurabi".</p>
  
  <p>Its an old quite popular Simulation, where you are the ruler of a country and you have to manage your foodstorage/population/acres to feed all your population and let it grow.</p>
  
  <p>I tried to write the code, how I see it in the code.</p>
  
  <p>When I open my HTML-site though, it shows nothing but a blank white screen.</p>
  
  <p>Here is the code.</p>
  
  <p>Does anybody know, what I have done wrong?</p>
  
  <p>Sorry for the German variable names.</p>
  
  <p>As I said, I copied it from the book.</p>
  
  <p><div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false">
  <div class="snippet-code">
  <pre class="snippet-code-js lang-js prettyprint-override"><code>&lt;html&gt;
  &lt;head&gt;
   &lt;title&gt;Hamumrabi&lt;/title&gt;
   &lt;meta charset="UTF-8"&gt;
  &lt;/head&gt;
  &lt;body&gt;
  &lt;script&gt;
  
  var jahr = 0;                // year
  var buerger = 100;           // people
  var korn = 6000;             // Food
  var land = 400;              // land
  var ende = false;            //game over
  var landPreis = 5;           //price per land (acre)
  var ernteProAcker;           // harves per acre
  
      ///////////////////////////////////////////////////////////////////////////////////////////////////////////////    
  function spieleEineRunde()
      {
          if(ende ==false)
              {
                  jahr = jahr+1;
                  bestimmeErnteErfolg();
                  verarbeiteBefehle();
                  bestimmeLandPreis();
                  erstelleBericht();
                  pruefeEnde();
              }
      }
      ///////////////////////////////////////////////////////////////////////////////////////////////////////////////
  function bestimmeLandPreis()
      {
          landPreis = Math.round(Math.random()*10+0.5);
          if(Math.random()&gt;0.9)
              {
                  landPreis = Math.round(Math.random()*15+0.5);
              }
      }
      
      ///////////////////////////////////////////////////////////////////////////////////////////////////////////////
  function bestimmeErnteErfolg()
      {
          ernteProAcker = Math.round(Math.random() * 5 + Math.random()*5+0.5);
      }
      ///////////////////////////////////////////////////////////////////////////////////////////////////////////////    
  function verarbeiteBefehle()
      {
          var eingabe = prompt("Erteilt Eure Befehle, hoher Herrscher", "Nahrung, Aussaat, Landhandel");
          var befehle = eingabe.split(",");
          
          var verteileKorn = parseInt(befehle[0]);
          var saeheKorn = parseInt(befehle[1]);
          var landKauf = parseInt(befehle[2]);
          
          if (isNaN(verteileKorn) || verteileKorn &lt; 0)
              {
                  verteileKorn = 0;
              }
          if (isNaN(saeheKorn) || saeheKorn &lt; 0)
              {
                  saeheKorn = 0;
              }
          if (isNaN(landKauf))
              {
                  landkauf = 0;
              }
          
          bevoelkerung(verteileKorn);
          aussaat(saeheKorn);
          handel(landKauf);
      }
      
      
          ///////////////////////////////////////////////////////////////////////////////////////////////////////////////
  function bevoelkerung(nahrung)
      {
          if(nahrung&gt;korn)
              {
                  nahrung = korn;
              }
          korn = korn - nahrung;
          var ausreichendNahrung = Math.round(nahrung/20) - buerger;
          
          var neueBuerger = 0;
          if (ausreichendNahrung &gt;0)
              {
                  neueBuerger = ausreichendNahrung /2;
              }
          var verstorbeneBuerger = 0;
          if (ausreichendNahrung&lt;0)
              {
                  verstorbeneBuerger = -ausreichendNahrung;
              }
          buerger = Math.round(buerger+neueBuerger-verstorbeneBuerger);
      }
  
      
          ///////////////////////////////////////////////////////////////////////////////////////////////////////////////
      
      function aussaat(saat)
      {
          var geerntetesKorn;
          if (saat&gt;korn)
              {
                  saat = korn;
              }
          korn = korn - saat;
          var moeglicheSaat = parseInt(saat/2);
          if(moeglicheSaat&gt;buerger*10)
              {
                  moeglicheSaat=buerger*10;
              }
          if(moeglicheSaat&gt;land)
              {
                  moeglicheSaat=land;
              }
          geerntetesKorn = ernteProAcker*moeglicheSaat;
          korn = korn + geerntetesKorn;
      }
      ///////////////////////////////////////////////////////////////////////////////////////////////////////////////
      function handel(kauf)
      {
          if(kauf&lt;0)
              {
                  var verkauf = Math.abs(kauf);
                  if(kauf&gt;land)
                      {
                          return;
                      }
                  land = land - verkauf;
                  korn = korn + verkauf * landPreis;
              }
          //KAUFE LAND/////////////////////////////////////////////////
          if(kauf&gt;0)
              {
                  if (kauf*landPreis&gt;korn)
                      {
                          alert("Nicht genug Korn für den Landkauf!");
                          return;
                      }
                  land = land+kauf;
                  korn = korn - kauf* landPreis;
              }
      }
          ///////////////////////////////////////////////////////////////////////////////////////////////////////////////
      function erstelleBericht()
      {
          var ernte;
          switch (ernteProAcker)
              {
                  case 1:
                      ernte = "Unwetter vernichteten Teile der Ernte.";
                      break;
                  case 2:
                  case 3:
                      ernte = "Das Wetter war schlecht.";
                      break;
                  case 6:
                  case 7:
                      ernte = "Das Wetter war gut. Die Ernte war reichlich.";
                      break;
                  case 8:
                  case 9:
                  case 10:
                      ernte = "Das Wetter war hervorragend. Die Ernte war riesig.";
                      break;
                  case 4:
                  case 5:
                  default:
                      ernte = "Das Wetter war normal.";
                      break;
                 
              }
          var info = "Weiser Herrscher!&lt;br&gt;";
          info += "Wir schreiben das Jahr " + jahr + "Eurer Herrschaft.&lt;br&gt;";
          info += buerger + " treue Buerger zählt Euer Reich.&lt;br&gt;";
          info += ernte + "&lt;br&gt;" + korn + " Scheffel Korn lagern in Euren Kammern. &lt;br&gt;";
          info += land + " Acker Land besitzt Ihr.&lt;br&gt;";
          info += landPreis + " Scheffel Korn kostet ein Stück Land.";
          monitor.innerHTML = info;
          return;
        
      }
      
      function pruefeEnde
      {
          var abbruchGrund = "&lt;br&gt;";
          if (buerger &lt; 1)
          {
              ende = true;
              abbruchGrund += "Ihr habt zu wenig Untertanen.";
          }
          if (korn &lt; 1)
              {
                  ende = true;
                  abbruchGrund += "Eure Kornkammern sind leer.";
              }
          if (land&lt;1)
              {
                  ende = true
                  abbruchGrund+="Ihr habt kein Land";
              }
          if (jahr&gt;20&amp;&amp;ende=false)
              {
                  ende = true;
                  abbruchGrund = "Nach 20 Jahren ist Eure Herrschaft vorbei. Ihr seid gepriesen.";
              }
          if (ende)
              {
                  abbruchGrund = "&lt;br&gt;&lt;br&gt;Eure Herrschaft ist beendet." + abbruchGrund;
                  monitor.innerHTML = monitor.innerHTML + abbruchGrund;
              }
          
          
          
      }
      
  &lt;/script&gt;
  &lt;/body&gt;
  &lt;/html&gt;</code></pre>
  </div>
  </div>
  </p>