Introduction to Programming (5 cr)
Code: 5051111-3048
General information
Enrollment
31.05.2023 - 16.09.2023
Timing
04.09.2023 - 15.12.2023
Number of ECTS credits allocated
5 op
Mode of delivery
Contact teaching
Unit
Engineering and Business
Campus
Kupittaa Campus
Teaching languages
- English
Seats
75 - 120
Degree programmes
- Degree Programme in Information and Communications Technology
Teachers
- Tiina Ferm
Groups
-
PINFOS23BPINFOS23B
-
PINFOS23CPINFOS23C
-
PINFOS23APINFOS23A
- 27.11.2023 08:00 - 10:00, Introduction to Programming, theory
- 27.11.2023 13:00 - 16:00, Introduction to Programming 5051111-3048
- 29.11.2023 09:00 - 12:00, Introduction to Programming 5051111-3048
- 01.12.2023 13:00 - 16:00, Introduction to Programming 5051111-3048
- 04.12.2023 08:00 - 10:00, Introduction to Programming, theory
- 11.12.2023 13:00 - 16:00, Introduction to Programming 5051111-3048
- 13.12.2023 10:00 - 12:00, Introduction to Programming 5051111-3048
- 15.12.2023 13:00 - 16:00, Introduction to Programming 5051111-3048
Objective
After completing the course the student can:
- describe the most important software application types and their typical features
- discuss the selection of a proper solution technology
- define the main concepts of programming such as source code, compiler, variable and data type
- read program code written by someone else
- utilize the most important decision and control structures
- recognize basic object-oriented concepts (class and its members, object, reference, exceptions)
- design and implement simple software applications
- draw a flow chart of the program.
Content
- software application structure
- development environment and tools
- variables and data types
- functions
- decision and control structures
- arrays and lists
Materials
Python Basics: A Practical Introduction to Python3 4th edition by David Amos,Dan Bader,Joanna Jablonski, Fletcher Heisler, ISBN:9781775093329 (paperback), ISBN:9781775093336 (electronic)
Programming tools
- Python 3.11.x
- IDLE
Teaching methods
Learning by programming
Completion alternatives
The course can be compensated with an e-exam. More instructions on how to enrol is given in itslearning.
The exam can be done using a programming language e.g. C/C++/#, java, javascript a student states when enrolling.
Student workload
Contact hours 77 h
Independent study continuously throughout the course, preparation for the exam 58 h
Content scheduling
The course consists of eight topics with rehearsal questions, quizzes and labs for each.
week 36: Introduction
week 37: Basic syntax
week 38: Input and output in the console
week 39: Variables and types, quiz and lab 1 (total 10 points)
week 40: Operators and branching, quiz and lab 2 (total 10 points)
week 41: Exam 1 (10 points)
week 43: Loops (for and while), quiz and lab 4 (total 10 points)
week 44: Collections (list, tuple, set, dictionary), quiz and lab 3 (total 10 points)
week 45: Exam 2 (10 points)
week 46: Functions, quiz and lab 5 (total 10 points)
week 47: File IO, quiz and lab 6 (total 10 points)
week 48: Review, quiz and lab 7 (total 10 points)
week 49: Exam 3 (10 points)
total of 100 points
Further information
Lectures and labs are implemented at the campus. This is not an online course. The classes will be on the timetable by the beginning of the semester.
Evaluation scale
H-5
Assessment methods and criteria
7 Quizzes – online, evaluated, minimum 14, maximum 35
7 Labs – classroom activity, evaluated, plagiarism check result must be < 50%, minimum 14, maximum 35
3 Exams – classroom activity, evaluated, 10 points each, minimum 12, maximum 30
To pass the course a student has to reach a minimum in all categories (quizzes, labs and exams). If the minimum is reached all the points are added and a scale of 1 – 5 is calculated.
Assessment criteria, fail (0)
Student
• does not know the basic concepts of programming
• cannot read or write simple programs
< 40 points or failed the exam
Assessment criteria, satisfactory (1-2)
Student
• knows such basic concepts of programming as variables, control structures and functions
• understands how the program flow is going
• can read or write simple programs
40 - 59 points and the minimum is reached in all categories (quizzes, labs and exams)
Assessment criteria, good (3-4)
Student
• knows such basic concepts of programming as variables, control structures, functions, classes, objects and arrays
• understands how the program flow is going and is able to find easy errors
• can make simple programs
40 - 79 points and the minimum is reached in all categories (quizzes, labs and exams)
Assessment criteria, excellent (5)
Student
• knows such basic concepts of programming as variables, control structures and functions, classes and objects
• utilizes some data Structures such as arrays, lists and hash tables.
• understands how the program flow is going and is able to use debugger and error handling
• can make programs that include aforesaid concepts.
> 80 points and the minimum is reached in all categories (quizzes, labs and exams)
> 90 points, 1 additional credit (total of 6 credits)
Qualifications
Basic computer skills and high school or vocational school mathematics curriculum or equivalent skills.