Informatika1-2012/Gyakorlat2
A MathWikiből
(Változatok közti eltérés)
(egy szerkesztő 6 közbeeső változata nincs mutatva) | |||
12. sor: | 12. sor: | ||
* saját függvények a def kulcsszóval | * saját függvények a def kulcsszóval | ||
* plot | * plot | ||
+ | * listák: lis = [5, 6.0, 8] | ||
+ | * lista indexelés: lis[1], ez a 6.0 | ||
+ | |||
+ | * [[Informatika1-2012/Eloadas1|1. előadás]] | ||
+ | * [[Informatika1-2012/Eloadas2|2. előadás]] | ||
48. sor: | 53. sor: | ||
− | * Oldd meg a | + | * Oldd meg a ''sin''(''x'') + ''log''(''x'') - ''pi'' = 0 egyenletet a ''solve()''-al, miután ez nem sikerült, oldd meg a ''find_root()''-al (0 és 100 között van egy megoldás)! |
* Legyen az ''f'' függvény a (2''x'' + 5''y'')^3 ! (Ne felejtsd el felvenni y-t is mint szimbolikus változót.) | * Legyen az ''f'' függvény a (2''x'' + 5''y'')^3 ! (Ne felejtsd el felvenni y-t is mint szimbolikus változót.) | ||
* Helyettesíts f-be a ''subs()'' függvénnyel, x = 316, y = 276-ot! | * Helyettesíts f-be a ''subs()'' függvénnyel, x = 316, y = 276-ot! | ||
71. sor: | 76. sor: | ||
* Rajzoljunk kört: cirlce((középpont koordinátái), sugár, egyebek). Az "egyebek" lehetnek: szín, aspect_ratio=True hogy az x és y tengelyek skálázása azonos legyen (különben ellipszist kaphatunk!). | * Rajzoljunk kört: cirlce((középpont koordinátái), sugár, egyebek). Az "egyebek" lehetnek: szín, aspect_ratio=True hogy az x és y tengelyek skálázása azonos legyen (különben ellipszist kaphatunk!). | ||
* Rajzold a másodfokú polinomot és a kört egymás mellé a show függvénnyel. | * Rajzold a másodfokú polinomot és a kört egymás mellé a show függvénnyel. | ||
+ | |||
+ | |||
+ | <!-- | ||
=== Lista és tuple alapok === | === Lista és tuple alapok === | ||
89. sor: | 97. sor: | ||
# Készíts tuple-t ''T'' néven az ''A'' listából, majd írd ki az utolsó elemét! | # Készíts tuple-t ''T'' néven az ''A'' listából, majd írd ki az utolsó elemét! | ||
# Változtasd meg a ''T'' első elemét! | # Változtasd meg a ''T'' első elemét! | ||
+ | |||
+ | === Vezérlési szerkezetek (if, for, while) === | ||
+ | * Egészítsd ki a következõ sage függvényt, hogy ha prím számot kap akkor azt a stringet adja vissza hogy "prim", ha nem, akkor a faktorizáltját adja vissza. | ||
+ | def faktor_v_prim(a): | ||
+ | if <!>(a): | ||
+ | return "prim" | ||
+ | else: | ||
+ | return <!> | ||
+ | |||
+ | |||
+ | * Definiálj egy Sage függvényt ''elojel'' néven, amelynek egy bemenete van (''a''), és a "pozitiv" karakterláncot (vagyis stringet) írja ki ha a kapott paraméter pozitív, "negativ"-at ad vissza ha a szám negatív, és "nulla"-ta ad ha nulla volt a paraméter értéke. | ||
+ | * Írj egy Sage függvényt ''primek_szama'' néven, amely bemenetként kap egy számot (''n'') és visszaadja az n-nél kisebb prímek darabszámát! | ||
+ | * Írj egy függvényt ''elso_primek'' néven, amely bemenetként kap egy számot (''n'') és kiírja az első ''n'' prímszámot! | ||
+ | --> |
A lap jelenlegi, 2012. szeptember 19., 12:22-kori változata
Tartalomjegyzék |
Ismétlés az elõadásról
- matematikai mûveletek: (5 + 6 ** 3) / 6.0 + (26 % 11)
- változók definiálása: a = 5 + 6
- szimbólumok deklarálása: (a,b)=var(’a,b’)
- függvények: expand((a+b)**2), 132.factor(), solve, find_root
- relációk:
- 5 < 7 (True)
- 7 == 4 (False)
- stb.
- matematikai függvények: sqrt, cos, sin, tan, is_prime, stb.
- saját függvények a def kulcsszóval
- plot
- listák: lis = [5, 6.0, 8]
- lista indexelés: lis[1], ez a 6.0
Sage - mint számológép
- Számold ki 2012 3. hatványát!
- Számold ki pi és e hányadosát!
- Egészítsd ki a következõket, hogy a # utáni értéket kapd!
- A kiegészítendõ részek <!> (relációjelek közti felkiáltójellel) vannak jelölve.
5 <!> 8 # 13 27 <!> 3 # 9 29 <!> 3 # 9 29 <!> 3 # 29 / 3 29 <!> 3 # 2
Változók
- Mentsd az y változóba a születési éved m-be a születési hónapod, d-be a születésed napját.
- Mentsd a b változóba az y és d összegét
Szimbólumok és beépített függvények, metódusok
- Az is_prime() függvénnyel határozd meg, hogy a 2011 * 2012 - 1 prím-e!
- Egészítsd ki a kódot, hogy mûködjön!
a = <!> <!> = a b.factor()
- Határozd meg 2011 * 2012 + 1 gyökét az sqrt() függvénnyel!
- Egészítsd ki a kódot, hogy mûködjön!
<!> = var('x') <!>(2 * x ** 2 - 9 * x - 56 == 0, <!>)
- Oldd meg a sin(x) + log(x) - pi = 0 egyenletet a solve()-al, miután ez nem sikerült, oldd meg a find_root()-al (0 és 100 között van egy megoldás)!
- Legyen az f függvény a (2x + 5y)^3 ! (Ne felejtsd el felvenni y-t is mint szimbolikus változót.)
- Helyettesíts f-be a subs() függvénnyel, x = 316, y = 276-ot!
- Egészítsd ki a kódot, hogy összegre bontsa a kifejezést!
(a, b) = <!> ((2 * a - b) ** 3).<!>
Új függvények definiálása
- Egészítsd ki a kódot, hogy olyan sage függvényt kapj, amely két változót kap bemenetként, és True-t ad vissza ha az első osztható a másodikkal, egyébként False-t ad.
def oszthato(a, b): return <!>
- Definiálj egy olyan primnap nevű függvényt , amely két változót kap bemenetként (legyenek ezek m és d, mint hónap és nap), és eldönti hogy az m és d által meghatározott nap prímszámadik napja-e az évnek. Az egyszerűség kedvéért tegyük fel hogy minden hónap 30 napos!
- A fenti függvényt meghívva nézd meg hogy prímszámadik napján születtél-e az évnek!
Rajzolás a Sage-el
- Egészítsd ki a kódot, hogy cosinus görbét rajzoljon ki 0-tól 4*pi-ig.
plot(<!>, (0, <!>))
- Rajzold ki az (x-2)^2 + 3 másodfokú polinomot -2-től 4-ig, zöld színnel!
- Rajzoljunk kört: cirlce((középpont koordinátái), sugár, egyebek). Az "egyebek" lehetnek: szín, aspect_ratio=True hogy az x és y tengelyek skálázása azonos legyen (különben ellipszist kaphatunk!).
- Rajzold a másodfokú polinomot és a kört egymás mellé a show függvénnyel.