Algoritmi un programmēšana

(Latvijas Universitātes Datorikas fakultāte)

2020. gada rudens semestris

 

Svarīgi paziņojumi

 

Kontroldarbu sadaļā pieejami kursa praktisko darbu gala vērtējumi pēc kontroldarbu pārrakstīšanas.

 

Semestris ir noslēdzies!

 

 

Klātienes tikšanās

 

Lekcijas

Latvijas Universitāte, Datorikas fakultāte, 1. kurss

Rīga, Raiņa bulvāris 19, 3. stāvs, 13. auditorija

1. grupa – trešdienās, 10:30 – 12:10

2. grupa – ceturtdienās, 10:30 – 12:10

3. grupa – piektdienās, 10:30 – 12:10

 

 

Aplūkojamās tēmas

 

Lekcijās stāstītās tēmas. Katrai no tām iespējams dabūt slaidus ar visu attiecīgajā lekcijā risināto uzdevumu formulējumiem un risinājumiem (ja atrodat kādu kļūdu, lūdzu, nekavējoties ziņojiet man), kā arī piedāvātos neobligātos mājas darbu uzdevumus. Par mājas darbu risināšanu papildus punktus iegūt nevar, bet to pildīšana ieteicama treniņa nolūkos, lai labāk sagatavotos kontroldarbam. Mājas darbus var iesūtīt elektroniski (blokshēmu gadījumā – vai nu kā bildi saprātīgā formātā, vai arī kā blokshēmu redaktora projektu, tas ir, saarhivētu projekta mapi) vai iesniegt nākamās lekcijas laikā papīra formātā. Mājas darbus, kuros jāraksta programmas valodā C++ vai Python, ieteicams vispirms pārbaudīt pašiem, izmantojot C++ kompilatoru vai Python translatoru.

 

1. lekcija (9.-11.09.2020.) – Kursa saturs. Algoritms un blokshēma. Mājas darbi.

2. lekcija (16.-18.09.2020.) – Valodu C++ un Python pamati. Mājas darbi.

3. lekcija (23.-25.09.2020.) – Operatori un izteiksmes, datu tipi, cikls ar skaitītāju. Mājas darbi.

4. lekcija (30.09.-2.10.2020.) – Cikli. Funkcijas C++ un Python. Mājas darbi.

5. lekcija (7.-9.10.2020.) – KD1 (blokshēmas, zarošanās, izteiksmes, cikli).

6. lekcija (14.-16.10.2020.) – Masīvi C++ un saraksti Python. Mājas darbi.

7. lekcija (21.-23.10.2020.) – Simboli un simbolu virknes. Norāde, adrese, reference. Mājas darbi.

8. lekcija (28.-30.10.2020.) – Dinamiski masīvi C++. Masīvu apstrāde funkcijās. Mājas darbi.

9. lekcija (4.-6.11.2020.) – Uzdevumu risināšana.

10. lekcija (11.-13.11.2020.) – Rekursīvas funkcijas. Funkciju veidne C++. Mājas darbi.

11. lekcija (19.-20.11.2020.) – Objektorientētā programmēšana C++. Mājas darbi.

12. lekcija (25.-27.11.2020.) – KD2 (masīvi).

13. lekcija (2.-4.12.2020.) – Statiski un dinamiski objekti C++. Klases un objekti Python. Mājas darbi.

14. lekcija (9.-11.12.2020.) – Uzdevumi par visām tēmām. Kursa noslēgums.

15. lekcija (16.-18.12.2020.) – KD1 un KD2 [pār]rakstīšana.

 

 

Kontroldarbi

 

Kursa praktiskajos darbos paredzēti 2 kontroldarbi. Kontroldarbos drīkst izmantot savas personīgās zināšanas, kā vienu A4 formāta papīra lapu (ko drīkst pēc patikas aprakstīt vai apdrukāt no abām pusēm). Nedrīkst izmantot nekādus elektroniskus (datorus, ...), bioloģiskus (kolēģus, ...) vai cita veida palīglīdzekļus, par kuriem nav teikts, ka tos drīkst izmantot. Pēc kontroldarba būs pieeja visiem kontroldarbā bijušajiem uzdevumiem un to risinājuma variantiem (ja atrodat kādu kļūdu, lūdzu, nekavējoties ziņojiet man), kā arī vērtējumiem.

 

