Addis Ababa University – College of Business and Economics
School of Commerce
Business Administration and Information Systems (BAIS) Program Unit
Course Syllabus- Programming I (BAIS3091)
Semester I -2024/2025
Instructor information
Instructor Email Office location & hours
Yessuf Addis [email protected] New Building office # 801
General information
Description
This course is assumed to be the first course in programming. The course is designed to introduce
Structured Programming in Python by providing an overview of programming concepts, on creating and
working on computer programs in Python. The course mainly emphasizes on basic components of a high-
level language and developing a skill on the usage of those components. It will address the fundamental
programming constructs: Basic syntax and semantics of a high-level languages, Basic elements of
programming: identifiers, variables, literals, constants, keywords, comments, data types, expressions and
operators, statements, Control Structures, data structures in Python, and file management.
Learning Outcomes
At the end of the course students will be able to:
➢ understand the nature of programming as human activity
➢ learn and experience main components of programming process
➢ analyze variety of problems and generate appropriate algorithmic solutions
➢ learn and being able to use major programming patterns
➢ write a program that uses each of the following fundamental programming constructs: Basic syntax
and semantics of a high-level languages, Basic elements of programming: identifiers, variables, literals,
constants, keywords, comments, data types, expressions and operators, statements, Control
Structures, functions and files.
Page 1
Course Contents
Chapter Title of the chapter and main topics
Introduction Computers and Programming
▪ Introduction
▪ Hardware and Software
Chapter 1 ▪ How Computers Store Data
▪ How a Program Works
▪ Using Python
▪ Exercises
Input, Processing, and Output
• Designing a program
• Input, Processing and Output
• Comments, variables, reading input from the keyboard
Chapter 2
• Performing calculations
• Displaying formatted output with F-strings
• Named Constants
• Programming exercises
Control Structures
• If- else statements
• Nested structures
Chapter 3 • Logical operators, Boolean variables
• Repetition structures – while loop, for loop
• Nested loops
• Programming exercises
Functions
• Introduction to functions
• Designing a program to use functions
Chapter 4
• Local variables, passing arguments, global variables
• Storing functions in modules
• Programming exercises
Files and Exceptions
Chapter 5
• Introduction to file input and output
• Using loops to process files
• Processing records
Page 2
• Exceptions
• Programming exercises
Python Data Structures
• Lists, list slicing, the in operator, list methods
Chapter 6 • Two dimensional lists
• Tuples
• Dictionaries
• Programming exercises
Type of assignment % of Grade
Test/ Quiz Students are expected to take three tests/quizzes 30%
Group Reading assignment. 20%
assignment Home take assignment at the end of each chapter.
Exam Final exam on topics covered in classroom 50%
discussion, reading assignments.
Reference Materials
1. Starting out with Python, Tony Gaddis. 5th edition.
2. Python crash course, a hands-on, project-based introduction to programming, Eric
Matthes.
Page 3