MC102

Computer Algorithms and Programming

Objectives
classrooms Project Manager Assessment Jobs REFERENCES Calendar FAQ Students Notes

Contact Us

Teacher:
Rodolfo Jardim de Azevedo
rodolfo

@ ic.unicamp.br
Monitor:
Luis Augusto Angelotti Meira luis.meira

Notices
Data
Notice
21/06
The test scores are already on the grade board. The absences will be counted on 23/06 in the morning and also placed there. The review of the third race will take place on June 23 from 06:10 am to 00:11 am and from 00:17 pm to 00:19 pm in room 00 of IC8.
05/06/03
Activity 08 postponed to 06/06. Activity 09 available.
05/06/03
Sixth updated list of exercises.
05/06/03
Conversion material from Pascal to C available.
29/05/03
Sixth list of exercises available.
29/05/03
Updated note board.
20/05/03
Result of the second test is already in note board. Solution example: Q1 (front, to), Q2, Q3, Q4.
29/04/03
Fifth list of exercises available.
15/04/03
Fourth list of exercises available.
08/04/03
Result of the first test is already in note board.
26/03/03
Third list of exercises available.
21/03/03
Second list available. You can also make list 3 on the lesson notes page.
19/03/03
Each student must have three passwords: One for the laboratory door, one for the computers and one for Susy. The first two must be taken from SIFEEC (room LE21). Susy's password must be taken with the monitor (send an email to him asking if you haven't already). All passwords are personal and non-transferable.
14/03/03
Laboratories page already available.
11/03/03
First list of exercises available. You can also make lists 1 and 2 on the lecture notes page.
06/02/03
Workbook left at DCE's Xerox.
20/02/03
Laboratory confirmed: LE22A / B.
19/02/03
Online copy of the Discipline Information delivered on the first day of school.
19/02/03
Classroom confirmed: FE23.
14/02/03
Turbo Pascal 5.5 and Turbo C 2.01: Free download through the website Borland Development Network Museum (http://bdn.borland.com/museum/).

Objectives

In this discipline will be studied:
  • Introduction to Computing
  • Algorithms and Programs
  • Pascal and C languages

Menus: Fundamentals of algorithms and their representation in high-level languages. Detailed study of one or more languages. Systematic development and program implementation. Modularity, debugging, testing and program documentation.

classrooms

Tuesday: 21:00 - 23:00 (FE23)
Thursday: 19:00 - 21:00 (FE23)
Friday: 19:00 - 21:00 and 21:00 - 23:00 (LE22A / B)

Project Manager

Rodolfo (teacher): Tuesday: 19:30 - 20:30 - IC Room 8
Luis Augusto (monitor): Monday: 18:00 - 19:00 and Wednesday: 18:00 - 19:00. IC Room 42



Assessment

The evaluation will consist of a grade of 3 tests (P1, P2 and P3) and a laboratory grade (NL). The student's average (M) will be calculated as follows:
  • M = (2 * P1 + 3 * P2 + 4 * P3 + NL) / 10
Students with an average (M) below 5 must take the exam (E). The student's final grade (NF) will then be:
  • M, if M ≥ 5
  • (M + E) / 2, otherwise

Laboratories

Every laboratory class will have an activity that students must complete by the end of the class and deliver to the teacher / monitor.
Each activity delivered will be evaluated and at the end of the semester, the student's laboratory grade will be:
  • NL = L / N
where
  • NL is the laboratory grade (between 0,0 and 10,0)
  • L is the number of correct lab activities delivered
  • N is the total number of laboratory activities
Refer to the Laboratories page to view scheduled activities.


REFERENCES
  • Pascal
    • Keller, A .: A First Course in Computer Programming Using Pascal. McGraw-Hill 1982
    • Cooper, D., Clancy, M .: Oh! Pascal !. WW Norton 1982
    • Farrer, H .: Structured Pascal. Guanabara Dois 1985
    • Schildt, H .: Advanced Turbo Pascal - User Guide - 4.0 and 5.0 McGraw-Hill 1989
    • Gottfried, B .: Pascal Programming. McGraw-Hill 1994
    • Jensen, K., Wirth, N .: Pascal ISO - User Manual and Report. Campus 1988
    • Kemp, R .: Pascal for Students. Edward Arnold 1982
    • Lamb, R .: Pascal: Structure and Style. Benjamin / Cummings 1986
    • Lamie, L .: Pascal Programming. John Wiley & Sons 1987
    • Gottfried, B .: Pascal Programming McGraw-Hill 1994
  • C

Calendar

February
Day Matter
18T
Class 1: Presentation of the Course. Notions of Algorithms and Programs. Discipline Information.
20Q
Class2: Re-presentation of the Course. First program in Pascal. Introduction to Procedures.
21S
Lab 1: Presentation of the Turbo Pascal Environment.
25T Class3: Variables and types. FOR loops.
27Q
Class4: Continuation of loops (FOR), data types. Data entry commands.
28S
Lab 2: Programs with loops.
March
Day Matter
06Q
Lesson 5: FOR loops with DOWNTO and IF conditional statement.
07S
Lab 3: Programs with loops and conditional instructions.
11T
Lesson 6: WHILE and REPEAT ties. Boolean operators.
13Q
Class7: Enumerated types, type conversion. CASE command.
14S
Lab 4: First activity with Susy. see the Laboratories page. Activity 00.
18T
Class8: Constants. Vectors. Sorting algorithm.
20Q
Lesson 9: Ordering. Binary Search.
21S
Laboratory 5: Activity 01.
25T
Class 10: Matrices.
27Q
Class 11: Procedures and Functions. Passing of parameter by value.
28S
Laboratory 6: Activity 02.
April
Day Matter
01T
Lesson 12: Exercises.
03Q
Lesson 13: Test 1
04S
Laboratory 7: Activity 03.
08T
Class 14: Passing parameters by reference. Delivery of evidence.
10Q
Lecture 15: Records. String manipulation functions.
11S
Laboratory 8: Activity 04.
15T
Lecture 16: Recursion
17Q
Holiday
18S
Holiday
22T
Lecture 17: Recursion
24Q
Lecture 18: Functions and Procedures as parameters
25S
Laboratory 9: Activity 05.
29T
Lecture 19: Text files
May
Day Matter
01Q
Holiday
02S
Holiday
06T
Lesson 20: Exercises
08Q
Lesson 21: Test 2
09S
Laboratory 10: Activity 06
13T
Lecture 22: Pointers and Dynamic Allocation
15Q
Lecture 23: Recursive types
16S
Lab 11: Activity 06
20T
Lesson 24: Binary files, delivery of proof 2
23Q
Lesson 25: Examples and exercises
23S
Laboratory 12: Activity 07
27T
Lecture 26: Introduction to C Language
29Q
Lecture 27: Introduction to C Language
30S
Laboratory 13: Activity 08
June
Day Matter
03T
Lecture 28: Introduction to C Language
05Q
Lecture 29: Introduction to C Language
06S
Laboratory 14: Activity 09
10T
Lesson 30: Replacement / Exercises
12Q
Lesson 31: Replacement / Exercises
13S Lab 15: Activity 10
17T Lesson 32: Test 3
July
Day
Matter
01T
Examination