< Return to Video

TITLE: Lihtsa faktoriaaliprogrammi kirjutamine. (Python 2)

  • 0:00 - 0:04
    Selles videos tahan ma teile tutvustada
  • 0:04 - 0:08
    for-tsüklit, me teeme seda kirjutades väikese
  • 0:08 - 0:11
    programmi, mis leiab arvu faktoriaali
  • 0:11 - 0:14
    Ja kui te ei mäleta, mis numbri
  • 0:14 - 0:16
    faktoriaal on, kui ma ütleks teile "üks faktoriaalis"
  • 0:16 - 0:21
    siis seda kirjutatakse 1!, üks ja hüüumärk.
  • 0:21 - 0:25
    See põhimõtteliselt tähendab, et me hindame ühte
  • 0:25 - 0:28
    Kui öelda "kaks faktoriaalis", siis see on kaks
  • 0:28 - 0:33
    korda üks, kolm faktoriaalis on
  • 0:33 - 0:40
    kolm korda kaks korda üks, ehk siis see
  • 0:41 - 0:43
    võrdub kuuega. Mingi arvu faktoriaal on
  • 0:43 - 0:45
    see arv korda
  • 0:45 - 0:47
    arv miinus üks korda arv miinus kaks...
  • 0:47 - 0:50
    kuni arvuni üks. Kui see on selge,
  • 0:50 - 0:53
    kirjutame oma faktoriaaliprogrammi, ja
  • 0:53 - 0:56
    ma teen seda võttes sisendi
  • 0:56 - 0:58
    kasutajalt, see ütleb kasutajale, et ta sisestaks numbri,
  • 0:58 - 1:01
    millest ta faktoriaali leida tahab ning seejärel
  • 1:01 - 1:03
    arvutab faktoriaali. Ja nüüd teen ma seda,
  • 1:03 - 1:07
    et kasutan funktsiooni, mis Pythoniga kaasa tuleb.
  • 1:07 - 1:11
    Ja ma kasutan siin Python'i versiooni 2, teie peate seda tegema
  • 1:11 - 1:14
    veidi teisiti, tegelikult ma räägin sellest täpsemalt hiljem, kui te kasutate
  • 1:14 - 1:18
    Python 3-e. Python 2 on enim levinud versioon
  • 1:18 - 1:21
    selle video tegemise ajal, aga on olemas ka
  • 1:21 - 1:24
    Python 3, mis on pisut uuem versioon.
  • 1:24 - 1:29
    Ma räägin sellest täpsemalt tulevas videos, aga igatahes...
  • 1:29 - 1:31
    me võtame kasutajalt sisendi [input()] ning
  • 1:31 - 1:33
    küsime seda teatega, me ütleme:
  • 1:33 - 1:42
    "Sisesta positiivne täisarv, millest faktoriaal võtta."
  • 1:42 - 1:47
    ja selleks, et me saaks tuttavaks
  • 1:47 - 1:50
    funktsioonidega, me lihtsalt anname funktsioonile argumendi
  • 1:50 - 1:53
    ning see argument, mida me anname input() funktsioonile
  • 1:53 - 1:57
    sellele funktsioonile, on sõne,
  • 1:57 - 1:59
    ja sõne kõlab nagu keeruline asi, aga see on lihtsalt
  • 1:59 - 2:02
    üks jada tähemärke, mida saab vaadata hunniku tekstina.
  • 2:02 - 2:04
    Ja input() esitab selle teksti kasutajale ning annab
  • 2:04 - 2:06
    neile sisendikasti. Kui kasutaja sinna midagi
  • 2:06 - 2:12
    sisestab, siis ta hindab seda
  • 2:12 - 2:14
    ning seda võib vaadata nii, et muutuja "number"
  • 2:14 - 2:17
    viitab sellele, või võtab endale selle väärtuse (olenevalt
  • 2:17 - 2:21
    sellest, kuidas te muutujat endale visualiseerite)
  • 2:21 - 2:29
    Kui te kasutate Python 3, te tahate kutsuda eval() funktsiooni tagastatud väärtusele,
  • 2:29 - 2:31
    seda siis, kui teil on Python 3.
  • 2:31 - 2:35
    Mul on praegu Python 2. Ja kui te tahate teha seda
  • 2:35 - 2:39
    täpselt nii nagu mina, siis ma kasutan PyScripter'it
  • 2:39 - 2:42
    IDE - integreeritud arenduskeskkond -- see on tasuta,
  • 2:42 - 2:45
    avatud lähtekoodiga projekt PC jaoks. Aga on olemas ka palju muid mooduseid
  • 2:45 - 2:48
    Pythoni kirjutamiseks, seda saab teha ka igas
  • 2:48 - 2:52
    tekstitöötlejas. Igatahes, seni me oleme võtnud
  • 2:52 - 2:56
    sisendi kasutajalt ja selle salvestanud muutujasse
  • 2:56 - 2:58
    "number", ning Pythonis on lahe see, et me saame
  • 2:58 - 3:01
    lihtsalt jooksutada programmi nii nagu ta on ja vaadata, mis juhtub.
  • 3:01 - 3:03
    Teeme seda, ma salvestan ta ja
  • 3:03 - 3:08
    jooksutan seda, see väike Play nupp jooksutab teda IDE-s
  • 3:08 - 3:10
    ning, nagu arvatud, palub kasutajal sisestada
  • 3:10 - 3:13
    mittenegatiivne täisarv, millest ta faktoriaali leida tahab
  • 3:13 - 3:17
    las ma kirjutan sisse 10 ja vajutab OK, midagi ei juhtunud.
  • 3:17 - 3:20
    Muidugi midagi ei juhtunud, sest ma ei öelnud,
  • 3:20 - 3:24
    mida selle numbriga tegema peaks. Aga kui me trükime sisse "number" me näeme, et
  • 3:24 - 3:27
    talle on nüüd antud väärtus 10, muutuja viitab nüüd
  • 3:27 - 3:31
    arvule 10 ning me saame seda numbrit kasutada
  • 3:31 - 3:33
    ja leida tema faktoriaal. Ja ma teen seda --
  • 3:34 - 3:36
    me teeme seda iteratiivselt, me räägime
  • 3:36 - 3:40
    hiljem täpsemalt, mida see tähendab
  • 3:40 - 3:43
    ma defineerin veel ühe muutuja nimega product (tulemus),
  • 3:43 - 3:46
    ma annan talle väärtuseks 1 ja siis me
  • 3:46 - 3:50
    alustame ühest kuni misiganes numbrini "number" muutujas on
  • 3:50 - 3:53
    Ja korrutame product'i iga kord suurema
  • 3:53 - 3:57
    arvuga, alustame nüüd, ma sean siin üles
  • 3:57 - 3:59
    for tsükli, järgmises videos ma kavatsen
  • 3:59 - 4:03
    täpselt läbi jalutada sellest, mida üks for tsükkel teeb.
  • 4:03 - 4:06
    Aga meie, selle for tsükli sees, me
  • 4:06 - 4:09
    defineerime muutuja i, see on selline klassikaline muutuja
  • 4:09 - 4:12
    mida for tsüklites defineerida, ning see muutuja läheb
  • 4:12 - 4:15
    pidevalt suuremaks ja suuremaks, mida edasi me koodis läheme.
  • 4:15 - 4:21
    Ehk siis for in range -- ja for tsüklid Pythonis on veidi
  • 4:21 - 4:24
    teistsugused kui näiteks JavaScriptis või Javas
  • 4:24 - 4:26
    ja ma seletan seda hilisemas videos, aga range(number)
  • 4:26 - 4:29
    ja selleks, et mõista, mida range mingist arvust teeb,
  • 4:29 - 4:33
    see annab listi arvudest alustades nulliga
  • 4:33 - 4:37
    ja läheb kuni arvuni number - 1, seega siin
  • 4:37 - 4:40
    me juba defineerisime, mis number on. Number on 10,
  • 4:40 - 4:43
    seega trükkides sisse range(10) või, las ma teen range(number)
  • 4:43 - 4:46
    see annab mulle listi alustades nulliga kuni
  • 4:46 - 4:48
    arvuni üheksa, st ühe võrra vähem kümnest, see on sama
  • 4:48 - 4:52
    asi, mis range(10). Ja see for tsükkel
  • 4:52 - 4:57
    määrab i väärtuseks iga kord järgmise elemendi listis, see algab
  • 4:57 - 5:03
    ühega ja siis läheb kuni selleni, mis sa talle ütled
  • 5:03 - 5:06
    for tsüklis, i on võrdne ühega ja siis määrab ta i väärtuseks
  • 5:06 - 5:11
    ühe, ei, vabandust, see alustab i = 0 ja siis läheb
  • 5:11 - 5:13
    edasi i = 1, siis i = 2, siis i = 3 ja nii edasi ja nii edasi
  • 5:13 - 5:16
    seni, kuni ta on listist
  • 5:16 - 5:26
    läbi käinud. Mida me siin for tsüklis teha saame, on defineerida
  • 5:26 - 5:33
    product'i väärtuseks product,
  • 5:33 - 5:37
    s. o. eelmine product, meie uus product on meie
  • 5:37 - 5:39
    eelmine product korrutatud, ja ma korrutan seda
  • 5:39 - 5:45
    i+1'ga, korda i pluss üks. Ja me sammume siit hoolikalt läbi
  • 5:45 - 5:48
    järgmises videos, aga ma tahan, et te juba mõtleksite sellest,
  • 5:48 - 5:49
    mida see teeb. Ehk siis kui me alustame,
  • 5:49 - 5:55
    ütleme, et number on lõpuks 3, siis product
  • 5:55 - 5:57
    saab väärtuse 1 ja me ütleme for i in range, ja kui me teeme range(3),
  • 5:57 - 6:05
    siis esimene i on 0 ja me võtame oma
  • 6:05 - 6:10
    vana product'i ehk siis 1 korda i+1, noh, i on 0,
  • 6:10 - 6:14
    seega 0 + 1 on 1, seega see on 1 korda 1
  • 6:14 - 6:16
    see on 1, ja siis me määrame
  • 6:16 - 6:20
    i väärtuseks ühe, see on see, mida for tsükkel teeb,
  • 6:20 - 6:23
    ta suurendab pidevalt väärtust (noh, ta ei pea alati
  • 6:23 - 6:25
    suurendama) ja see jätkab i väärtuse muutmist
  • 6:25 - 6:28
    listist läbi minnes, järgmisel läbimisel
  • 6:28 - 6:32
    meie product on 1 aga i on nüüd 1, 1+1 on 2
  • 6:32 - 6:36
    2 korda 1 on nüüd 2 ja siis see määrab
  • 6:36 - 6:40
    i väärtuseks 2, seega see on 2+1 korda product'i
  • 6:40 - 6:43
    väärtus eelmisest tsükli jooksmisest, mis on 2 -- seega see on
  • 6:43 - 6:48
    2 korda 3, mis on 6. Ja kui me oleme lõpetanud
  • 6:48 - 6:52
    selle for tsükliga, siis product'i sees, või võiks öelda
  • 6:52 - 6:56
    product viitab tegelikule faktoriaalile
  • 6:56 - 7:01
    sisestatud arvust, me võime öelda print product
  • 7:01 - 7:06
    Ja Pythonis teab interpretaator
  • 7:06 - 7:08
    millal for tsüklist välja murda, kui tal saavad otsa arvud,
  • 7:08 - 7:12
    mida i-le väärtuseks anda. Seetõttu ei jookse ta igavesti.
  • 7:12 - 7:18
    Proovime nüüd, kas meie kood tegelikult töötab, vaatame,
  • 7:18 - 7:23
    kas see tegelikult ka tööle läheb. (Ma kirjutan ta tegelikult nii)
  • 7:23 - 7:27
    Vaatame nüüd, kas ta töötab. Ma salvestan selle ja siis
  • 7:27 - 7:32
    jooksutan seda, ja see palub mul sisestada mittenegatiivne
  • 7:32 - 7:36
    täisarv, millest faktoriaal võtta, proovime seda kolmega.
  • 7:36 - 7:39
    See andis mulle õige vastuse, proovime seda uuesti.
  • 7:39 - 7:44
    Sisesta mittenegatiivne täisarv, mille faktoriaali leida.
  • 7:44 - 7:48
    Ma ei tea, proovime midagi suurt, 10, see töötas!
  • 7:48 - 7:51
    (Oletades, et sa saad seda ise kinnitada)
  • 7:51 - 7:53
    Mida me siin tegime, me kirjutasime väga lihtsa programmi, aga
  • 7:53 - 7:55
    see juba teeb midagi lahedat, see leiab suvalise
  • 7:55 - 7:57
    arvu faktoriaali. Ja järgmises videos me
  • 7:57 - 8:00
    läheme koodist palju hoolikamalt läbi, juhul kui
  • 8:00 - 8:03
    see for tsükkel teile segadust valmistas.
  • 8:03 - 8:05
    Pidage vastu järgmise videoni ja vaadake siis seda,
  • Not Synced
    see seletab veidi hoolikamalt.
Title:
TITLE: Lihtsa faktoriaaliprogrammi kirjutamine. (Python 2)
Description:

Writing a simple factorial program with a "for" loop

more » « less
Video Language:
English
Duration:
08:09
Mike Ridgway edited Estonian subtitles for Writing a Simple Factorial Program. (Python 2)
Karl Puusepp added a translation

Estonian subtitles

Revisions Compare revisions