test2.pl0 331 B

123456789101112131415161718192021222324
  1. (* groesster gemeinsamer Teiler zweier Zahlen *)
  2. (*$C+ *)
  3. VAR i : INTEGER;
  4. VAR a,b : INTEGER;
  5. PROCEDURE reduce;
  6. BEGIN
  7. IF a > b THEN a := a - b;
  8. IF b > a THEN b := b - a;
  9. END;
  10. BEGIN
  11. ?a;
  12. ?b;
  13. WHILE a#b DO BEGIN
  14. CALL reduce;
  15. IF ODD a THEN
  16. BEGIN
  17. !a; !b
  18. END
  19. END;
  20. !a
  21. END.