Primes by Trial Division - Cromemco COBOL

15 March 2025

Cromemco COBOL requires an ENVIRONMENT DIVISION paragraph, within which NAME values must begin with an alphabetic character, and does not implement REMAINDER.

       IDENTIFICATION DIVISION.
       PROGRAM-ID.   NPRIMES.
       AUTHOR.       BEAR.
       DATE-WRITTEN. MARCH 15, 2025.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SOURCE-COMPUTER. CROMEMCO-8080.
       OBJECT-COMPUTER. CROMEMCO-8080.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  WS-NUM   PIC 9(5) USAGE IS COMP VALUE 100.
      *01  WS-NUM   PIC 9(5) USAGE IS COMP VALUE 1000.
       01  WS-FOUND PIC 9(5) USAGE IS COMP VALUE ZERO.
       01  WS-COUNT PIC 9(6) USAGE IS DISPLAY VALUE 2.
       01  WS-DIV   PIC 9(6) USAGE IS COMP.

       01  WS-PRIMES USAGE IS COMP.
           05  WS-PRIME PIC 9(6) OCCURS 100 TIMES INDEXED BY I.
      *    05  WS-PRIME PIC 9(6) OCCURS 1000 TIMES INDEXED BY I.

       PROCEDURE DIVISION.
       A000-MAIN.
           PERFORM C000-ISPRIME.
           PERFORM B000-CHECKPRIME THRU C000-ISPRIME
             UNTIL WS-FOUND IS EQUAL TO WS-NUM.
           STOP RUN.

       B000-CHECKPRIME.
           PERFORM D000-DIVIDES VARYING I FROM 1 BY 1
             UNTIL I IS GREATER THAN WS-FOUND.

       C000-ISPRIME.
           ADD 1 TO WS-FOUND.
           DISPLAY WS-COUNT.
           MOVE WS-COUNT TO WS-PRIME(WS-FOUND).
           ADD 1 TO WS-COUNT.

       D000-DIVIDES.
           DIVIDE WS-COUNT BY WS-PRIME(I) GIVING WS-DIV.
           MULTIPLY WS-DIV BY WS-PRIME(I) GIVING WS-DIV.
           SUBTRACT WS-DIV FROM WS-COUNT GIVING WS-DIV.
           IF WS-DIV IS EQUAL TO ZERO PERFORM D001-NEXTNUM.

       D001-NEXTNUM.
           ADD 1 TO WS-COUNT.
           SET I TO 1.
           SET I DOWN BY 1.

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026

Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Primes Benchmark Source

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

Primes Benchmark Results

Other COBOLs

COBOL

Cromemco COBOL

Nevada COBOL