_  __   _  _         _ _     _      _           _           
  __| |/ /_ | || |     __| (_)___| | __ (_)_ __   __| | _____  __
 / _` | '_ \| || |_   / _` | / __| |/ / | | '_ \ / _` |/ _ \ \/ /
| (_| | (_) |__   _| | (_| | \__ \   <  | | | | | (_| |  __/>  < 
 \__,_|\___/   |_|    \__,_|_|___/_|\_\ |_|_| |_|\__,_|\___/_/\_\
                                                                 
            

MOUNTAIN

FILE INFORMATION

FILENAME(S): MOUNTAIN

FILE TYPE(S): SEQ

FILE SIZE: 935b

FIRST SEEN: 2025-11-30 21:28:18

APPEARS ON: 1 disk(s)

FILE HASH

4c888707bf284f46d91aa68b182d76a12db7c7fcd2e0128a02c3fa325d8362f9

FOUND ON DISKS (1 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
VCGN D 64007 MOUNTAIN SEQ DuncanTwain 15 0 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

00000000: 50 52 4F 47 52 41 4D 0D  20 20 20 20 20 20 20 20  |PROGRAM.        |
00000010: 6D 6F 75 6E 74 61 69 6E  3B 0D 43 4F 4E 53 54 0D  |mountain;.CONST.|
00000020: 20 20 20 20 20 20 20 20  20 20 4E 3D 20 32 35 36  |          N= 256|
00000030: 3B 0D 56 41 52 0D 20 20  20 20 20 20 20 20 20 20  |;.VAR.          |
00000040: 6B 3A 20 41 52 52 41 59  20 5B 30 2E 2E 4E 5D 0D  |k: ARRAY [0..N].|
00000050: 20 20 20 20 20 20 20 20  20 20 20 20 20 4F 46 20  |             OF |
00000060: 69 6E 74 65 67 65 72 3B  0D 20 20 20 20 74 6F 70  |integer;.    top|
00000070: 2C 61 2C 62 2C 0D 20 20  20 4D 2C 68 31 2C 68 2C  |,a,b,.   M,h1,h,|
00000080: 73 2C 0D 20 20 20 20 20  6E 67 2C 69 2C 78 3A 20  |s,.     ng,i,x: |
00000090: 69 6E 74 65 67 65 72 3B  0D 20 20 20 20 20 20 20  |integer;.       |
000000A0: 20 20 20 63 3A 20 63 68  61 72 3B 0D 23 61 72 74  |   c: char;.#art|
000000B0: 2E 6C 69 62 0D 42 45 47  49 4E 0D 20 52 45 50 45  |.lib.BEGIN. REPE|
000000C0: 41 54 0D 20 20 70 61 67  65 3B 20 65 6D 70 74 79  |AT.  page; empty|
000000D0: 3B 0D 20 20 77 72 69 74  65 6C 6E 28 27 4D 4F 55  |;.  writeln('MOU|
000000E0: 4E 54 41 49 4E 27 29 3B  0D 20 20 77 72 69 74 65  |NTAIN');.  write|
000000F0: 28 27 41 61 6E 74 61 6C  20 67 65 6E 65 72 61 74  |('Aantal generat|
00000100: 69 65 73 20 3D 20 27 29  3B 0D 20 20 72 65 61 64  |ies = ');.  read|
00000110: 6C 6E 28 6E 67 29 3B 0D  20 20 77 72 69 74 65 28  |ln(ng);.  write(|
00000120: 27 48 6F 6F 67 74 65 20  74 6F 70 20 5B 30 2E 2E  |'Hoogte top [0..|
00000130: 31 39 39 5D 20 3D 20 27  29 3B 0D 20 20 72 65 61  |199] = ');.  rea|
00000140: 64 6C 6E 28 74 6F 70 29  3B 0D 20 20 77 72 69 74  |dln(top);.  writ|
00000150: 65 28 27 48 6F 72 69 7A  6F 6E 20 5B 30 2E 2E 39  |e('Horizon [0..9|
00000160: 39 5D 20 3D 20 27 29 3B  0D 20 20 72 65 61 64 6C  |9] = ');.  readl|
00000170: 6E 28 4D 29 3B 0D 20 20  77 72 69 74 65 28 27 48  |n(M);.  write('H|
00000180: 69 72 65 73 20 73 63 68  65 72 6D 20 73 63 68 6F  |ires scherm scho|
00000190: 6F 6E 20 27 2C 0D 20 20  20 20 20 20 20 20 27 28  |on ',.        '(|
000001A0: 6A 2F 6E 29 20 3F 20 27  29 3B 0D 20 20 72 65 61  |j/n) ? ');.  rea|
000001B0: 64 6C 6E 28 63 29 3B 0D  20 20 49 46 A0 28 63 3D  |dln(c);.  IF.(c=|
000001C0: 27 6A 27 29 20 54 48 45  4E 20 67 72 61 66 69 6E  |'j') THEN grafin|
000001D0: 69 74 28 30 2C 32 29 0D  20 20 20 20 20 20 20 20  |it(0,2).        |
000001E0: 20 20 20 20 20 45 4C 53  45 20 68 69 72 65 73 28  |     ELSE hires(|
000001F0: 31 29 3B 0D 20 20 6B 5B  30 5D 3A 3D 30 3B 20 6B  |1);.  k[0]:=0; k|
00000200: 5B 4E 5D 3A 3D 30 3B 0D  20 20 73 3A 3D 4E 20 44  |[N]:=0;.  s:=N D|
00000210: 49 56 20 32 3B 20 6B 5B  73 5D 3A 3D 74 6F 70 3B  |IV 2; k[s]:=top;|
00000220: 0D 20 20 68 3A 3D 73 20  44 49 56 20 32 3B 20 68  |.  h:=s DIV 2; h|
00000230: 31 3A 3D 68 20 44 49 56  20 32 3B 0D 20 20 46 4F  |1:=h DIV 2;.  FO|
00000240: 52 20 69 3A 3D 32 20 54  4F A0 6E 67 20 44 4F 20  |R i:=2 TO.ng DO |
00000250: 42 45 47 49 4E 0D 20 20  20 20 78 3A 3D 68 3B 0D  |BEGIN.    x:=h;.|
00000260: 20 20 20 20 57 48 49 4C  45 20 28 78 3C 3D 4E 29  |    WHILE (x<=N)|
00000270: 20 44 4F 20 42 45 47 49  4E 0D 20 20 20 20 20 20  | DO BEGIN.      |
00000280: 6B 5B 78 5D 3A 3D 28 6B  5B 78 2D 68 5D 2B 6B 5B  |k[x]:=(k[x-h]+k[|
00000290: 78 2B 68 5D 29 44 49 56  20 32 0D 20 20 20 20 20  |x+h])DIV 2.     |
000002A0: 20 20 20 20 20 20 20 2D  68 31 2B 72 61 6E 64 6F  |       -h1+rando|
000002B0: 6D 20 4D 4F 44 20 68 3B  0D 20 20 20 20 20 20 78  |m MOD h;.      x|
000002C0: 3A 3D 78 2B 73 0D 20 20  20 20 45 4E 44 3B 0D 20  |:=x+s.    END;. |
000002D0: 20 20 20 73 3A 3D 68 3B  20 68 3A 3D 68 31 3B 20  |   s:=h; h:=h1; |
000002E0: 68 31 3A 3D 68 31 20 44  49 56 20 32 0D 20 20 45  |h1:=h1 DIV 2.  E|
000002F0: 4E 44 3B 0D 20 20 61 3A  3D 30 3B 20 62 3A 3D 4D  |ND;.  a:=0; b:=M|
00000300: 3B 20 78 3A 3D 73 3B 0D  20 20 57 48 49 4C 45 20  |; x:=s;.  WHILE |
00000310: 28 78 3C 3D 4E 29 20 44  4F 20 42 45 47 49 4E 0D  |(x<=N) DO BEGIN.|
00000320: 20 20 20 20 70 6C 6F 74  28 32 2C 61 2C 62 2C 78  |    plot(2,a,b,x|
00000330: 2C 6B 5B 78 5D 2B 4D 29  3B 0D 20 20 20 20 61 3A  |,k[x]+M);.    a:|
00000340: 3D 78 3B 20 62 3A 3D 6B  5B 78 5D 2B 4D 20 3B 20  |=x; b:=k[x]+M ; |
00000350: 78 3A 3D 78 2B 73 3B 0D  20 20 45 4E 44 3B 0D 20  |x:=x+s;.  END;. |
00000360: 20 49 46 20 61 66 64 72  75 6B 20 54 48 45 4E 20  | IF afdruk THEN |
00000370: 42 45 47 49 4E 0D 20 20  20 20 20 6D 6F 76 65 3B  |BEGIN.     move;|
00000380: 20 68 61 72 64 63 6F 70  79 0D 20 20 45 4E 44 0D  | hardcopy.  END.|
00000390: 20 55 4E 54 49 4C 20 6B  6C 61 61 72 6F 76 65 72  | UNTIL klaarover|
000003A0: 0D 45 4E 44 2E 0D FF                              |.END...         |
PROGRAM.        MOUNTAIN;.CONST.        
  N= 256;.VAR.          K: ARRAY [0..N].
             OF INTEGER;.    TOP,A,B,.  
 M,H1,H,S,.     NG,I,X: INTEGER;.       
   C: CHAR;.#ART.LIB.BEGIN. REPEAT.  PAG
E; EMPTY;.  WRITELN('MOUNTAIN');.  WRITE
('AANTAL GENERATIES = ');.  READLN(NG);.
  WRITE('HOOGTE TOP [0..199] = ');.  REA
DLN(TOP);.  WRITE('HORIZON [0..99] = ');
.  READLN(M);.  WRITE('HIRES SCHERM SCHO
ON ',.        '(J/N) ? ');.  READLN(C);.
  IF (C='J') THEN GRAFINIT(0,2).        
     ELSE HIRES(1);.  K[0]:=0; K[N]:=0;.
  S:=N DIV 2; K[S]:=TOP;.  H:=S DIV 2; H
1:=H DIV 2;.  FOR I:=2 TO NG DO BEGIN.  
  X:=H;.    WHILE (X<=N) DO BEGIN.      
K[X]:=(K[X-H]+K[X+H])DIV 2.            -
H1+RANDOM MOD H;.      X:=X+S.    END;. 
   S:=H; H:=H1; H1:=H1 DIV 2.  END;.  A:
=0; B:=M; X:=S;.  WHILE (X<=N) DO BEGIN.
    PLOT(2,A,B,X,K[X]+M);.    A:=X; B:=K
[X]+M ; X:=X+S;.  END;.  IF AFDRUK THEN 
BEGIN.     MOVE; HARDCOPY.  END. UNTIL K
LAAROVER.END...
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL