Skip to content

An introduction to computer science as a tool to solve real-world analytical problems using Python 3.5.

Notifications You must be signed in to change notification settings

codenigma1/MITx-6.00.1x_Introduction-to-Computer-Science-and-Programming-Using-Python

Repository files navigation

MITx: 6.00.1x Introduction to Computer Science and Programming Using Python

"Introduction to Computer Science and Programming Using Python," is 3 credits course from MITx on the edX platform. In this course provide basic to hard excercise and problem sets. So, the user get gradually understanding in python.

Projects:

  1. Hangman: If you have dare, beat the computer.
  2. WordGame: Create the word with possible letter. It build both version, first play the game by yourself, then repeat the same game with computer and see who make highest score.
  3. Encryption and Decryption messages: This basic encryption and decryption message. it remind me Alan Turing enigma machine.

Couse Syllabus:

Week 1

Lecture 1 – Introduction to Python: • Knowledge • Machines • Languages • Types • Variables • Operators and Branching

Lecture 2 – Core elements of programs • Bindings • Strings • Input/output • IDEs • Control Flow • Iteration • Guess and Check

Week 2:

Lecture 3 – Simple Programs: • Approximate Solutions • Bisection Search • Floats and Fractions • Newton-Raphson

Lecture 4 – Functions: • Decomposition and Abstraction • Functions and Scope • Keyword Arguments • Specifications • Iteration vs Recursion • Inductive Reasoning • Towers of Hanoi • Fibonacci • Recursion on non-numerics • Files

Week 3

Lecture 5 – Tuples and Lists: • Tuples • Lists • List Operations • Mutation, Aliasing, Cloning

Lecture 6 – Dictionaries: • Functions as Objects • Dictionaries • Example with a Dictionary • Fibonacci and Dictionaries • Global Variables

MidTerm Exam ((8 hours’ time limits))

Week 4

Lecture 7 – Debugging: • Programming Challenges • Classes of Tests • Bugs • Debugging • Debugging Examples

Lecture 8 – Assertions and Exceptions • Assertions • Exceptions • Exception Examples

Week 5

Lecture 9 – Classes and Inheritance: • Object Oriented Programming • Class Instances • Methods • Classes Examples • Why OOP • Hierarchies • Your Own Types

Lecture 10 – An Extended Example: • Building a Class • Viualizing the Hierarchy • Adding another Class • Using Inherited Methods • Gradebook Example • Generators

Week 6

Lecture 11 – Computational Complexity: • Program Efficiency • Big Oh Notation • Complexity Classes • Analyzing Complexity

Lecture 12 – Searching and Sorting Algorithms: • Indirection • Linear Search • Bisection Search • Bogo and Bubble Sort • Selection Sort • Merge Sort

Week 7

Lecture 13 – Visualization of Data: • Visualizing Results • Overlapping Displays • Adding More Documentation • Changing Data Display • An Example Lecture 14 – Summary

Final Exam (8 hours time limits)

About

An introduction to computer science as a tool to solve real-world analytical problems using Python 3.5.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages