Forum » Programiranje » [Python] Pomoč pri vaji
[Python] Pomoč pri vaji
RedDragon ::
1.Sestavi funkcijo, ki izračuna in vrne največji skupni delitelj danih dveh celih števil. Uporabi Evklidov postopek. Funkcija naj izpisuje vse vmesne izračune.
>>> evklid(324, 60)
324 = 5 * 60 + 24
60 = 2 * 24 + 12
24 = 2 * 12 + 0
12
2.Collatzovo zaporedje je definirano takole: prvi člen je poljubno pozitivno število, vsak naslednji člen pa dobimo iz prejšnjega tako, da ga razpolovimo, če je sodo, oz. ga pomnožimo s 3 in prištejemo 1, če je liho. Sestavi funkcijo, ki izpiše vse člene tega zaporedja, dokler ne dobimo 1. Izpisane člene naj tudi prešteje ter dobljeno število vrne kot rezultat funkcije.
>>> collatz(3)
3
10
5
16
8
4
2
1
8
>>> collatz(30)
30
15
46
23
70
35
106
53
160
80
40
20
10
5
16
8
4
2
1
19
3.Sestavi funkcijo, ki obrne in vrne dano celo število. Obrat števila naj bo enakega predznaka kot prvotno število.
>>> obrni(123456789)
987654321
>>> obrni(-123456789)
-987654321
4.Sestavi funkcijo, ki preveri, ali je dano število palindrom. Število je palindrom, če je enako svojemu obratu. Pomagaj si s funkcijo iz prejšnje naloge.
>>> palindrom(12345)
False
>>> palindrom(123321)
True
>>> palindrom(123454321)
True
5.Sestavi funkcijo, ki dano naravno število pretvori v zapis pri drugi osnovi. Predpostaviš lahko, da je druga osnova med 2 in 10.
>>> osnova(50, 4)
302
>>> osnova(500, 7)
1313
>>> osnova(2009, 5)
31014
6.Bakteriolog Bine preučuje bakterije. Naredil je sledeči poizkus: bakterije je zaprl v škatlico pravokotne oblike s pregrado na sredini, ki razdeli škatlico na dva kvadratna dela - poimenujmo ju regija A in regija B. Zunanje stene te škatlice so polprepustne, kar pomeni, da bacili lahko uidejo ven, vendar se ne morejo vrniti v škatlico, pregrada pa je prepustna, tj. bacili lahko prehajajo v obe smeri. Bine predvideva, da v neki časovni enoti 12 % vseh bacilov ostane v svoji regiji, po 22 % pa jih zapusti svojo regijo v vsaki od štirih smeri. Binetu sestavi funkcijo, ki mu bo glede na podani začetni masi bacilov (bacili so premajhni, da bi jih šteli posamično, zato jih "štejemo" kar v gramih) v vsaki od regij izpisala potek dogajanja, dokler skupna masa bacilov v obeh regijah ne pade pod 0.001 grama. Tako bo lahko Bine primerjal teoretični izračun z izmerjenimi podatki in preveril svojo hipotezo.
>>> bakterije(22.4, 13.5)
0 , 22.4 , 13.5
1 , 5.658 , 6.548
2 , 2.11952 , 2.03052
3 , 0.7010568 , 0.7099568
4 , 0.240317312 , 0.239427312
5 , 0.08151208608 , 0.08160108608
6 , 0.0277336892672 , 0.0277247892672
7 , 0.00942749635085 , 0.00942838635085
8 , 0.00320554455929 , 0.00320545555929
9 , 0.00108986557016 , 0.00108987447016
>>> evklid(324, 60)
324 = 5 * 60 + 24
60 = 2 * 24 + 12
24 = 2 * 12 + 0
12
2.Collatzovo zaporedje je definirano takole: prvi člen je poljubno pozitivno število, vsak naslednji člen pa dobimo iz prejšnjega tako, da ga razpolovimo, če je sodo, oz. ga pomnožimo s 3 in prištejemo 1, če je liho. Sestavi funkcijo, ki izpiše vse člene tega zaporedja, dokler ne dobimo 1. Izpisane člene naj tudi prešteje ter dobljeno število vrne kot rezultat funkcije.
>>> collatz(3)
3
10
5
16
8
4
2
1
8
>>> collatz(30)
30
15
46
23
70
35
106
53
160
80
40
20
10
5
16
8
4
2
1
19
3.Sestavi funkcijo, ki obrne in vrne dano celo število. Obrat števila naj bo enakega predznaka kot prvotno število.
>>> obrni(123456789)
987654321
>>> obrni(-123456789)
-987654321
4.Sestavi funkcijo, ki preveri, ali je dano število palindrom. Število je palindrom, če je enako svojemu obratu. Pomagaj si s funkcijo iz prejšnje naloge.
>>> palindrom(12345)
False
>>> palindrom(123321)
True
>>> palindrom(123454321)
True
5.Sestavi funkcijo, ki dano naravno število pretvori v zapis pri drugi osnovi. Predpostaviš lahko, da je druga osnova med 2 in 10.
>>> osnova(50, 4)
302
>>> osnova(500, 7)
1313
>>> osnova(2009, 5)
31014
6.Bakteriolog Bine preučuje bakterije. Naredil je sledeči poizkus: bakterije je zaprl v škatlico pravokotne oblike s pregrado na sredini, ki razdeli škatlico na dva kvadratna dela - poimenujmo ju regija A in regija B. Zunanje stene te škatlice so polprepustne, kar pomeni, da bacili lahko uidejo ven, vendar se ne morejo vrniti v škatlico, pregrada pa je prepustna, tj. bacili lahko prehajajo v obe smeri. Bine predvideva, da v neki časovni enoti 12 % vseh bacilov ostane v svoji regiji, po 22 % pa jih zapusti svojo regijo v vsaki od štirih smeri. Binetu sestavi funkcijo, ki mu bo glede na podani začetni masi bacilov (bacili so premajhni, da bi jih šteli posamično, zato jih "štejemo" kar v gramih) v vsaki od regij izpisala potek dogajanja, dokler skupna masa bacilov v obeh regijah ne pade pod 0.001 grama. Tako bo lahko Bine primerjal teoretični izračun z izmerjenimi podatki in preveril svojo hipotezo.
>>> bakterije(22.4, 13.5)
0 , 22.4 , 13.5
1 , 5.658 , 6.548
2 , 2.11952 , 2.03052
3 , 0.7010568 , 0.7099568
4 , 0.240317312 , 0.239427312
5 , 0.08151208608 , 0.08160108608
6 , 0.0277336892672 , 0.0277247892672
7 , 0.00942749635085 , 0.00942838635085
8 , 0.00320554455929 , 0.00320545555929
9 , 0.00108986557016 , 0.00108987447016
- spremenil: RedDragon ()
Gandalfar ::
Domacih nalog ne resujemo, lahko pa objavis kodo, ki jo imas do sedaj in kje se ti zatakne in ti bo kdo pomagal :)
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Python - pomoč!Oddelek: Programiranje | 1193 (1029) | lknix |
» | Pomoč pri programiranju z javoOddelek: Programiranje | 3526 (2453) | milc |
» | Matematična naloga v PythonuOddelek: Šola | 772 (526) | Adam7 |
» | Python] zelo nujnoOddelek: Programiranje | 835 (619) | ERGY |
» | programska ugankaOddelek: Programiranje | 1743 (1276) | StratOS |