ScalabeginnercliAI generated

Student Grade Statistics Tool

Build a CLI tool that reads a CSV of student scores and computes mean, median, mode, and letter-grade distribution. Learners practice collections, higher-order functions like map/filter/fold, and CSV parsing.

Estimate
~8h
Steps
5
Completed by
0
Proposed by
codeseed.app

sbt · scala-csv

Project roadmap

  1. 01

    Parse the input CSV

    ~1.5h

    Read a CSV file of student names and scores into a list of case class records.

  2. 02

    Compute core statistics

    ~2h

    Use fold and other higher-order functions to compute mean, median, and mode of the scores.

  3. 03

    Compute letter-grade distribution

    ~1.5h

    Map scores to letter grades and group/count them by grade.

  4. 04

    Print a formatted report

    ~1.5h

    Render the statistics and distribution as an aligned terminal table.

  5. 05

    Write unit tests

    ~1.5h

    Test the statistics functions against known datasets.

Resources

Ready to build this?

Get a GitHub repo and start building. Your AI reviewer checks each step as you go.

~8h · 5 steps

Tech stack

sbtscala-csv