SylabUZ
Nazwa przedmiotu | Fundamentals of programming |
Kod przedmiotu | 13.2-WF-FizP-FP-S17 |
Wydział | Wydział Fizyki i Astronomii |
Kierunek | Fizyka |
Profil | ogólnoakademicki |
Rodzaj studiów | pierwszego stopnia z tyt. licencjata |
Semestr rozpoczęcia | semestr zimowy 2020/2021 |
Semestr | 1 |
Liczba punktów ECTS do zdobycia | 5 |
Typ przedmiotu | obowiązkowy |
Język nauczania | angielski |
Sylabus opracował |
|
Forma zajęć | Liczba godzin w semestrze (stacjonarne) | Liczba godzin w tygodniu (stacjonarne) | Liczba godzin w semestrze (niestacjonarne) | Liczba godzin w tygodniu (niestacjonarne) | Forma zaliczenia |
Wykład | 15 | 1 | - | - | Egzamin |
Laboratorium | 60 | 4 | - | - | Zaliczenie na ocenę |
The aim of the course is learning the basics of programming and the ability to use knowledge to solve a variety of problems with special emphasis on the sciences. This approach to programming requires an understanding of not only the syntax of a programming language, but also the basics of algorithms, coding standards, the ability to work with documentation and analysis of a complex problem and reduce the number of elementary problems. Programming is the essential foundation for understanding the following subjects such as computer numerical methods and computer simulations.
It is assumed that students have a basic knowledge of working in a Linux environment. Prerequisites are a subset of the material carried out on the first computer lab.
1. Safety at work, rules of the computer lab.
2. Introduction to programming
- The concept of the algorithm, the strategy of "divide and conquer"
- Programming concept, cycle "analysis - code-execution",
- The types of errors
- Source code and machine code, compilation, linking
- History on programming languages
3. Introduction to C language
- variable types, excess and underflow errors,
- declarations and definitions of variables, projections of types
- local and global variables
- output to the screen
- mathematical operators
- C language syntax
- naming conventions and source code formatting
- compilation and linking
4. Conditions
- logical operators
- conditional operator
- conditional statement
5. Loops
- loop while
- loop do while
- loop for
6. Arrays
- one-dimensional arrays
- multidimensional arrays
7. Functions
- concept of function
- parameters passed to functions, default parameters, return values
- range of validity of variables
- references
- recursion
- work with arrays
8. Indicators and variables part.2.
- indicators
- references
- static and const prefixes
- dynamic memory allocation
- indicator arrays
- parameters passed during program launch
9. Structures
- concept of structure
- structures as data types
- use of structures
10. IO operations
- binary and text data streams
- standard input and output streams
- reading data from files
- saving to files
-
Lecture:
Conventional lectures, discussion, workshops (currently testing the code fragments), brainstorming
Laboratory: exercises, project method, group work, exchange ideas, brainstorming, presentation, working with documents, self-knowledge acquisition
Opis efektu | Symbole efektów | Metody weryfikacji | Forma zajęć |
Lecture:
The practical test consists in solving a given problem (the drawn from the list of problems). The final rating is the analysis of the problem, provide algorithms for solving the problem, the source code and the assessment and verification of the results.
Laboratories:
Score: average grades achieved during the laboratories of activity and short tests advances in science (50% of the final mark) and the assessment of the semester project (50% of the final mark). To pass the semester project is its preparation and commitment within the prescribed period of the project report and its presentation.
Before taking the exam the student must obtain a pass from the laboratory.
Score: weighted average rating of the exam (60%) and exercise (40%).
[1] Allen Downey, Think Python. How to Think Like a Computer Scientist, 2013, Green Tea Press Needham, Massachusetts.
[2] Stephen Prata „Język C, Szkoła programowania”, Helion 2016
[1] Internet
Lectures should be in the room with internet access. Computer labs should be done in groups to allow individual work with each student's computer and not with more than 12 people.
Zmodyfikowane przez dr hab. Piotr Lubiński, prof. UZ (ostatnia modyfikacja: 03-06-2020 15:16)