C-ohjelmointi : in English
Information for International Students
The C course is passed by making exercises and taking part in the exam. The exercises produce at most 35 points and the exam at most 25 points. In order to pass the course, you need 30 points altogether from exercises and exam. However, it is necessary to get at least 13 points from the exam to pass the course. Some specially marked exercises are compulsory, too. Without solving them you cannot take part in the exam. There is one exam after the lectures, two in the spring, and one in the summer.
The solutions of the exercises must be shown in the programming lab (Paja in Finnish). There the assistants check that implementations work properly. There you can get advices for programming, too. It is possible to use English in Paja. C Paja is open on Mondays 16-18 (BK107), Tuesdays 12-18 (BK107), and Fridays 10-16 (B221). The times and rooms may change, so check this page every week.
OBS: A C instructor is available also on Thurdays 10-12 in B221.
Course exam is on Thursday, October 18, 16-19, room A111.
You can check your current exercise points here.
OBS: Corrections have been made (September 25) to the tasks 1 and 5 in the exercise 4.
- Exercise 1. The deadline for showing the solutions in Paja is Tuesday, September 11.
- Exercise 2. Deadline is Tuesday, September 18.
- Exercise 3. Deadline is Tuesday, September 25.
- Exercise 4. Deadline is Tuesday, October 2. Appendix. In the appendix you see addition and multiplication tables for polynomials of degree less than 3 and with coefficients modulo 2 (i.e 0 or 1). The irreducible polynomial is X^3+X+1.
- Exercise 5. Deadline is Tuesday, October 9. S-box.
- Exercise 6. Deadline is Friday, October 19. Comments: 1) In subBytes-function, the index i is calculated using the leftmost bits of the byte and j is calculated using the rightmost bits. If the order is otherwise, the inverse subBytes does not produce the original text. 2) When generating a polynomial from a byte, the least significant bit is on the right. Thus 00110011 as a polynomial is 1+X+X^4+X^5.
Lecture slides:
- Lecture September 4
- Lecture September 11
- Lecture September 18
- Lecture September 25
- Lecture October 2
- Lecture October 9. Appendix (automaton). Old exams at the end of the lecture.
Recommended C books:
- K. N. King: C Programming, A Modern Approach
- Thomasz Muldner: C for Java Programmers