Algorithmization and programming # 1
Abstract of the academic discipline
The purpose of studying the discipline: the formation and development of competencies aimed at acquiring practical skills of professional computer ownership and the application of procedurally oriented technology for developing software products when solving applied tasks in the field of computer science, mastering the theoretical foundations of algorithmization and programming, mastering basic programming techniques algorithmic structures and basic data structures.
Practical significance and use of the acquired knowledge: Understanding of typical algorithmic constructions and means of representing the algorithm. Understanding imperative programming paradigms, a comprehensive understanding of the main stages of program development. Gaining knowledge about the syntax and semantics of the basic constructive elements of the programming language: tokens, expressions and operators. Ability to choose and use data types, both simple and complex (arrays, structures, unions). Mastering the techniques and technology of program debugging and testing. Obtaining knowledge and skills in documenting software products.
Main learning outcomes
PRN#5. Design, develop and analyze algorithms for solving computational and logical problems, evaluate the effectiveness and complexity of algorithms based on the application of formal models of algorithms and calculated functions.
PRN#9. To develop software models of subject environments, to choose a programming paradigm from the standpoint of convenience and quality of application for the implementation of methods and algorithms for solving problems in the field of computer science.
Subjects and types of educational classes
1 week.
Lecture #1 "Fundamentals of procedural programming. Representation of information in computer memory".
Laboratory lesson #1
"Introduction to work in an integrated development environment. Development of linear structure programs".
2 week.
Lecture #2 "Algorithm and basic algorithmic constructions. Basic concepts of the programming language".
Laboratory lessons #2 and #3
"Algorithm programming using the conditional control transfer operator "if". Part 1".
3 week.
Lecture #3 "Basic data types of the C programming language."
Laboratory lessons #2 and #3
"Algorithm programming using the conditional control transfer operator "if". Part 2".
4 week.
Lecture #4 "The structure of a program in the C language. The main means of data input and output in the C programming language."
Laboratory lessons #4 and #5
"Algorithm programming using the selection operator "switch". Part 1".
5 week.
Lecture #5 "Constants, variables, expressions. Basic operations".
Laboratory lessons #4 and #5
"Algorithm programming using the selection operator "switch". Part 2".
6 week.
Lecture #6 "Simple operators of the C programming language".
Laboratory lesson #6 and #7
"Programming of cyclic structure algorithms. Part 1".
7 week.
Lecture #7 "Programming language control operators. Conditional operator".
Laboratory lessons #6 and #7
"Programming of cyclic structure algorithms. Part 2".
Modular control work #1.
8 week.
Lecture #8 "Programming language control operators. Selection operator".
Laboratory lessons #8 and #9
"Algorithm programming using the counting cyclic operator. Part 1".
9 week.
Lecture #9 "Programming language control operators. Operators of the organization of cyclic processing".
Laboratory lessons #8 and #9
"Algorithm programming using the counting cyclic operator. Part 2".
Obtaining the individual task for Calculation-Graphic Work
10 week.
Lecture #10 "Structural types of data - arrays. Programming of one-dimensional arrays".
Laboratory lessons #10 and #11
"Programming algorithms for processing two-dimensional arrays. Part 1".
Performing Calculation-Graphic Work
11 week.
Lecture #11 "Algorithms for sorting one-dimensional arrays".
Laboratory lesson #10 and #11
"Programming algorithms for processing two-dimensional arrays. Part 2".
Performing the Calculation-Graphic Work
12 week.
Lecture #12 "Structural types of data - arrays. Programming of two-dimensional arrays".
Laboratory lessons #12 and #13
"Programming of string processing algorithms. Part 1".
Defense of the Calculation-Graphic Work
13 week.
Lecture #13 "Programming of one-dimensional character arrays - strings"
Laboratory lessons #12 and #13
"Programming of string processing algorithms. Part 2".
Defense of Calculation-Graphic Work
14 week.
Lecture #14 "Programming data structures".
Laboratory lessons #14 and #15
"Programming using data structures. Part 1".
15 week.
Lecture #15 "Introduction to the streaming data input-output system".
Laboratory lessons #14 and #15
"Programming using data structures. Part 2".
Modular test (control work) #2.
Individual work of the applicant takes place during the semester and consists of preparation for classroom classes, control measures, individual tasks.
Consultations: are carried out by the teacher during the semester according to the schedule.
Assessment of learning outcomes
The evaluation of the results of studies in the discipline is carried out according to the cumulative system, which allows the student to receive a maximum of 100 points during the semester.
Module 1
Laboratory works # 1, 2, 3, 4, 5, 6, 7 – 4 of 5 points – 20 points.
Modular test # 1 – perfect execution of 30 points (in each task of the modular test, the maximum number of points for each task is given).
Module 2
Laboratory works 8, 9, 10, 11, 12, 13, 14, 15 – 4 of 5 points – 20 points.
Defense of the Calculation-Graphic work - 10 points.
Modular test # 2 – perfect execution of 20 points (in each task of the modular test, the maximum number of points for each task is given).
Links to recommended sources of information
1. Shpak Z.Ya. Programming in the C language: a tutorial. – L.: Lviv Polytechnic, 2011. – 436 p.
2. Kozak L.I., Kostyuk I.V., Stasevych S.P. Fundamentals of programming: a study guide. - Lviv: "New World-2000", 2020. - 328 p.
3. Krenevich A.P. Algorithms and data structures: a textbook. - K.: VOC "Kyiv University", 2021. - 200 p.
4. Kovalyuk T.V. Algorithmization and programming: a textbook. - Lviv: "Magnolia 2006", 2021. - 400 p.