Introduction to Programming (5 cr)
Code: 5051111-3052
General information
Enrollment
01.06.2023 - 17.09.2023
Timing
01.09.2023 - 28.12.2023
Number of ECTS credits allocated
5 op
Mode of delivery
Contact teaching
Unit
Engineering and Business
Campus
Kupittaa Campus
Teaching languages
- Finnish
Degree programmes
- Degree Programme in Industrial Management Engineering
Teachers
- Tiina Ferm
Groups
-
PTUTAS23BPTUTAS23B
- 30.11.2023 10:00 - 12:00, Ohjelmoinnin perusteet 5051111-3052
- 01.12.2023 08:00 - 12:00, Ohjelmoinnin perusteet 5051111-3052
- 14.12.2023 10:00 - 12:00, Ohjelmoinnin perusteet 5051111-3052
- 15.12.2023 08:00 - 12:00, Ohjelmoinnin perusteet 5051111-3052
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)
Teaching methods
Learning by programming
Completion alternatives
The course can be compensated with an exam, the date is agreed upon with the first lecture
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 and rehearsal questions, quizzes and labs for each.
- introduction, basic syntax, and input and output in the console
- 1: variables and types, quiz and lab 1 (total 10 points)
- 2: operators and branching, quiz and lab 2 (total 10 points)
Exam 1 (10 points)
- 3: loops (for and while), quiz and lab 4 (total 10 points)
- 4: functions, quiz and lab 5 (total 10 points)
Exam 2 (10 points)
- 5: collections (list, tuple, set, dictionary), quiz and lab 3 (total 10 points)
- 6: file IO, quiz and lab 6 (total 10 points)
- 7: review, quiz and lab 7 (total 10 points)
Exam 3 (10 points)
- 8: putting it all together in different environments (pygame, django, tkinter)
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
10 HOMEWORKS – online, rehearsing, not evaluated
7 Quizzes – online, evaluated, 5 points each, minimum 14, maximum 35
7 Labs – classroom activity, evaluated, plagiarism check result must be < 50%, 5 points each, 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 the 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.