CSC112
CSC112
CSC112
Course Duration: Three hours per week for 15weeks (30h (T) and 45h (P)), as taught in
2011/2012 academic session.
Lecturers: Ajiboye, A. R.
M.Sc. Computer Science (Ilorin), B.Sc. Computer Science (Ilorin), NCE (Oro), ANCS, MCPN
Department of Computer Science,
Faculty of Communication and Information Sciences,
University of Ilorin, Ilorin, Nigeria.
Email: ajibraheem@unilorin.edu.ng, ajibraheem@live.com
Office Location: Block 10, Room 10
Faculty of Communication and Information Sciences,
University of Ilorin, Ilorin, Nigeria.
Consultation Hours: 2.30pm 3.30pm (Tuesdays and Thursdays)
Fagbemi, S. O.
B.Tech. Computer Science (Ogbomosho)
Department of Computer Science,
Faculty of Communication and Information sciences,
University of Ilorin, Ilorin, Nigeria.
E-mail: seun_fagbemi@yahoo.com
Office Location: Block 10, RoomF9
Faculty of Communication and Information Sciences,
University of Ilorin, Ilorin, Nigeria.
Consultation Hours: 11.00am 12noon (Fridays)
Course Content
Operating Systems (As a computer operator); Low versus High Level language;
Characteristics of a High level language; Compiler versus Interpreter; Procedural versus
Object-oriented Languages; Introduction to Programming (BASIC or FORTRAN); Problem
solving, Flowcharts and Algorithms (Simple sorting and searching algorithms and some
simple numerical analysis algorithms).
Course Description
This course provides a necessary foundation for Computer Science students. It begins by
providing an introduction to operating systems as the basic software that controls the
computer, its history, the current operating systems available and the future technologies.
Fundamental computer concepts will be treated, including problem solving with algorithms
and flowcharts. Sorting, searching, and simple numerical analysis algorithms are also treated.
Furthermore, programming concept and tools are introduced; they include characteristics of
programming languages, differences between high level and low-level languages, differences
between compilers and interpreters, and procedural and object-oriented approaches to
programming will also be considered. Finally, the BASIC programming language will be
introduced.
Course Justification
The basic Computer concepts and programming paradigms taught in this course are
fundamental to developing students as potential Computer Scientists. It is therefore necessary
that students understand them fully.
1
Course Objectives
By the end of this course, students would be able to:
(i)
demonstrate an understanding of the operating system as a computer operator,
describing its history and future technologies, its types, major functions and how it
works;
(ii)
describe the history and application of programming languages, its function, the basic
types and characteristics of each, and the differences between the major ones;
(iii)
juxtapose compiler with interpreter;
(iv)
identify the characteristics of and the differences between procedural and objectoriented languages and classify common programming languages based on these;
(v)
explain basic building blocks and stages of computer programming; and
(vi)
design computer programs in BASIC, using algorithms and flowcharts to develop
codes to solve simple problems.
Course Requirements
Students are expected to attend 75% of the classes before they can sit for the examinations,
they are also required to read widely making use of the reading list outlined in this
courseware plus other relevant materials. Assignments are compulsory and they are to be
submitted in word processed form. It is mandatory for every student to have a yahoo-mail
account to facilitate contribution to the online discussion group.
Methods of Grading
S/N Type of Grading
1.
Attendance
2.
Participation in class practical and
online discussion group
3.
Assignments
4.
Test
5.
Final semester examination
Score (%)
5
5
10
10
70
LECTURE CONTENT
2
Description
First Hour
4
Introduction to translators.
Definition of a compiler.
Characteristics and functions of a compiler.
Second Hour
Definition of an interpreter.
Characteristics and functions of an interpreter.
Differences between a compiler and an interpreter.
Practical Hour
Acquaintance with a compiler.
Study Questions
1.
What is a compiler?
2.
Highlight the characteristics and functions of a compiler.
3.
What is an interpreter?
4.
List the characteristics and functions of an interpreter.
5.
Identify the differences between a compiler and an interpreter.
Reading List
1.
French1,2, C.S. (2001). Introduction to Computer Science (pp. 393-401). (5thEdn.).
London: BookPower. ISBN 0-8264-6761-X.
2.
Compiler Wikipedia free encyclopedia3 . Available at:
http://en.wikipedia.org/wiki/compiler. Accessed 19th September, 2011.
Week 5: Procedural and Object-oriented languages
Objectives
The main objectives of this week are to explain to students what procedural and objectoriented programming languages are, and describing the differences between the two, giving
examples.
Description
First Hour
Procedural language
Object-oriented language
Second Hour
Major differences between procedural and object-oriented languages
Practical Hour
See example each of procedural and object-oriented languages
Study Questions
1.
What is a procedural programming language?
2.
Give some features of a procedural language.
3.
What is an object-oriented language?
4.
Describe the features of an object-oriented language.
5.
Differentiate between a procedural and object-oriented language.
Reading List
5
1.
2.
Description
6
Wikipedia
free
encyclopedia3 .
Available
at:
http://en.wikipedia.org/wiki/Insertion Sort. Accessed 19th September, 2011.
Objectives:
The main objectives of the test are to examine the ability of the students and to show how
well they have understood the topics taught in the previous weeks.
Week 11: Introduction to programming in BASIC
Objectives
Students will be introduced to the BASIC programming language, learning the elementary
basic keywords, identifiers and the character set.
Description
First Hour
Elements of BASIC structure
Advantages of programming with BASIC
Structure of BASIC rules on the structure of the language
Second Hour
BASIC Keywords
The BASIC character set
Practical Hour
See a typical BASIC program
Study Questions
1.
What does the acronym BASIC stand for?
2.
What are the advantages of programming with BASIC?
3.
Outline the rules on the structure of the language.
4.
List some keywords in the BASIC programming language and explain what they
mean.
5.
Discuss the BASIC character set.
Reading List
1.
French1, 2, C.S. (2001). Introduction to Computer Science (pp. 390-391). (5th Edn.).
London: BookPower. ISBN 0-8264-6761-X.
2.
BASIC
Wikipedia
free
encyclopedia3
.
Available
at:
http://en.wikipedia.org/wiki/BASIC. Accessed 19th September, 2011.
Weeks 12, 13 and 14: BASIC Programming
Objectives
The objective of this topic is to give students in-depth knowledge of BASIC programming
Description
First Hour (Week 12)
Variables
Constants Numeric and String constant
Second Hour (Week 12)
Arithmetic Expressions hierarchy of operations and rules guiding arithmetic expressions
Relational/Logical Expressions relational/logical operators and their meanings
First Hour (Week 13)
8
First Hour
General review for examinations
Second Hour
Questions and Answers
Revision Questions
1.
Discuss the role of the operating system in the computer.
2.
Differentiate between the network operating system and the multi-user operating
system.
3.
Explain the following terms: compiler, source code, machine code.
4.
Is it possible to detect logic errors during program compilation? Give reason for your
answer.
5.
Discuss any three characteristics of an algorithm
6.
Demonstrate your understanding of algorithms and flowcharts by designing a
flowchart to find the largest of any three numbers.
7.
Compare and contrast algorithm and flowchart.
8.
Define BASIC language along with its features.
9.
Describe briefly the structure of BASIC language.
10. Differentiate between
(i) Numeric and String constant
(ii) Arithmetic and Relational expression
11. Write down the hierarchy of operations in arithmetic expression.
12.
What is the difference between an IF... THEN statement and an IF....THEN...ELSE
statement?
13.
What will be the output of the following program?
10 FOR I = 1 TO 3
20 FOR J = 1 TO 5
30 PRINT I, J, I+J
40 IF J = 3 THEN 100
50 PRINT I, J, I*J
60 PRINT I + J, I-J
70 PRINT
100 NEXT J
110 NEXT I
120 END
14.
Evaluate the following logical expressions:
(i) NOT (X AND Y) OR Z
(ii) (X AND Y) OR (Y AND Z)
15.
Write a BASIC program to compute the area of a rectangle with the formula A= L*B
General Reading List
1.
French1, 2, C.S. (2001). Introduction to Computer Science. (5th Edn.). London:
BookPower, 506p. ISBN 0-8264-6761-X.
2.
Cormen3, T. H., Leiserson, C.E., Rivest, R. L. & Stein, C. (2001). Introduction to
algorithms. USA: MIT Press, 1145p. ISBN 0-07-013151-1.
3.
Tanenbaum3, A.S. (2001). Modern Operating Systems. (2nd Edn.). 935p.
4.
Operating system Wikipedia free encyclopedia3 . Available at:
http://en.wikipedia.org/wiki/operating system. Accessed 19th September, 2011.
5.
What is an operating system? operatingSystems.com3. Available at
10
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Legend
1Available in the University Library
2Available in local bookshops
3Available on the Web
4Personal collection
5Departmental Library
11