deep.pas 950 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. PROGRAM Deep;
  2. LABEL 10;
  3. CONST N = 10;
  4. Neg = -5;
  5. Pi = 3.14159;
  6. Hello = 'hi';
  7. TYPE
  8. IntArr = ARRAY [1..10] OF INTEGER;
  9. Matrix = ARRAY [0..1, 0..2] OF INTEGER;
  10. Point = RECORD x, y: INTEGER END;
  11. Color = (red, green, blue);
  12. PInt = ^INTEGER;
  13. Small = 0..255;
  14. VAR
  15. i, j: INTEGER;
  16. ch: CHAR;
  17. b: BOOLEAN;
  18. r: REAL;
  19. a: IntArr;
  20. pt: Point;
  21. col: Color;
  22. p: PInt;
  23. FUNCTION Sum(a, b: INTEGER): INTEGER;
  24. BEGIN
  25. Sum := a + b
  26. END;
  27. FUNCTION IsOdd(n: INTEGER): BOOLEAN;
  28. BEGIN
  29. IsOdd := ODD(n)
  30. END;
  31. PROCEDURE Fill(VAR a: IntArr; Value: INTEGER);
  32. VAR k: INTEGER;
  33. BEGIN
  34. FOR k := 1 TO N DO a[k] := Value
  35. END;
  36. BEGIN
  37. FOR i := 1 TO N DO a[i] := i;
  38. WHILE i < N DO i := i + 1;
  39. REPEAT
  40. CASE i OF
  41. 1: Write(1);
  42. 2, 3: Write(2)
  43. END;
  44. UNTIL i > N;
  45. col := red;
  46. pt.x := Sum(1, 2);
  47. p := NIL;
  48. 10: i := 0;
  49. IF IsOdd(i) THEN GOTO 10;
  50. r := 1.5E-3;
  51. b := (i = 1) AND (j <> 2) OR NOT b;
  52. Fill(a, 0);
  53. WriteLn('done')
  54. END.