1. kontroldarbs (7.-9.10.2020.) – Blokshēmas, zarošanās, izteiksmes, cikli (1. grupa, 2. grupa, 3. grupa). Vērtējumi.

2. kontroldarbs (25.-27.11.2020.) – Masīvi (1. grupa, 2. grupa, 3. grupa). Vērtējumi.

Kontroldarbu pārrakstīšana (16.-17.12.2020.). Vērtējumi.

 

 

Video lekcijas

 

Tiem, kas ar programmēšanu iepriekš nav saskārušies, varētu būt lietderīgi noskatīties video lekciju sēriju “Coffee Break Programming" (lekcijas ieskaņotas [ne pārāk labā] angļu valodā), kurā no pašiem pamatiem vispirms tiek izskaidrota visa programmēšanas būtība un tad tiek dots ievads algoritma pierakstā ar blokshēmu palīdzību, kā arī uzsākts aplūkot programmēšanas valodu C++. Lielākajai daļai lekciju pieejams arī mājas darbs, lai pārbaudītu savas zināšanas, kā arī kopumā pieejami trīs testi, lai radītu dziļāku izpratni par apgūto materiālu. Iespējams (ja par to būs interese), nākotnē šī video lekciju sērija tiks papildināta ar jaunām lekcijām par nākamajām C++ tēmām.


Zemāk redzams saraksts ar tēmām, kas aplūkotas šajās video lekcijās.
1. lekcija – The basics
2. lekcija – Developing an algorithm
3. lekcija – Improving the algorithm
4. lekcija – Interaction with the user
5. lekcija – The concept of a loop
6. lekcija – Verifying loops
7. lekcija – Doing the same in different ways
8. lekcija – Homework analysis
9. lekcija – Variables
10. lekcija – Introduction to C++
11. lekcija – The DEV-C++ IDE
12. lekcija – Input and output variations
13. lekcija – Structure of C++ program
14. lekcija – Operators, operands and expressions
15. lekcija – Arithmetic operators
16. lekcija – Comparison operators and the IF statement
17. lekcija – Logical operators
18. lekcija – The assignment operator
19. lekcija – QUIZ about expressions
20. lekcija – Arithmetic vs. logical values
    20. lekcijas mājas darbs
21. lekcija – The FOR loop
    21. lekcijas mājas darbs
22. lekcija – The WHILE loop
    22. lekcijas mājas darbs
23. lekcija – The DO… WHILE loop
    23. lekcijas mājas darbs
24. lekcija – The Control Flow commands
    24. lekcijas mājas darbs
25. lekcija – Characters
    25. lekcijas mājas darbs
26. lekcija – QUIZ about loops and characters
27. lekcija – Multitude of values
    27. lekcijas mājas darbs
28. lekcija – Arrays
    28. lekcijas mājas darbs
29. lekcija – Array dimensions
    29. lekcijas mājas darbs
30. lekcija – Array declaration
    30. lekcijas mājas darbs
31. lekcija – Dynamic arrays
    31. lekcijas mājas darbs
32. lekcija – Dynamic 2D arrays
    32. lekcijas mājas darbs
33. lekcija – Irregular 2D arrays
    33. lekcijas mājas darbs
34. lekcija – Sorting arrays
    34. lekcijas mājas darbs
35. lekcija – char arrays
    35. lekcijas mājas darbs
36. lekcija – Character sequences
    36. lekcijas mājas darbs
37. lekcija – Character sequence specifics
    37. lekcijas mājas darbs
38. lekcija – Processing character sequences
    38. lekcijas mājas darbs
39. lekcija – QUIZ
    1. daļa – Part 1/2
    2. daļa – Part 2/2

 

Atpakaļ uz sākumu