Ulam spiral (for primes): Difference between revisions

m
Line 3,390:
<lang Pascal>
PROGRAM Ulam.pas;
 
 
{$IFDEF FPC}
Line 3,396 ⟶ 3,397:
{$APPTYPE CONSOLE}
{$ENDIF}
 
 
(*)
Line 3,411 ⟶ 3,413:
Only odd numbers work
(*)
SIZE = 9 ;
MSIZE = SIZE * ord ( Odd ( SIZE ) ) ;
 
TYPE
D2Arr = array of array of string ;
 
 
FUNCTION IsPrime ( n: integer ): boolean ;
Line 3,434 ⟶ 3,437:
 
END;
 
 
PROCEDURE Init2DArr ( Arr: D2Arr ) ;
Line 3,441 ⟶ 3,445:
mid: integer = MSIZE div 2 ;
 
BEGIN
 
FOR j:= 1 to MSIZE - mid - 1 DO
Line 3,454 ⟶ 3,456:
 
END;
 
 
PROCEDURE Advance ( var Turn_cnt, x, y: integer ) ;
Line 3,467 ⟶ 3,470:
 
END;
 
 
PROCEDURE Add2DArr ( Arr: D2Arr ) ;
Line 3,497 ⟶ 3,501:
 
END;
 
 
PROCEDURE Show2DArr ( Arr: D2Arr ; glyph : Boolean ) ;
Line 3,522 ⟶ 3,527:
 
END;
 
 
VAR
Line 3,527 ⟶ 3,533:
 
BEGIN
 
IF ( MSIZE = 0 ) THEN
BEGIN
Line 3,537 ⟶ 3,544:
Show2DArr ( Arr , False ) ;
Show2DArr ( Arr , True ) ;
 
END.
</lang>JPD 2021/06/14
122

edits