Informatika1-2015/Gyakorlat10megoldasok
A MathWikiből
Változók használata
- Legyen Y a születési éved, M a születési hónapod, és D a születésed napja, ezekhez vedd fel a három változót.
Y = 1998 M = 3 D = 31
- Hányszor van meg D Y-ban? Legyen az érték a b változóhoz rendelve.
b = Y // D
- Legyen r a születési évednek a hónappal vett maradéka.
r = Y % M
- Mennyi most b és r különbsége?
b - r
Beépített Sage függvények, metódusok
- Prímszám-e 2011? (használd az is_prime() függvényt)
is_prime(2011)
- Prímedik napján születtél-e a hónapnak? (használd a D változót!)
is_prime(D)
- Oldd meg a D*x^2 + M*x - b*r = 0 egyenletet a solve(fv, változó) függvény segítségével! (Ne felejtsd el bevezetni az x-et szimbolikus változóként!)
x = var('x') solve(D*x^2 + M*x - b*r == 0, x)
- Numerikusan is oldd meg az egyenletet! Használd a find_root(fv == 0, min, max) függvényt.
x = var('x') find_root(D*x^2 + M*x - b*r == 0, -10, 10)
- Oldd meg a fenti egyenletet szimbolikusan is (fejezd ki x-et b, D, M és r-rel)!
x = var('x') b = var('b') D = var('D') M = var('M') r = var('r') solve(D*x^2 + M*x - b*r == 0, x)
- Deriváld le az sin(x)cos(x)x^2 függvényt.
diff(sin(x)*cos(x)*x^2, x)
vagy
fv = sin(x)*cos(x)*x^2 fv.diff(x)
- Integráld le az elõzõ függvényt.
integrate(sin(x)*cos(x)*x^2, x)
vagy
fv = sin(x)*cos(x)*x^2 fv.integrate(x)
- Számold ki a határértékét az (1 + 3/n)^4n függvénynek, ha n->oo
n = var('n') limit((1 + 3/n)^(4*n), n=oo)
- Legyen f a következő függvény: f = (x+2*y)^3
x = var('x') y = var('y') f = (x+2*y)^3
- Helyettesíts be x helyére 3-at; utána x helyére 4-et és y helyére 2-t. Mennyi az eredmény? ( használd f-nek a subs() függvényét)
f.subs(x = 3) f.subs(x = 4, y = 2)
- Bontsd összeggé f-et! (expand())
f.expand()
- Az elõbb tanultakat használva, számold ki az 4. tagig a sin(x)cos(x)x^2 függvény Taylor-sorát (deriválni / integrálni, ha f egy függvény úgy is lehet, hogy f.diff(x))
f = sin(x) * cos(x) * x^2 f.diff(x, 0).subs(x=0) / factorial(0) * x^0 + f.diff(x, 1).subs(x=0) / factorial(1) * x^1 + f.diff(x, 2).subs(x=0) / factorial(2) * x^2 + f.diff(x, 3).subs(x=0) / factorial(3) * x^3
Rajzolás a Sage segítségével (plot)
- Rajzolj egy cosinus-görbét 0-tól 4*pi -ig!
plot(cos(x), 0, 4*pi)
- Rajzold ki az (x-2)^2 + 3 másodfokú polinomot -2-től 4-ig, zöld színnel!
plot((x-2)^2 + 3, -2, 4, color="green")
- Rajzold az előző mellé (a show függvénnyel) az x^3-3*x + 6 harmadfokú polinomot pirossal!
p1 = plot((x-2)^2 + 3, -2, 4, color="green") p2 = plot(x^3-3*x + 6, -2, 4, color="red") show(p1 + p2)
- Rajzoljunk kört: circle((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!).
circle((1, 5), 2, color="purple", aspect_ratio=True)