Institute of Computer Science
  1. Main page
  2. Teeme ise arvutimänge
ET
Log in

Teeme ise arvutimänge

  • Esileht
  • I RAAMAT
  • II RAAMAT
    • Otsustamine
    • Tõeväärtused
    • Tingimuse kontroll
      • Mitme tingimuse kontroll 1
      • Mitme tingimuse kontroll 2
    • Tsükkel
      • FOR tsükkel
      • RANGE()
      • Tsüklimuutujad
      • Tsükkel sõnedega
      • AJAMÕÕTJA!
      • WHILE tsükkel
      • Lõpmatu tsükkel
      • Jäta tsükkel pooleli
    • Kommentaarid
    • Kuidas kavandada mängu?
    • Mida õppisid?
  • III RAAMAT
  • IV RAAMAT
  • V RAAMAT
  • VI RAAMAT

Tsükkel

RANGE()

Ava uus Idle aken, kirjuta sinna järgmised read, salvesta laiendiga .py ja pane käima.

Väga hea, kui sa selle koodijupi käima panid, siis ma arvan, et said põhimõttest aru, mida antud kaks rida tegid. Kuid kas see ei jäänud mitte veidi lahjaks? 5 rea korrutustabeli loomine ei ole ju mingi kunsttükk. Arvuti võimsusest teha asju tuhandeid kordi pole siin pea murdosagi kasutatud. Ma tahan, et minu programm arvutaks kõik korrutised 7-ga kuni tuhandeni!

Eelmises näites, me tegime seda aga ainult 5 korda: [1, 2, 3, 4, 5]

Kui ma tahan, et tsükkel kordaks ennast tuhat korda, kas ma pean siis listi kirjutama 1000 arvu?

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, ... ] ohh-oh-oh.... lol

Kindlasti mitte! Selleks programmeerimine ongi, et ei peaks mitte kusagil tegema mõttetut kordavat tööd ning sellisteks juhtudeks on kirjutatud Pythonisse sisse abifunktsioon range().

Range() funktsioon annab listi, mis algab alati nulliga ja lõppeb üks arv enne sulgudesse kirjutatud arvu. Seega tuhandeni kirjutatud korrutustabel tuleb kirjutada nii:

Kui ma peaksin tahtma aga mingit vahemikku, näiteks kõiki korrutisi 20-70ni, siis tuleb teha nii:

Range() funktsiooni sisse kirjutati algus ja lõpp, kusjuures tuleb meelde jätta, et lõpp tuleb kirjutada ühe võrra suuremana, kui tahta, et ka see arv oleks kaasaarvatud.

Range() funktsioonil on aga veel huvitavaid omadusi: proovi järgmist koodi!

Seekord lisasime range() funktsioonile kolmanda argumendi (nii nim. sulgudesse pandud arve). Nimelt sulgudes kolmandal kohal olev arv ütleb range() funktioonile kui mitmes väärtus sellest listist tuleb kasutusele võtta. Kuna näites oli kirjutatud 2, siis võeti korrutustabeli moodustamiseks iga teine arv. Samuti võib võtta iga 3nda või iga 5nda vms.

  • 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