3. előadás Matlab (mátrix sorok, fájlok)
Matlab. MATRIX, húrok, fájlokat.
A parancs ablakban végezheti el az összes alapművelet mátrixok (tömbök, hívják őket programozás). A mátrixot vezettünk a következőképpen: A = [1 május 46; Június 7 34; 78 május 12.]; ahol A mátrix programozó név kiválasztott belátása, a sorok pontosvesszővel elválasztva. Például, egy oszlop mátrix (vektor, ahogy nevezik a programozási) vezetjük be a Command ablak a következőképpen: B = [2; 6; 7; 89; -4]; azaz annak elemei, amelyek mindegyike található a következő sorban, pontosvesszővel elválasztva. Üzemelhet mátrixok speciális parancs, amit később részletezzük.
Mátrix műveletek M-fájlokat.
A M-fájl input tömb kell szervezni elemenként a következő parancsokkal: A (i, j) = bemenet (strcat ( 'A (', int2str (i), '', int2str (j), ') =' )); ahol A a tömb nevét, i, j egész (egész típusú változók) használunk a ciklus számlálók, bemeneti parancs bemeneti változó egy előzetes kezelést a felhasználói terminál. Fellebbezés a felhasználói általában zárójelben feltüntetett csapat. Ebben az esetben a zárójelben strcat parancs, amelynek célja, hogy egy karakterlánc (szöveg). általában azt mutatják, néhány töredék szöveg és változó nevét zárójelben, ha szükséges, hogy egy egységes szövegét ezen töredékek és számok (numerikus változók). Átalakítani az értékeket a numerikus változók egy számsorozat használt int2str parancs az egész és num2str bármilyen számokat. Üzemelhet mátrixok speciális parancs, amit később részletezzük.
Szöveges fájlokat hívott fájl karakter (szöveg). Ezek közé tartozik a vonalak, véget vetve a szimbólum „sor vége”. a „fájl vége” karakter a végén a fájlt. Fájl kiterjesztése .txt.
A bináris fájlok információkat tartalmaznak formájában szekvenciák bináris szimbólumok meghatározott hosszúságú. Kiterjesztése dat.
használja a parancsot F = fopen ( 'exTextFile_1.txt', 'wt'), hogy nyissa egy szöveges fájlt; ahol f a változó nevét, amely képviseli a nyitott fájlt a program. exTextFile_1.txt a fájl neve .txt kiterjesztéssel kell nyitni. Ha nem létezik, mielőtt jön létre (a szöveg nélküli benne foglalt). tömeg azt jelenti, hogy a fájl újonnan létrehozott, egy szöveget, egy üres és nyitott csak írásban lehet.
Command fprintf (F, 'első mátrix \ n'); eszközre az fájlban f kerül (rögzített) vonal jelzi idézőjelbe. Ezzel teljessé válik az új sor karakter \ n.
Command fprintf (F, '% f \ t', A (i, j)); ír rendszeresen tömb képelem A (i, j). Az idézett% f azt jelenti, hogy egy olyan elemre lesz rögzítve, mint egy aláírt számos, a hat karaktert a tizedesvessző után (mintha nem lenne egész;.% A jel;% s karakterlánc;% g előjeles egész, és jelzi a sorrendben). Azt mondta, \ t azt jelenti, hogy az első a tömb elem van behelyezve lap (azaz előtte lesz egy szóköz).
Command fprintf (F, '\ n'); Ez azt jelenti, hogy az új sor karakter van behelyezve, és lépjen a következő sort.
Command fclose (f); lezárja a fájlt f. Erre azért van szükség. Minden használt (nyitott), akkor zárja be a fájlt (hogy befejezze a munkát vele).
Ahhoz, hogy olvassa el a tartalmát egy szöveges fájl általunk készített, írjon egy M-fájlban.
Command f = fopen ( 'exTextFile_1.txt', 'Rt'); azt jelenti, hogy nyissa meg a fájlt olvasásra.
Command s1 = fscanf (F, '% s', 2); Ez azt jelenti, hogy a változó olvassa be a vonal s1 (mivel Meghatározott%) a két szó (egy szó az egész, hogy mielőtt a szóköz vagy írásjel vagy a vonal végén). Ebben az esetben a különbség nem lehet olvasni.
Csapat (i, :) = fscanf (F, '% f', 3); Ez azt jelenti, hogy az A mátrix annak i-edik sorának, a teljes hossza a húr átmásolja a fájlt, hogy írja alá és hat jelölést követően vessző három számot.
Funkció rögzíteni sablonok egy fájlt, és olvasni egy mátrix fájlt.
Funktsiyadlmreadschityvaet numerikus adatokat egy szöveges fájlt egy mátrixba.
Funktsiyadlmwritezapisyvaet mátrix egy szöveges fájlt.
dlmwrite parancs ( „dlm1.txt”, A) rögzített a kép mátrixban A és után vesszőt a mátrix elemei. A parancs típusát ( „dlm1.txt”) mutatja a tartalmát egy szöveges fájlt az ablakban Command Window.
dlmwrite csapat (dlm2.txt ', A „#”) nem csak rögzíti az A mátrixot a fájlt, de azt is hozzáteszi, egy elválasztó között a mátrix elemei. Delimiter megadhatja épp olyan.
dlmwrite parancs ( „dlm3.txt”, A, „#”, 2,2) rögzíti nem az egész mátrixban, és a kiindulási a megadott sor és oszlop. Helyett a kihagyott elemek (sorok és oszlopok) között távtartó.
Csapat = dlmread ( „dlm2.txt”, „#”, 1,1) beolvassa a mátrix a meghatározott szövegfájlt kezdve a második sorban és a második oszlop (jelzett sor száma és az oszlop 1, 1 ténylegesen képviselik 2 sor és 2 oszlop, a számozás a csapat nullára csökken). Ebben az esetben, a csapat figyelmeztetett a jelenlétét az olvasási elem és a határoló # akadályozza, mert az állás.
A csapat A = dlmread (exTextFile_3.txt) beolvassa a négyzetes mátrix, és ha nem négyzetsav hiányzik, akkor hozzáadja a sorok vagy oszlopok nullák.
Csapat = dlmread ( „dlm1.txt”, „”) beolvassa, tudva a jelenléte egy elválasztó között a mátrix elemei.
Csapat = dlmread ( 'dlm1.txt', '', [0 0 1 1]) beolvassa, ismerve a leválasztó elemek kezdve a 0-dik sora, és a 0-edik oszlopa, és 1-edik sorának és az 1. oszlop a számozás a semmiből.
Amikor nyitottak meg az fopen a mód: WB (tömeg hasonló a szöveget), és rb (helyett szobahőmérsékleten szöveget).
Reading végezzük bináris fájlból [A n] = fread (f, n, típus); ahol A mátrix, n száma olvasni, elemeket. A jobb oldalon a kifejezés, f fájl azonosítója, n száma read (ha lehet vizsgálni számos) elemek típusa jelzi, hogy hány byte olvasható elem. Ha a paraméter típusát (lásd. Táblázat) nincs megadva, akkor az alapértelmezett programot kell tekinteni, hogy a kiválasztott uchar. Ha az n szám prpuscheno leolvasható elemeket, akkor lehet olvasni, amíg a fájl vége.
A kurzor aktuális pozíciója (hány bájt a fájl elején) ftell vissza funkció (f), ahol f egy fájl azonosítója. Visszatérés egy mutatót a fájl elején működhet frewind (f). A fennmaradó mutató mozgását keresztül fseek (f, n, származás) ahol n függvény mozgás (bájtban) viszonyított helyzetét a származási (három lehetőség: „bof” -1 vagy a fájl elején, „EOF” vége fájl vagy 1, „COF” vagy 0 a jelenlegi helyzetben. Tekintettel a jelenlegi helyzetben előre n> 0, n ezelőtt<0. В остальных случаях n>0.)
Entry bináris funkció végezzük n = fwrite (f, A, típusát), ahol f egy fájl azonosítója, egy mátrixot, amely írunk, type adatpontok, n beszámol a tényleges száma rögzített értékeket.
Olvasás bináris fájlból, ha előre nem ismert az elemek száma is.
Nézzük exFwrite1_1.dat fájl már tudjuk, hogy ez áll a 32 bites érték. Ezután fseek parancsot (f, 0,1); azt jelenti, pointer fordítása a fájl, majd a parancsot n = ftell (f) / 4 megkapja a kurzorhelyzetét bájtban elejétől a fájl (sőt, a hossza a fájl), majd osztja azt 4, mivel a kép áll 32 bites (a 4 byte) az elemek, így az elemek száma egy fájlban. Az első közülük, az egész, a maradék tömb a valós számok (lásd. A fenti szövegben, hogyan kell kitölteni ezt a fájlt).
Hasonlóképpen, el tudja olvasni az adatokat bármelyik bináris fájl, amely a minimálisan szükséges információt a természet a tény, hogy van (kapacitás, típusú elemek).