summaryrefslogtreecommitdiff
path: root/Technology/6.0001 Introduction to Computer Science and Programming in Python.md
diff options
context:
space:
mode:
authornic <ra@afu.re>2025-05-05 10:59:25 -0400
committernic <ra@afu.re>2025-05-05 10:59:25 -0400
commit21ae09ada9d367994b3a00c14bce5836a806b899 (patch)
tree7572094d84b9c185245c84d3dea90e39932e7dcc /Technology/6.0001 Introduction to Computer Science and Programming in Python.md
parent0567d6cd88c593b7d69df371a9804fa384c4b5d6 (diff)
Auto from nzxt - Mon 05 May 2025 10:59:25 AM EDT
Diffstat (limited to 'Technology/6.0001 Introduction to Computer Science and Programming in Python.md')
-rw-r--r--Technology/6.0001 Introduction to Computer Science and Programming in Python.md157
1 files changed, 0 insertions, 157 deletions
diff --git a/Technology/6.0001 Introduction to Computer Science and Programming in Python.md b/Technology/6.0001 Introduction to Computer Science and Programming in Python.md
deleted file mode 100644
index 99a06d2..0000000
--- a/Technology/6.0001 Introduction to Computer Science and Programming in Python.md
+++ /dev/null
@@ -1,157 +0,0 @@
-# Lecture 1 - What is computation ?
-
-Computers does 2 things only:
-- Calculate
-- Remember Calculations
-
-Computational problem solving & Computational complexities
-
-From Ambigous problem statement to computational formulation of a method
-
-Declarative vs Imperative Knowledge
-Declarative: Like an axiom - Statement of Facts
-Imperative: Like an algorithm - Sequence & Flow control - Computations
-
-John Von Newmann & Alan Turing
-Fixed program computer(Arithmetic logic Unit) - 1941 - Atanasoff & Berry
-Manchester Mark 1 - University of Manchester
-Stored program computer
-Interpreter for instrutions - Now computers can program themselves
-
-Flow control, Flowcharts
-Programming Langs
-
-Church-Turing Thesis - Defines the concept of Computability - The Nature of Computation
-Lambda calculus - Computable and effectivelly calculable
-if solvable by algo solvable by turing machine and vice versa
-Universality of Computation
-
-Halting problem - if you can prove a program will run forever or not ? no said Turing
-
-Low lvl vs High lvl
-Interpreted vs Compiled
-
-Syntax, Static sementics (syntatical validity), Sementics(meaning)
-
-Turing: We can compute anything using 6 primitives
-Read, Write, Move Left, Move Right, Scan, Do nothing
-
-Using Tape he showed can compute anything
-modern langs evolved from primitives
-
-primitives -> expressions -> values -> meaning
-
-Primitve constructs(Syntax):
-- English: Words
-- Prog langs: Numbers, Strings, Simple operators
-
-Static Sementics (Invalidity):
-- English: I are hungry
-- Prog langs: 3+"hi"
-
-Sementics
-- English: more than one meaning
-- Prog langs: only one meaning
-
-Everything in Python is an object:
-- Scalar(int,float,bool(true/false),None,str)
-- non-scalar(type())
-
-<expr> = <var>
-
-x % y = Remainder when x/y
-x ** y = x to power of y
-
-# Lecture 2 - Branching and Iteration
-
-== vs = comparaison vs assignement
-
-a variable is just a name, object can be assigned to more than 1 var
-can assign multiples var in one line <><>=<><>
-
-Operators can be combined to form expressions, the value of the expression is an object of some type()
-
-## Arithmetic Operators
-- + : Addition
-- - : Subtraction
-- * : Multiplication
-- / : Division
-- % : Modulo (remainder)
-- ** : Exponent
-- // : Floor division
-
-## Comparaison Operators - Compare 2 value and return true or false
-- == : Equal to
-- != : Nor equal to
-- > : Greater than
-- < : Less than
-- >= : Greater than or equal to
-- <= : Lesser than or equal to
-
-## Assignement Operators - Assign value to var
-- = : Assignement
-- += : Addition assignement
-- -= : Substraction assignement
-- *= : Multiplication assignement*
-- /= : Division assignement
-- %= : Modulo assignement
-- //= : Floor division assignement
-- **= : Exponentiation assignement**
-
-## Logical Operators - To combine conditional statements
-- AND
-- OR
-- NOT
-
-## Bitwise Operator - Operate on Binary numbers
-## Membership Operator - Check if value is part of sequence
-- in
-- not in
-## Identity Operator - Check if 2 object refer to the same memory location
-- is
-- is not
-
-Variables can't start with a number
-Variables are case sensitive
-Keywords(reserved words) can't be used
-Identatation sementically meaningfull
-
-Strait Line Programs VS Branching Programs (ex: with conditional expresion)
-
-
-slicing = sequence[start:stop:step]
-'abc'[:] = 'abc'[0:len('abc')]
-
-when convert float to int : truncated not rounded
-
-fstring - to format strings
-
-f"Hello {name}, you are {age} yrs old"
-can include any expression in bracket
-f"The area of a circle with radius {sum(radius)} is {math.pi * radius}"
-
-## Conditional Statement
-- if : execute if true
-- if, elif, else
-
-## Looping Statement
-- for - Iterate over a sequence
-- while - Repeat a block of code as long as condition is true
-
-# Control statement
-- break - exit current loop
-- continue - skip rest of current iteration and follow to the next iteration in loop
-- pass - null does nothing
-
-range(start,stop,increment)
-
-PEP8 - https://peps.python.org/pep-0008/
-
-# Lecture 3 - String Manipulation, Guess and Check, Approximations, Bisection
-
-Algo:
-- Guess and check - exhaustive enumeration
-- Bisection Search - a example of succesive approximation method
-- Approximation - most common: Newton-Raphson Method
-
-# Lecture 4 - Decomposition, Abstraction, and Functions