# Egyetemi alapok

/*
Itt vannak a jelek, amiket tudsz másolni, ha nem találod a gépeden, hogy hol lehet beírni:
Műveleti jelek: 
Összeadás: +
Kivonás: - 
Szorzás: *
Osztás: /
Hatványozás: ^
Relációjelek: < >
Zárójel: ()
Vessző: ,
Pont: .
Pontos vessző: ; 
Kettőspont: :
Dollárjel: $
Gyökvonás: sqrt()
n-edik gyök: x^(1/n)
log() függvény ln() függvényt jelent, log_2-t csak azonosság segítségével lehet felírni
Szürke betűszínnel szerepelnek a megjegyzések, csak azt kell kitölteni, ahova oda van írva, több sorhoz nem kell hozzányúlni
Ha beírtad 3-féleképpen tudod futtatni:
1) felül vannak zöld nyilak, a jobbra mutató nyílra kattints rá, és lefuttatja, fontos, hogy bele legyél kattintva a tömbbe
2) Shift+Enter-rel is le tudod futtatni, itt is fontos, hogy bele legyél kattintva a tömbbe
3) Ha van a billentyűzeteted jobb szélén enter, akkor annak a megnyomásával is tudod futtatni, 
itt is bele kell, hogy legyél kattintva a tömbbe
Sorok végén vagy pontosvessző vagy dollárjel van, pontosvesszőnél kiírja annak a sornak az eredményét, dollárjelnél elrejti
Állandók beírása: 
pi: %pi
e: %e
i: %i  (komplex szám képzetes egység)
*/

## Összetett függvény

kill(all)$
ratprint: false$
fpprintprec: 5$
f(x):=2*x^3+314$ /*Ezt töltsd ki*/
g(x):=2*x$ /*Ezt töltsd ki*/
x0:7$ /*Ezt töltsd ki (opcionális)*/
f(g(x)); 
g(f(x)); 
float(f(g(x0))); 
float(g(f(x0))); 

## Inverz függvény

kill(all)$
ratprint: false$
fpprintprec: 5$
függvény:y=x^2+5*x;  /*Ezt töltsd ki*/
inverzfüggvény:solve(függvény,x);  

## Vektorok által bezárt szög

kill(all)$
ratprint: false$
fpprintprec: 6$
a1:1$ /*Ezt töltsd ki*/
a2:4$ /*Ezt töltsd ki*/
a3:-3$ /*Ezt töltsd ki*/
b1:6$ /*Ezt töltsd ki*/
b2:-4$ /*Ezt töltsd ki*/
b3:0$ /*Ezt töltsd ki*/
"a vektor:";
a:matrix([a1],[a2],[a3]);
"b vektor:";
b:matrix([b1],[b2],[b3]);
"|a|:";
anagyság:sqrt(a1^2+a2^2+a3^2);
"|b|:";
bnagyság:sqrt(b1^2+b2^2+b3^2);
"a*b:";
skalárisszorzat:a1*b1+a2*b2+a3*b3;
"Képlet:";
Képlet:"a*b"="|a|*|b|*cosα"; /*a*b a skaláris szorzat*/
"Behelyettesítve:";
egyenlet:skalárisszorzat=anagyság*bnagyság*cos(α);
megoldás:acos(skalárisszorzat/(anagyság*bnagyság))$
"Megoldás radiánban:";
Radiánban:float(megoldás);
"Megoldás fokban:";
Fokban:float(Radiánban*(180/%pi));

## Térbeli háromszögek

