Borbély Gábor

1. Feladat

Számítsuk ki az alábbi kifejezéseket.

a)

(((((((sin^3)(π/3)-(cos^3)(π/3)))^2)-((((sin^3)(π/3)+(cos^3)(π/3)))^2)))^2)

Megoldás

(((((((((Sin[Pi/3]))^3)-(((Cos[Pi/3]))^3)))^2)-((((((Sin[Pi/3]))^3)+(((Cos[Pi/3]))^3)))^2)))^2)

b)

TreeForm[Power[Divide[(E^(-1))-E,(E^(-1))+E], 2]]

Megoldás

Power[Divide[(E^(-1))-E,(E^(-1))+E], 2]

((((((E^(-1))-E)/((E^(-1))+E))))^2)

c)

(((x+y))^5) de úgy, hogy bontsuk ki a kifejezést.

Megoldás

Expand[(((x+y))^5)]

2. Feladat

Az alábbi parancsok rosszul vannak zárójelezve. Zárójelek beszúrásával javítsuk ki úgy, hogy értelmes legyen.

a)

x+y)^(2+1/3

Megoldás

b)

( 2+{ 3^2 ,3 [[ 1

Megoldás

(2+{ 3^2 ,3} [[1]])

3. Feladat

a)

Írjunk olyan függvényt, aminek egy változója van és megadja annak típusát.

Megoldás

Tipus[x_]:=Head[x]

Tipus[3]
Tipus["három"]

b)

Írjunk olyan függvényt, aminek egy változója és arról eldönti, hogy egész szám-e.

Megoldás

EgeszE[x_]:=Head[x]===Integer

EgeszE[3]
EgeszE["három"]

4. Feladat

Egyetlen cellába írjunk olyan parancsokat, melyeknek hatására:
1. az x változónak (numerikus) értéket adunk
2. kiszámítjuk a négyzetét
3. kitöröljük az x értékét
4. képezzük az (x^2) szimbolikus kifejezést

Megoldás

x=3
(x^2)
ClearAll[x]
(x^2)

5. Feladat

Rakjuk sorba az alábbi kifejezéseket úgy, hogy egy adott sorban lévő kifejezés ne használjon
definiálatlan változókat.

g[n_]:=If[x<1,3,x]
f[n_]:=x^n
Table[f[y],{y,Range[g[n]]}]
x=3.14
n=3

Megoldás

x=3.14
n=3
g[n_]:=If[x<1,3,x]
f[n_]:=x^n
Table[f[y],{y,Range[g[n]]}]

6. Feladat

Ábrázoljuk egy ábrán a sin(x) és cos(x) függvényeket a [−2π, 2π] intervallumon és az arcsin(x) függvényt a [−1, 1] intervallumon. A sin(x) legyen kék, a cos(x) legyen narancssárga, a harmadik legyen zöld.

Megoldás

Show[Plot[{Sin[x], Cos[x]}, {x,-2Pi, 2Pi},PlotStyle->{Blue, Orange}] , Plot[ArcSin[x],{x,-Pi/2, Pi/2}, PlotStyle->Green]]

7. Feladat

Készítsünk olyan ábrát, ahol az ú.n. Collatz függvény első 100 értéke van ábrázolva piros pontokkal és a grafikon két egyenese között kék kitöltés van.

f(x)=({{{, ({{x/2, ha x páros}, {3x+1, ha páratlan}})}})

Megoldás

f[i_]:=If[OddQ[i],3i+1,i/2]
Show[ListPlot[Table[f[i],{i,1,100}],PlotStyle->Red], Plot[{x/2,3x+1}, {x,1,100}, Filling->{1->{2}}, PlotStyle->None]]

8. Feladat

a)

Írjunk olyan függvényt, aminek két változója van, az első egy lista. A függvény adja meg, hogy az első listában hányszor szerepelt a második változó

Megoldás

Hanyszor[l_,x_]:=Count[l, x]

Hanyszor[{1,2,3,3,3,2,1},2]

b)

Írjunk olyan függvényt, aminek egy változója van, ami egy lista. A függvény keresse meg, hogy melyik elem szerepelt a legtöbbször a listában.

Megoldás

Legtobbszor[l_]:=Position[Counts[l],Max[Values[Counts[l]]]][[1,1]]

Legtobbszor[{1,2,3,3,3,2,1}]

Legtobbszor[{1,2,3,3,3,2,a, a, 1, a,  b, a}]

Le lehet szedni a Key-t így:

Legtobbszor2[l_]:=(List@@Position[Counts[l],Max[Values[Counts[l]]]][[1,1]])[[1]]

Legtobbszor2[{1,2,3,3,3,2,1}]
Legtobbszor2[{1,2,3,3,3,2,a, a, 1, a,  b, a}]

9. Feladat

Írjunk olyan függvényt, aminek egy változója van, egy nem-negatív egész szám. A függvény adjon meg egy olyan listát, aminek mélysége pontosan ez a szám.

Megoldás 1

Melyseg[n_]:=Nest[{1,#}&,1,n]

Melyseg[0]
Melyseg[1]
Melyseg[2]
Melyseg[3]

Megoldás 2

Melyseg2[n_]:=If[n==0,1,{1,Melyseg2[n-1]}]

Melyseg2[0]
Melyseg2[1]
Melyseg2[2]
Melyseg2[3]

10. Feladat

A következő linken megtalálható Donald Trump 2017 február 28-ai beszéde: http://sandbox.hlt.bme.hu/~gaebor/ea_anyag/InfoMC/trump.txt
Töltsük le azt a fájlt és keressük meg benne azt, hogy melyik a legtöbbször elhangzott jelző (Adjective) és hogy ez a jelző mely szavak előtt szerepelt.

Megoldás

ReplaceTextElement[x_]:=x//.{TextElement[a_, b_]->{b,a}, TextElement[a_]->a, Association[Rule["GrammaticalUnit",Entity["GrammaticalUnit",b_]]]->b}

text=Import[NotebookDirectory[]<>"trump.txt", "Text"];

analyzed=ReplaceTextElement[TextStructure[text,"PartsOfSpeech"]];

analyzed2=Join @@(#[[2]]&/@analyzed)

JelzoE[x_]:=x[[1]]=="Adjective"

SortBy[Counts[Select[analyzed2,JelzoE]], Value]

"American" a leggyakoribb jelző.
Ez hol szerepel?

AmericanPos=Position[analyzed2, {"Adjective", "American"}]

Mely szavak követik?

Table[analyzed2[[i[[1]]+1,2]], {i,AmericanPos}]