Computer programming

Instructor: Marius Minea, marius@cs.upt.ro (Office: B531. Phone: +40-256-403284)
Lab assistant: ing. Dr. Alexandru Iovanovici
Course: Mon 12-14 (odd weeks), ASPC; Tue 10-12, A109
Lab: Thu 10-14, B418a+b
Office hours (exam period): Mon Feb 1 + Wed Feb 3, 12h, B628
past: Wed Jan 27, 12h, Mon Jan 25, 12h, Fri Jan 22, 10:30h, Mon Jan 18, 16h
Office hours (teaching period): Wed 14-16 B418a+b
Lab attendance/results

Exam results (1, 2 and 3)
Midterm results
Midterm solutions
n-ary prefix expressions, read function term
swap octal digits, max of rotated numbers,
capitalize first letter, spaces to dashes

Course materials

An excellent pledge on how to be a student in a course (CS @ U. of Virginia)

last year's course

  1. Introduction. Recursion
    Sample programs: Fibonacci words, box fractal
  2. Recursion. Decision. Characters
  3. Recursion. Assignment. Iteration
    Sample programs: filter HTML tags, filter LaTeX commands with braces
  4. Iteration. Side effects
    Sample programs: capitalize words (variant: first letter), factor into primes, balanced parantheses
    integer expression recursive, iterative inner loop
  5. Internal representation. Bitwise operators
    Sample programs: bitwise addition, stream bits, bitmap processing, float structure
  6. Arrays
    Sample programs: n choose k, collapse spaces
  7. Input/Output
    Sample program: read ints line by line
  8. Pointers
    Sample programs: strchr with index/pointer, read ints from string,
  9. Pointers.
    Sample programs: matrix multiply, string sort, read and count numbers, prefix expression from string
  10. Dynamic allocation
    Sample programs: array of arbitrary size
  11. File I/O
    Sample programs: various file ops, bitmap info, check PDF (variant)
    Modular compilation. Abstract datatypes. Example: intlist.h, intlist.c, working with lists
    Recitation. Sample programs: half bitmap, scanf to buffer
  12. Structures
    Sample program: construct terms
  13. Linked lists
    ordered lists, queues: header, implementation, test program
    Hashing. just words, frequence count, general hashmap
  14. Review

Laboratory

If needed, use the online compilers at Codepad or Coding Ground
  1. Homework+Lab 1: Introduction. Recursion
  2. Homework+Lab 2: Recursion
    Solved problems: Trigonometric series, reverse word
  3. Homework 3 + Lab 3: Iterative character processing
    Solved problems: read base 8/10/16, thousands separator, word count with state flag, with inner loop
  4. Homework 4 + Lab 4: Character processing: recursive and iterative
    Solved problems: continued fraction, stacked expression, fixed-width printing
  5. Homework 5 + Lab 5: Bitwise operators
    Solved problems: bit compare, count bit segments, add floats, float inverse
  6. Homework 6 + Lab 6: Arrays
    Review problems
  7. Homework 7 + Lab 7: Strings and Input/Output
  8. Homework 8 + Lab 8: Pointers
  9. Homework 9 + Lab 9: Pointers
  10. Homework 10 + Lab 10: Dynamic allocation
  11. Lab 11: Files
  12. Lab 12: Structures
  13. Lab 13: Abstract datatypes. Lists.

Review

Resources


Marius Minea
Last modified: Thu May 26 16:00:00 EEST 2016