User Tools

Site Tools


notes:discrete:fall2021:projects:pnf2

This is an old revision of the document!


Corning Community College

CSCS2330 Discrete Structures

PROJECT: PRIME NUMBER FUN eXtreem (PNF2)

Objective

Using the TIC-80 fantasy console simulator on your pi, implement a program that visually displays a range of values (lower and upper bounds adjustable by the user) that colorfully displays whether each value is a prime or composite value.

The algorithm you are to implement is the sieve of eratosthenes, which takes a completely different approach to prime/composite determination than the trial-by-division approach we've explored in pnf0/pnf1.

Time how long it takes to execute (displaying elapsed time for the run at its conclusion; this is useful for comparisons), and display this result, especially in relation to the work load and algorithm used.

Additionally, the entire class will be participating in documenting and filling out this project page. It is the responsibility of EACH class member to:

  • ask copious, clarifying questions (so you can better add content)
  • craft a coherent and organized document, with information located under pertinent headings
  • explain the fundamentals of the process, conceptual background, algorithmic approach, and you can even suggest particulars related to TIC-80 (certain functions that might prove useful- individual, unrelated snippets to do things like capturing time, or displaying text, etc.)
  • to get full credit, each individual that submits must perform no fewer than 4 changes to this document (as viewable from the wiki revision system). Failure to do so will result in documentation penalties being applied.

Background

TIC80

Specifications

Process

Prime Detection Algorithm

Originating in ancient Greece (probably), the Sieve of Eratosthenes is an mathematical algorithm for finding all prime numbers up to a given limit. The way the Sieve accomplishes this is by marking the multiples of each prime as composite (starting with 2, the first prime). Anything marked is known composite, and anything unmarked is tested. The algorithm then continues up until the root of the limit (say for a limit, N, of 100, the algorithm would continue up to 10). This is a little confusing at first, but here's a video explaining it well: https://www.youtube.com/watch?v=P__PsS2J_y8&t=3s

Note: in order to use the Sieve properly, you have to start at 2.

Display

References

Submission

I'll be looking for the following:

78:pnf2:final tally of results (78/78)
*:pnf2:no errors, program runs without issue in TIC-80 [13/13]
*:pnf2:user can specify lower and upper bounds at runtime [13/13]
*:pnf2:specified algorithms are implemented and functional [26/26]
*:pnf2:timing of process is implemented, functional, shown [13/13]
*:pnf2:project page contributions as per project specifications [13/13]

Additionally:

  • Solutions not abiding by SPIRIT of project will be subject to a 25% overall deduction
  • Solutions not utilizing descriptive why and how COMMENTS will be subject to a 25% overall deduction
  • Solutions not utilizing INDENTATION to promote scope and clarity will be subject to a 25% overall deduction
  • Solutions lacking ORGANIZATION and are not easy to read (within 90 char width) are subject to a 25% overall deduction
notes/discrete/fall2021/projects/pnf2.1631645892.txt.gz · Last modified: 2021/09/14 18:58 by mpronti2