Ymmärtämistehtävä lopussa

program LassiNoppa (input, output);

var a, b, c, p, q, v, w: integer;

begin
     p := 0;
     q := 0;
     write('Anna bonus: '); readln(w);
     repeat
           write('Anna raja: '); readln(v)
     until v > 9;

     c := 0;

     (* -------- Pääsilmukka alkaa ------------------------ *)

     while (p < v) and (q < v) do

          begin
          repeat
                write('Anna Suskun heitto: '); readln(a)
          until (a >= 1) and (a <= 6);
          p := p + a;

          repeat
                write('Anna Lassin heitto: '); readln(b)
          until (b >= 1) and (b <= 6);
          q := q + b;
          if b > a then q := q + c;
          if (q > 10) and (q < 20) then q := q + w;
          c := b;

          writeln('Suskulla ', p, ' ja Lassilla ', q, ' pistettä.')
          end;

     (* -------- Pääsilmukka loppuu ----------------------- *)

     if      p > q then writeln('Susku voitti.')
     else if p < q then writeln('Lassi voitti.')
                   else writeln('Tasapeli')
end.