Skip to content

BenyaminJazayeri/MIT-OCW-6.0001-Introduction-To-Computer-Science-And-Programming-In-Python-Fall-2016

Repository files navigation

MIT-OCW-6.0001-Introduction-To-Computer-Science-And-Programming-In-Python-Fall-2016

License: CC BY-NC-SA 4.0

logo

My coursework for MIT OCW 6.0001 Introduction To Computer Science And Programming In Python Fall 2016 class.

All solutions are my own.

The In-Class Questions were completed directly on the OCW website and are not included here.

Taught by Dr. Ana Bell, Prof. Eric Grimson and Prof. John Guttag.

Course Homepage: https://ocw.mit.edu/courses/6-0001-introduction-to-computer-science-and-programming-in-python-fall-2016/

Topics Covered

Topic Subtopics
Computation and Variables What is computation, branching, iteration
Strings and Functions String manipulation, guess and check, approximations, bisection, decomposition, abstractions, functions
Data Structures Tuples, lists, aliasing, mutability, cloning, recursion, dictionaries
Testing and Debugging Testing, debugging, exceptions, assertions
Object-Oriented Programming Classes, inheritance
Program Efficiency Algorithmic complexity, searching and sorting

Coursework Done

Type Count
Problem Sets 6

Projects

A news feed filtering application with a deep OOP inheritance hierarchy implementing strategy and composite design patterns. Includes phrase, time, and logical (And/Or/Not) triggers that compose into complex filter rules, a configuration file parser for defining triggers declaratively, and a Tkinter GUI that polls RSS feeds on a background thread.

A recursive permutation generator connected to two encryption systems. A Caesar cipher with brute-force decryption (trying all 26 shifts, scoring by valid English words), and a substitution cipher that tries all 120 vowel permutations. Demonstrates class inheritance (Message -> PlaintextMessage/CiphertextMessage) and composing components across files.

A word game where players form words from dealt letter hands for points. Features wildcard support (the * character can substitute for any vowel during validation), hand substitution, and multi-hand game orchestration using dictionary-based hand management.

My Other MIT Coursework

18.01SC Single Variable Calculus
18.02SC Multivariable Calculus
18.06SC Linear Algebra
6.0002 Intro to Computational Thinking & Data Science
6.006 Introduction to Algorithms
6.034 Artificial Intelligence
6.036 Introduction to Machine Learning
6.042J Mathematics for Computer Science

I'd be very happy to discuss anything related to MIT OCW. Reach me at [email protected].

About

My coursework for MIT OCW 6.0001 Introduction to Computer Science and Programming in Python Fall 2016, taught by Dr. Ana Bell, Prof. Eric Grimson and Prof. John Guttag

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages