University of Cincinnati Logo
 

CS-112 - Fundamentals of Computer Programming
School of Computing Sciences and Informatics

Lecture Notes
   
    Topic Section 001
Introductions
    Why mathematics?   -- Sep   
    For, while, if   -- Sep   
    Read from file   -- Sep   
    Interpolation   -- Sep   
    Visualization   -- Sep   
    Multiplication   -- Sep   
    Minimum cost network   -- Sep   
    Random variables   -- Sep   
    Craps   -- Sep   
 
Review
    Week 1   -- Sep   
    Week 2   -- Sep   
    Week 3   -- Sep   
    Week 4   -- Sep   
    Week 7   -- Sep   
    Week 8/9   -- Sep   
    Week 10   -- Sep   
 
Matlab Suggestions
    Square Root   -- Sep   - an ancient algorithm
    Discussion   -- Sep   - why does the above work?
    Cube Root   -- Sep   - cube root algorithm
    Pi   -- Sep   - calculate π accurately
    Others   -- Sep   - additional problems to iterate
    Draw a circle   -- Sep   - use sin and cos to draw a circle
 
Representation of Numbers and Characters as Numbers
    Byte Representations I      -- Oct   - what is binary and hexadecimal
    Byte Representations II   -- Oct   - binary, hex, character, decimal
    Arithmetic Operations I     -- Oct   - integer arith, 2s complement rep
    Arithmetic Operations II     -- Oct   - floating point rep and ops
    Bitwise Logic Operations     -- Oct   - and, or, xor, negation, shift left/right
 
Algorithms for Nearly Real Problems
    Find largest number in a list   -- Oct
    Find largest number in a matrix   -- Oct
    Find best rational approximation for π   -- Oct   
    Search for a stored data item   -- Oct   
    Red-Black Tree   -- Oct   
    Minimum Cost Network   -- Oct   
    Shortest Path   -- Oct   Conceptual Solution
    Topological Sort   -- Oct   Discussion     Build Sort
 
Message Encryption
    XOR three numbers   -- Oct   - an important crypto operation
    Simple XOR-based cryptography   -- Oct   - a weak approach to cryptography
    Brute force attack on XOR cipher   -- Oct   - what to do?
    Double lock protocol   -- Oct   -
    Cracking the double lock protocol   -- Oct   -
    A more secure version of DLP   -- Oct   -
    RSA: public key encryption   -- Oct   -
    Simple hash function   -- Oct   -
    Random Number Generator   -- Oct   -
    Karn: secret key encryption   -- Oct   -
 
Statistics
    Discussion   -- Nov   
 
ERC
MainStreet
Paul Erdos
NIT
Ladies on Campus
Oscar Robinson