This repository has been archived on 2026-05-22. You can view files and clone it, but cannot push or open issues or pull requests.
Files
ITSC-4102/README.md
2018-10-12 20:46:39 -04:00

39 lines
1.1 KiB
Markdown

# Term Project Part I
## Three Programs
Create a program (or programs) which show how the language you picked (Kotlin) works with the following:
1. I/O
1. Data Structures
1. Control Structures
## Report Card Generator
Accepts a file `sample.grades` where each line is an assignment in the format: `<course name>: <grade>`. The program iterates through the file and computes the average and letter grades for all courses listed in `sample.grades`.
### File links
[`sample.grades`](https://github.com/allemangD/pl-project/blob/master/res/sample.grades)
[`three_feature.kt`](https://github.com/allemangD/pl-project/blob/master/src/three_feature.kt)
### Language features
Language structures used include:
* Iterable unpacking
* Implicit type arguments
* Null safety and propagation (as in `courses[course]!!.add(grade)`)
* Iteration
* Actions (as in `file.forEachLine`)
* Pattern matching (simple example using `when` expression)
* String interpolation
* Classes, methods
* Extension methods
Kotlin library features used include:
* File I/O
* Standard I/O
* String conversions
* Mutable maps and lists