Első zárthelyi
1. feldat: Adott egy olyan mérés, ahol az eredményeknek a [0, 10] intervallumba kell esniük; ami nem ide esik, az hibás. Írjunk olyan helyesAtlag(v) nevű függvényt, amelynek bemenete egy mérési eredményeket, azaz valós számokat tartalmazó vektor, kimenetei pedig a helyes mérési eredmények átlaga és darabszáma.
function [atlag, darab]=helyesAtlag(v)
w=v(v>=0 & v<=10);
atlag=mean(w);
darab=length(w);
2.feladat: Írjunk egy olyan frobN(A) nevű függvényt, amely kiszámítja a bemenetként kapott A mátrix összes elemének négyzetének összegét, a függvényünk kimenete pedig legyen ezen szám.
function ki=frobN(A)
ki=sum(sum(A.^2));
3. feldat: Írjunk egy olyan rekurSor(n) nevű függvényt, melynek a bemenete egy n pozitív egész, és a kimenete az , képlettel adott sorozat n-dik tagja (a sorozat első néhány eleme: 4, 4.5, 4.77..., ...
function ki=rekurSor(n) ki=4; for i=2:n ki=7-10/ki; end
4. feladat: Írjunk egy olyan penzFeldobas nevű függvényt, amely meghívásakor elkezd dobálni egy szabályos pénzérmét (1/2, 1/2 esélye van a két különböző kimenetnek). Addig dobáljon, amíg 3 egyforma nem jön ki közvetlenül egymás után. A kimenet legyen az ehhez szükséges összes dobások száma.
function dobasokszama=penzFeldobas dobasokszama=0; fejekszama=0; irasokszama=0; while fejekszama>=3 || irasokszama>=3 dobas=rand; dobasokszama=dobasokszama+1; if dobas<0.5 fejekszama=fejekszama+1; irasokszama=0; else irasokszama=irasokszama+1; fejekszama=0; end end
5. feladat: Írjunk egy olyan abraFv(a,b) nevű függvényt, amelynek bemenete a<b valós számok. A függvény egy ábrára egymás mellé kirajzolja a exp(x) és a sin(2*x) függvényeket az [a,b] intervallumon. Az ábráról derüljön ki, hogy melyik vonal melyik függvényhez tartozik. A függvénynek ne legyen kimenete.
function abraFv(a,b) t=linspace(a,b); subplot(1,2,1) plot(t, exp(t)) title('Exponenciális függvény') subplot(1,2,2) plot(t, sin(2*t)) title('Szinusz függvény')
Szorgalmi feladat: Írjuk egy olyan kettedesTort(a) nevű függvényt, amelynek bemenete egy 0 és 1 közötti valós szám, kimenete pedig a bináris tört (azaz kettes számrendszerbeli tört alakjában) a kilencedik számjegye. (Például a=0.5 bináris tört alakja 0.1, ennek első számjegye 0, a második 1, a harmadik 0.)
function ki=kettedesTort(a) for i=1:8 if a>=2^(-i) a=a-2^(-i); end end if a>=2^(-9) ki=1; else ki=0; end