Cycle üzemeltető míg - matlab útmutató kezdőknek - matlab rövidítése angolul
5.2. ciklus while
MatLab programozási nyelv két hurok nyilatkozata: while és a for. Segítségükkel például programozható rekurzió algoritmusok. összegének kiszámításakor számos, válogatás tömb elemeit, és így tovább.
A legegyszerűbb esetben, egy sor programot szervezett egy darabig nyilatkozatot, amely a következő szintaxist:
Van egy feltételes kifejezést használthoz hasonló az if és while ciklus fut, amíg a feltétel igaz.
Meg kell jegyezni, hogy ha a feltétel hamis, mielőtt a hurok, a nyilatkozatokat tartalmazza a ciklusban nem teljesülnek, még egyszer.
Itt egy példa a munka a while ciklus kiszámításához az összeg a sorozat:
S = 0; % Kezdeti érték összegének
i = 1; % Összeg counter
míg én 20%, ha S> 20
break; % Ezután a ciklus befejeződik
vég
véget% ciklus végén
disp (S); 21% -os érték jelenik meg a képernyőn
Ebben a példában, a második hurokban terminációs állapot, amikor az S nagyobb, mint 20, rögzítik a ciklus, és az üzemeltető kilép a szünet ciklus disp () függvény, állva után azonnal ciklust.
A második ciklus végrehajtása továbbra vezérlő utasítás lehetővé teszi, hogy kihagyja a program részletben jön utána. Például kell számítani az összeg a tömb elemeinek
a = [1 2 3 4 5 6 7 8 9];
kiküszöbölve az elem indexű 5. Egy ilyen program felírható a következőképpen:
S = 0; % Kezdeti érték összegének
a = [1 2 3 4 5 6 7 8 9]; % tömb
i = 0; % Counter tömbindexek
míg a i =.
vég
Tekintsük a működése ebben a ciklusban megvalósításban a keresési algoritmus a legnagyobb érték az elem vektor:
a = [3 6 5 3 6 9 5 3 1 0];
m = a (1); % Jelenlegi maximális értéke
i = 1: hossza (a)% 1. ciklus végére a vektor
1% -os lépésekben (alapértelmezett)
ha m m,
m = a (i); % Akkor m = a (i)
vég
end% végén a hurok
disp (m);
Ebben a példában, a ciklus határozza i számlálót és megváltoztatja annak értéke 1-től 10 1-es lépésekben Megjegyezzük, hogy ha a lépés méretét nincs kifejezetten megadva. ez lesz az alapértelmezett 1.
A következő példában, úgy véljük, a végrehajtás az algoritmus a vektor elemeinek jobbra eltolt, azaz az utolsó előtti elem helyére kerül az utóbbi, a következő - az utolsó előtti helyen, stb mielőtt az első elem:
a = [3 6 5 3 6 9 5 3 1 0];
disp (a);
i = hossza (a): - 1: 2 10% ciklus 2. lépésben -1
egy (i) = a (i-1); % Előfeszítő elemet vektor egy
end% végén a hurok
disp (a);
A program eredményeként
3 6 5 3 6 9 5 3 1 0
3 3 6 5 3 6 9 5 3 1
Ez a példa azt mutatja, hogy a végrehajtás a ciklus egy számláló értéket, egy nagyobb és egy kisebb kell meghatároznia, hogy lépést, ebben az esetben -1. Ha nem, akkor a ciklus azonnal fejezze be munkáját, és a program nem fog megfelelően működni.
6. határozatai az egyenlet
6.1. Grafikus módszer egyenletek megoldására
A kijelző több grafikonok egy egyszerű módja, hogy megtalálják közelítő megoldásokat.
Ez a diagram azt mutatja, grafikonok a funkciók y = sin (t) / t és (X / 5) 2 + y 2 = 1. Nem nehéz észrevenni ezeket a funkciókat három metszéspontot.
6.2. Keresse meg a egyenlet megoldása
Grafikus módszer csak becsülni a megoldás. Pontosabban megoldást találni egy csomagot kell használni matlab fsolve (egyenlet kezdeti érték). Később majd megtanulják, hogyan kell használni ezt a funkciót, hogy oldja meg a rendszer egyenletek. A legegyszerűbb esetben, meg lehet oldani az egyenleteket jelzik megadható aposztrófok. például: 'X * x-abs (x)'. De ez a funkció három megoldásokat ábrán bemutatott.
A döntés, amely ebben az esetben fsolve funkció határozza meg a kezdeti érték ahonnan indul iteratív eljárást a megoldások keresésében. Például:
fsolve ( 'x * x-abs (x)', - 2), ans = -1,0000;
fsolve ( 'x * x-abs (x)', 0,6), ans = 1,0000;
fsolve ( 'x * x-abs (x)', 0,4), ans = 7.9062e-008.
fsolve funkció továbbra iteratív eljárást, amíg meg nem találja a megoldást, hogy egy adott pontossággal. Ezért a mi példánkban megkaptuk 7.9062e-008 helyett 0.
Abban az esetben bonyolultabb funkciókat sokkal kényelmesebb a közölt mint M fájl. Aztán, ahogy az első paraméter a függvény fsolve esetben aposztrófok a fájl nevét.
7. M-Files
M-fájlok MatLab kétfélék: file programot (Script M-Files), amely a parancsokat, és a fájl funkciók (Function M-Files), amely leírja a felhasználó által definiált függvények.
7.2. fájl programot
7.3. Fájl-funkció
M-M-funkciók fájlokat, amelyek lehetővé teszik a jelenlétét a bemeneti és kimeneti érveket. Munkájukat a változókat a saját munkaterületen kívüli munkaterület MATLAB.
Átlagosan funkció - ez egy elég egyszerű M-fájl, amely kiszámítja az átlagos értéke az elemek egy vektor:
függvény y = átlagos (x)
% -os átlagos középértéke a vektor elemek.
% -os átlagos (X), ahol az X - vektor. Kiszámítja az átlagértéket a vektor elemek.
% Ha a bemeneti argumentum egy vektor, egy hiba keletkezik.
[M, n] = méret (x);
if (
((M == 1) | (n == 1)) | (M == 1 n == 1))
error ( 'Input tömbnek kell lennie vektor)
vég
y = összege (x) / hossza (x); Saját számítások%
Próbáljon megadni ezeket a parancsokat egy M-file nevű average.m. Átlagosan a funkció lehetővé teszi, hogy egyetlen bemeneti és egy kimeneti érveket. Annak érdekében, hogy okozhat átlagos funkciója, szükséges, hogy adja meg az alábbi állítások:
példaMeghatározása az átlagos húr függvény formájában:
függvény y = átlagos (x)
itt:
funkció - egy kulcsszót, amely meghatározza az M-funkció;
y - output paraméter;
átlag - a függvény neve;
x - argumentum.
Minden funkció a rendszer tartalmazza az MATLAB húr meghatározó funkció a fentiekhez hasonló.
Ha a funkció több mint egy kimeneti argumentum, a lista kiadási érvek kerül szögletes zárójelben. Input érvek, ha van ilyen, a zárójelbe. Elválasztani az érveket a bemeneti és kimeneti listákat használnak vesszőt.
funkció [x, y, z] = gömb (théta, phi, rho)
A nevét a bemeneti változók lehetnek, de nem feltétlenül kell megegyeznie a megadott név a függvény definíciójában vonalon.
% -os átlagos átlagos értéke vektorelemek
Nevek M funkciók. A MATLAB rendszer a nevét M funkciók ugyanolyan korlátozás a változók neveit - hosszuk nem haladhatja meg a 31 karaktert. Pontosabban, a neve hosszabb lehet, de MATLAB rendszer figyelembe veszi csak az első 31 karakter. Nevek M funkciókat kell kezdődnie írni; A többi karakter lehet bármilyen kombinációja betűk, számok és aláhúzás.
fájlnév tartalmazó M-funkció áll a függvény neve és a kiterjesztés „.m”.
average.m
Ha a fájl neve és a funkciók meghatározása a függvény neve különbözik, a fájlnevet használ, és a belső név lehet figyelmen kívül hagyni. Bár a függvény nevét megadott függvény definíciójában sor nem egyezik meg a fájl nevét, akkor javasoljuk, hogy ugyanazt a nevet használja.