Institute of Computer Science
  1. Main page
  2. Python koolis
ET
Log in

Python koolis

  • Sissejuhatus
  • Teemad

1. Paigaldamine
2. Kommentaarid
3. Muutujad
4. Andmetüübid
5. Sõned
6. Operaatorid
7. Sisend ja väljund
8. Tingimus
9. Tsükkel
10. Algoritm ja plokkskeem
11. Järjend
12. Sõnastik
13. Funktsioon
14. Failioperatsioonid
15. Moodulid
16. Objektid

  • PyGame
  • ÜLESANDED

10. Algoritm ja plokkskeem

Iga ülesande lahendamisel oleme eelnevalt kasvõi oma peas läbi mõelnud, kuidas tulemuseni jõuda. Võimalikke (ka õigeid) teid on enamasti mitu. Kui ülesanne on veidi keerulisem, tuleb see eelnevalt lahutada väiksemateks osadeks ning neid eraldi lahendada. Nii toimime ju mitte ainult programmeerimises, vaid ka oma tavapärases elus: et hommikul kooli minna, ärkame, sööme, riietume jne, iga tegevus on omaette ülesanne, mis tuleb enne eesmärgini jõudmist lahendada.

Algoritmide kirjapanekuks on erinevaid võimalusi, üheks ülevaatlikuks variandiks on koostada plokkskeem. Plokkskeem koosneb lahenduskäiku iseloomustavatest sammudest (operatsioonidest) ja neid ühendavatest nooltest, mis näitavad liikumise suunda.

Igal skeemil on üks algus ja üks lõpp.

Tingmärgid:

  • Algus ja lõpp on ovaalikujulised;
  • Tavalised tegevused kirjutatakse ristkülikute sisse;
  • Kasutajaga suhtlus (sisendid ja väljundid) rööpkülikutesse;
  • Otsustused (tingimuslaused, hargnemised) on rombikujulised.

Igast plokist saab väljuda üks nool (välja arvatud tingimusest, mille puhul väljub kaks noolt vastavalt pealkirjadega "jah" ja "ei", samuti ei välju lõpust ühtki noolt), siseneda võib rohkem nooli.

Järgnev plokkskeem küsib kasutajalt nime (rööpkülik), omistab muutujale "tervitus" teksti ja nime (ristkülik) ning väljastab muutuja "tervitus" väärtuse (taas rööpkülik):

Tingimuste puhul kasutame rombi, positiivse arvu puhul trükitakse vastav tekst, vastasel juhul ei tehta midagi:

Lisaks eelmisele trükitakse mittepositiivse arvu puhul samuti vastav tekst (lisatud on else-osa):

Mitme variandi puhul (if - elif - else vms) lisame joonisele veel ühe tingimuse:

Tsükli jaoks pole eraldi tingmärki. Järgnev algoritm demonstreerib tsüklit, mis trükib ekraanile 5 korda sõna "Tere", tsüklimuutuja i muutub vahemikus 0 kuni 4:

Algoritmi plokkskeeme saab koostada nii käsitsi kui arvutiprogrammide abiga. Viimase puhul on variantideks näiteks online-programm draw.io (https://www.draw.io/) või töölauaprogramm yED (http://www.yworks.com/en/products_yed_download.html).


Lisamaterjalid

https://courses.cs.ut.ee/2015/progmaa/spring/Main/PARTIAlgoritm


Creative Commons litsentsiga Autorile viitamine + Mitteäriline eesmärk 3.0 Eesti (CC BY-NC 3.0 EE) - https://creativecommons.org/licenses/by-nc/3.0/ee/

  • Institute of Computer Science
  • Faculty of Science and Technology
  • University of Tartu
In case of technical problems or questions write to:

Contact the course organizers with the organizational and course content questions.
The proprietary copyrights of educational materials belong to the University of Tartu. The use of educational materials is permitted for the purposes and under the conditions provided for in the copyright law for the free use of a work. When using educational materials, the user is obligated to give credit to the author of the educational materials.
The use of educational materials for other purposes is allowed only with the prior written consent of the University of Tartu.
Terms of use for the Courses environment