kill(all)$
ratprint: false$
fpprintprec: 8$
A1:1$ /*Ezt töltsd ki*/
A2:-2$ /*Ezt töltsd ki*/
A3:-6$ /*Ezt töltsd ki*/
B1:-1$ /*Ezt töltsd ki*/
B2:2$ /*Ezt töltsd ki*/
B3:3$ /*Ezt töltsd ki*/
C1:0$ /*Ezt töltsd ki*/
C2:-1$ /*Ezt töltsd ki*/
C3:2$ /*Ezt töltsd ki*/
"Csúcspontok:";
A:matrix([A1],[A2],[A3]);
B:matrix([B1],[B2],[B3]);
C:matrix([C1],[C2],[C3]);
"Vektorok:";
ABvektor:matrix([B1-A1],[B2-A2],[B3-A3]);
ACvektor:matrix([C1-A1],[C2-A2],[C3-A3]);
BCvektor:matrix([C1-B1],[C2-B2],[C3-B3]);
"Nagyságok:";
ABnagyság:sqrt((B1-A1)^2+(B2-A2)^2+(B3-A3)^2);
ACnagyság:sqrt((C1-A1)^2+(C2-A2)^2+(C3-A3)^2);
BCnagyság:sqrt((C1-B1)^2+(C2-B2)^2+(C3-B3)^2);
"Szögek:"; /* α az A csúcsnál lévő szög, β a B csúcsnál lévő szög, γ a C csúcsnál lévő szög*/
"Radiánban:";
αradián:float(acos((BCnagyság^2-ABnagyság^2-ACnagyság^2)/(-2*ABnagyság*ACnagyság)));
βradián:float(acos((ACnagyság^2-ABnagyság^2-BCnagyság^2)/(-2*ABnagyság*BCnagyság)));
γradián:float(acos((ABnagyság^2-ACnagyság^2-BCnagyság^2)/(-2*ACnagyság*BCnagyság)));
"Fokban:";
αfok:float(αradián*(180/%pi));
βfok:float(βradián*(180/%pi));
γfok:float(γradián*(180/%pi));
"Ellenőrzés:";
αfok+βfok+γfok;
if (αfok+βfok+γfok<180.00000001) and (αfok+βfok+γfok>179.99999999) then "Jó az eredmény" else "Rossz az eredmény";
"Kerület:";
Kerület:float(ABnagyság+ACnagyság+BCnagyság);
"Terület:";
Terület:float((ABnagyság*ACnagyság*sin(αradián))/2);
"Súlypont:";
Súlypont:matrix([(A1+B1+C1)/3],[(A2+B2+C2)/3],[(A3+B3+C3)/3]);

## Keresztszorzás

kill(all)$
ratprint: false$
fpprintprec: 5$
a1:1$ /*Ezt töltsd ki*/
a2:2$ /*Ezt töltsd ki*/
a3:3$ /*Ezt töltsd ki*/
b1:4$ /*Ezt töltsd ki*/
b2:5$ /*Ezt töltsd ki*/
b3:6$ /*Ezt töltsd ki*/
"Vektorok:";
a:matrix([a1],[a2],[a3]);
b:matrix([b1],[b2],[b3]);
"Keresztszorzat:";
axb:matrix([a2*b3-a3*b2],[a3*b1-a1*b3],[a1*b2-a2*b1]);

## Polinomosztás

kill(all)$
ratprint: false$
fpprintprec: 5$
polinom1:2*x^3-3*x^2+-89*x-120;  /*Ezt töltsd ki*/
polinom2:x-8;  /*Ezt töltsd ki*/
polinomosztás:divide(polinom1, polinom2); /* A vessző előtti rész lesz a végeredmény a vessző utáni kifejezés a maradék.*/

## Szorzattá alakítás

kill(all)$
ratprint: false$
fpprintprec: 5$
kifejezés:2*x^3-3*x^2-89*x-120$ /*Ezt töltsd ki*/
szorzatalak:factor(kifejezés);  

## Felbontás

kill(all)$
ratprint: false$
fpprintprec: 5$
kifejezés:(x+5)*(x-8)*(2*x+3)$ /*Ezt töltsd ki*/
felbontott:expand(kifejezés);  

## Egy ismeretlenes egyenlet

kill(all)$
ratprint: false$
fpprintprec: 5$
egyenlet: 5*x^2+3*x-2=0$ /*Ezt töltsd ki*/ 
megoldás:solve(egyenlet,x);
megoldásszámérték:float(megoldás);

## Több ismeretlenes lineáris egyenletrendszer

kill(all)$
ratprint: false$
fpprintprec: 5$
e1: 2*x+3*y=4+z$ /*Ezt töltsd ki*/ 
e2: 5*x-2*z+4=6*y$ /*Ezt töltsd ki*/ 
e3: -2*x+3*z-5*y=5$ /*Ezt töltsd ki*/ 
/* 
Mindegy, hogy az ismeretlenek egy oldalon vannak, vagy nem.
Ha több egyenleted van akkor a mintának megfelelően egészítsd ki az egyenletrendszert e4,e5,e6 .... 
Használhatsz más változókat is pl a,b,c...
linsolve([e1, e2, e3], [x,y,z]); ha több egyenleted van akkor itt vesszővel elválasztva írhatod be az első []-be e4,e5, e6...-ot,
 a második []-be pedig az ismereretleneket amiket szeretnél meghatározni.
*/
megoldás:linsolve([e1, e2, e3], [x,y,z]);
megoldásérték: float(megoldás);

## Több ismeretlenes algebrai egyenletrendszer

kill(all)$
ratprint: false$
fpprintprec: 5$
realonly:true$
e1: 2*x-2*y=0$ /*Ezt töltsd ki*/ 
e2: x^2-6*y+8=0$ /*Ezt töltsd ki*/ 
algsys([e1, e2], [x,y]);