01.11.2014 Views

MATLAB programavimas Dialogo komandos ir veiksmai su failais ...

MATLAB programavimas Dialogo komandos ir veiksmai su failais ...

MATLAB programavimas Dialogo komandos ir veiksmai su failais ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Įvedimas - išvedimas<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Įvedimas - išvedimas<br />

Turinys<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

<strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong><br />

<strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong><br />

5 paskaita<br />

1 Įvedimas - išvedimas<br />

O. Štikonienė<br />

MIF VU<br />

2 Veiksmai <strong>su</strong> <strong>failais</strong><br />

2010-09-28<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 1 / 43<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 2 / 43<br />

Įvedimas - išvedimas<br />

<strong>Dialogo</strong> programos<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Įvedimas - išvedimas<br />

Duomenų įvedimas - input<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Dažnai reikia rašyti programas, kuriose reikia darbo metu<br />

keistis informacija <strong>su</strong> vartotoju.<br />

Tam tikrais momentais programa <strong>su</strong>stabdo savo darbą <strong>ir</strong><br />

išveda užklausą vartotojui.<br />

Nuo jo įvesto atsakymą priklauso tolimesnis programos<br />

veikimas, pvz., ji gali tęsti arba nutraukti skaičiavimus.<br />

Vartotojo <strong>ir</strong> programos dialogas realizuojamas naudojant<br />

komandinę eilutę.<br />

<strong>MATLAB</strong> turi specialias dialogo <strong>komandos</strong>.<br />

Funkcija input leidžia komandiniame lange išvesti užklausą<br />

(kabutėse nurodytas tekstas) vartotoju <strong>ir</strong> gauti jo atsakymą.<br />

x = input (’užklausa’)<br />

Ši funkcija <strong>su</strong>stabdo programos vykdymą, komandų lange<br />

išveda kabutėse nurodytą užklausą <strong>ir</strong> laukia, kol iš klaviatūros bus<br />

įvestas skaičius arba kitas <strong>MATLAB</strong>e leistinas reiškinys, kuris gali<br />

būti apskaičiuotas <strong>ir</strong> gražintas kaip funkcijos input reikšmę -<br />

kintamasis x.<br />

Informacijos įvedimas baigiamas paspaudus mygtuką ENTER.<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 3 / 43<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 4 / 43<br />

Įvedimas - išvedimas<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Įvedimas - išvedimas<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 5 / 43<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 6 / 43


Įvedimas - išvedimas<br />

Funkcija input<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Įvedimas - išvedimas<br />

Informacijos išvedimas – disp (1)<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Input function is used as a prompt (kreipinys kompiuterio ekrane,<br />

raginantis pradėti naują operaciją).<br />

»x=input(’Enter a value for x’);<br />

» yourName = input(’Enter your name’,’s’);<br />

input neleidžia automatizuoti skaičiavimo užduočių. Venkite<br />

naudoti įvesties funkciją input. Retai yra tai būtina.<br />

Visos įvestys į funkciją turi būti pateiktos per įvesties parametro<br />

sąrašą.<br />

Disp funkcija turi tik vieną argumentą, kuris gali būti simbolių eilutė ar<br />

skaičių matrica.<br />

disp(‘My favorite color is red’)<br />

vardas = input(‘Įveskite savo vardą‘);<br />

disp([‘Jūsų vardas‘, vardas]);<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 7 / 43<br />

Informacijai išvesti (išspausdinti) naudojama komanda disp,<br />

kuri komandų lange išveda nurodyto kintamojo reikšmę arba<br />

atitinkamą tekstą. Komanda disp naudojama taip: disp<br />

( kintamasis arba tekstas kabutėse)<br />

Rezultatas neprisk<strong>ir</strong>iamas nei kintamajam ans, nei kitam<br />

kintamajam.<br />

Komandoje disp gali būti tik vienas argumentas - kintamųjų<br />

reikšmių masyvas arba tekstinė eilutė.<br />

Norint išvesti tekstą <strong>ir</strong> kintamųjų reikšmes kartu, reikia <strong>su</strong>jungti<br />

išvedamą informaciją, <strong>su</strong>formuojant vektorių.<br />

Pavyzdžiui, norint išvesti kelias to paties tipo kintamųjų reikšmes<br />

vienoje eilutėje, reikia <strong>su</strong>jungti kintamuosius į vieną vektorių:<br />

>>x=[x1x2...xN]<br />

Tuomet kelių kintamųjų išvedimo komanda būtų tokia:<br />

disp (x) arba disp ([x1 x2 ... xN])<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 8 / 43<br />

Įvedimas - išvedimas<br />

disp funkcijos taikymo pavyzdžiai<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Įvedimas - išvedimas<br />

Sk<strong>ir</strong>tingų tipų duomenų <strong>su</strong>jungimas - num2str<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

1 pavyzdys (skaičių masyvo išvedimas):<br />

»x1=1.25;<br />

» x2=-3.5;<br />

» x3=6.52;<br />

» x4=-56.24;<br />

» disp ([ x1 x2 x3 x4 ])<br />

1.2500 -3.5000 6.5200 -56.2400<br />

2 pavyzdys (teksto išvedimas):<br />

Analogiškai galima <strong>su</strong>jungti keletą tekstinių konstantų:<br />

»x1=’psi ’;<br />

»x2=’fi ’;<br />

»x3=’teta ’;<br />

»x=[x1x2x3];<br />

»disp(x);<br />

psi fi teta<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 9 / 43<br />

Dažnai vienoje eilutėje reikia išspausdinti tekstinių <strong>ir</strong> skaitmeninių<br />

kintamųjų reikšmes. Tačiau <strong>su</strong>jungti galima tik to paties tipo<br />

duomenis. Norint <strong>su</strong>jiungti sk<strong>ir</strong>tingų tipų duomenis skaitmeniniams<br />

duomenims reikia <strong>su</strong>teikti simbolinį pavidalą. Tam galima naudoti<br />

num2str funkciją.<br />

Komanda y = num2str(x) kintamojo x skaitmeninę reikšmę<br />

pakeičia simbolių seka.<br />

JeiT-tekstinis kintamasis arba koks nors tekstas, o x - skaitmeninis<br />

kintamasis, tai jų reikšmes vienoje eilutėje <strong>su</strong>jungti galima tokia<br />

komanda:<br />

disp ([T num2str(x) ])<br />

»x = 25.36<br />

x=<br />

25.3600<br />

» disp ([’ Parametras x : ’<br />

num2str( x)])<br />

Parametras x : 25.36<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 10 / 43<br />

Įvedimas - išvedimas<br />

Pranešimai apie pastabas arba klaidas<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Įvedimas - išvedimas<br />

Text Input and Output<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Norint į komandinį langą įšvęsti įspėjanti pranešimą geriau vietoj<br />

funkcijos disp naudoti funkciją warning:<br />

warning(’įspėjimas’)<br />

warning o – įspėjimas nespausdinamas;<br />

warning on – įspėjimas vėl spausdinamas.<br />

Pranešimai apie klaidas išvedami naudojant funkciją error:<br />

error(’klaida’)<br />

Pranešimas apie klaidą bus įšvęstas komandiniame lange<br />

naudojant raudoną spalvą <strong>ir</strong> trys šauktukus (???).<br />

function y=inverse(x)<br />

if x==0<br />

error(’dalyba is nulio’)<br />

else<br />

y=1./x;<br />

end<br />

» inverse(4)<br />

ans =<br />

0.2500<br />

» inverse(0)<br />

??? Error using ==> inverse<br />

at 3 dalyba is nulio<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 11 / 43<br />

Paprastai pageidaujama išspausdinti rezultatus į ekraną ar į failą.<br />

Retais atvejais gali būti naudinga skatinti vartotoją pateikti<br />

informaciją ne per įvesties parametrų sąrašą funkcijai.<br />

Inputs to functions:<br />

input funkcija gali būti naudojama (bet nepersistenkite!).<br />

Pageidautina naudoti funkcijų parametrus.<br />

Teksto išvedimas funkcijose:<br />

disp funkcija paprastam išvedimui į komandų langą.<br />

fprintf funkcija sk<strong>ir</strong>ta formatuotam išvedimui į komandų<br />

langą arba rašymui į failą.<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 12 / 43


Įvedimas - išvedimas<br />

input funkcija - pavyzdžiai<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Įvedimas - išvedimas<br />

input funkcija - pavyzdžiai<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 13 / 43<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 14 / 43<br />

Įvedimas - išvedimas<br />

Interaktyvus m-failas - pavyzdys<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Įvedimas - išvedimas<br />

Interaktyvus m-failas - pavyzdys<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 15 / 43<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 16 / 43<br />

Įvedimas - išvedimas<br />

disp funkcija - pavyzdžiai<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Įvedimas - išvedimas<br />

disp funkcija - pavyzdžiai<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

!"<br />

<br />

" <br />

##!<br />

$"$<br />

<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 17 / 43<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 18 / 43


Įvedimas - išvedimas<br />

num2str funkcija - pavyzdžiai<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Įvedimas - išvedimas<br />

num2str funkcija - pavyzdžiai<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Funkcija num2str yra dažnai naudojama <strong>su</strong> disp funkcija, kad<br />

išvesti skaitmeninės kintamuosius.<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

!<br />

!""<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 19 / 43<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 20 / 43<br />

Įvedimas - išvedimas<br />

num2str <strong>ir</strong> disp funkcijos - pavyzdžiai<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Įvedimas - išvedimas<br />

num2str <strong>ir</strong> disp funkcijos - pavyzdžiai<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Combine num2str and disp to print a labeled output of a<br />

numeric value <br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 21 / 43<br />

Komanda<br />

disp([’x = ’,num2str(x)]);<br />

galima naudoti, kai x yra vektorius - eilutė, o ne stulpelis arba<br />

matrica.<br />

»z=y’;<br />

» disp([’z = ’,num2str(z)])<br />

??? All matrices on a row in the bracketed expression must have<br />

the same number of rows.<br />

Norint spausdinti vektorių arba matricą reikia du kartus naudoti<br />

disp<br />

» disp(’z = ’); disp(z)<br />

z=<br />

1<br />

2<br />

3<br />

4<br />

Toks pat re<strong>su</strong>ltatas<br />

gaunasi, kai įvedame<br />

kintamuojo varda be<br />

kabliataškio<br />

»z<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 22 / 43<br />

Įvedimas - išvedimas<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Įvedimas - išvedimas<br />

Pagrindiniai darbo <strong>su</strong> <strong>failais</strong> etapai:<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Sudarant programas, pradinius duomenis patogu įvesti iš<br />

failo, o rezultatus išvesti ne tik į ekraną, bet <strong>ir</strong> į failą.<br />

Failai naudojami duomenims saugoti, ryšiui tarp duomenis<br />

apdorojančių programų organizuoti.<br />

Matlab leidžia d<strong>ir</strong>bti <strong>su</strong> <strong>failais</strong> tiek dvejetainiu, tiek tekstiniu<br />

režimu. Atliekant įvedimo <strong>ir</strong> išvedimo operacijas <strong>su</strong> <strong>failais</strong><br />

tekstiniu režimu, informacija yra perkoduojama<br />

(transformuojama) pagal nurodytą formatą. Dvejetainiu<br />

režimu informacija netransformuojama<br />

Prieš skaitant iš failo ar rašant į failą, jį reikia atverti funkcija fopen.<br />

Atlikti veiksmus <strong>su</strong> <strong>failais</strong>:<br />

įvesti duomenis - fscanf,<br />

išvesti duomenis - fprintf.<br />

Užverti failus, naudojant funkciją fclose.<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 23 / 43<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 24 / 43


Įvedimas - išvedimas<br />

funkcija fopen<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Įvedimas - išvedimas<br />

Funkcija fprintf:<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

fid = fopen (filename, mode),<br />

čia filename - failo vardas ;<br />

mode - atliekamos operacijos tipas:<br />

’r’ skaityti,<br />

’w’ rašyti,<br />

’a’ papildyti,<br />

’r+’ skaityti <strong>ir</strong> rašyti.<br />

Funkcija fopen grąžina failo identifikatorių fid, kuris yra<br />

neneigiamas skaičius. Jį realiam failui prisk<strong>ir</strong>ia operacinė sistema.<br />

You use the fid as the f<strong>ir</strong>st argument to other file input/output<br />

routines. If fopen cannot open the file, it returns -1. Two file<br />

identifiers are automatically available and need not be opened.<br />

They are fid=1 (standard output) and fid=2 (standard error).<br />

fprintf(FailoIdentifikatorius, ’formatas’, kintamieji) – spausdina į<br />

failą.<br />

Failo identifikatorius – skaičius, gaunamas įvykdžius fopen. Jei jis<br />

praleistas arba 1, spausdinama į ekraną.<br />

Darbo pradžioje failas turi būti atvertas rašymui (fopen), darbo<br />

pabaigoje – užvertas (fclose).<br />

FailoIdentifikatorius=fopen(’FailoVardas’, veiksmas)<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 25 / 43<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 26 / 43<br />

Įvedimas - išvedimas<br />

<br />

<br />

<br />

<br />

<br />

!<br />

<br />

<br />

<br />

!" #<br />

"<br />

<br />

<br />

<br />

$<br />

<br />

% <br />

$<br />

<br />

%<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Įvedimas - išvedimas<br />

Funkcija fprintf:<br />

count = fprintf (fid, format, a,...)<br />

Ši funkcija transformuoja duomenis, esančius matricoje a, į<br />

simbolių seką nurodytu formatu format <strong>ir</strong> išveda juos į failą,<br />

<strong>su</strong>sietą <strong>su</strong> failo identifikatoriumi fid.<br />

Formatas nurodomas naudojant simbolį %.<br />

Formato pavyzdžiai:<br />

%e eksponentinei formai,<br />

%f fik<strong>su</strong>oto kablelio skaičiai,<br />

%g automatiškai parenkamas formatas %e arba %f .<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 27 / 43<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 28 / 43<br />

Įvedimas - išvedimas<br />

Funkcija fprintf:<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Įvedimas - išvedimas<br />

Funkcija frintf:<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

Vectorized fprintf cycles through the outVariables by columns.<br />

This can also lead to unintended re<strong>su</strong>lts »A=[123;456;789]A<br />

=<br />

1 2 3<br />

4 5 6<br />

7 8 9<br />

» fprintf(’%8.2f %8.2f %8.2f’,A)<br />

1.00 4.00 7.00<br />

2.00 5.00 8.00<br />

3.00 6.00 9.00<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 29 / 43<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 30 / 43


Įvedimas - išvedimas<br />

Funkcija fscanf:<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Įvedimas - išvedimas<br />

Veiksmų <strong>su</strong> <strong>failais</strong> pavyzdžiai<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

a = fscanf (fid, format, size)<br />

Ši funkcija įveda duomenis iš failo, <strong>su</strong>sieto <strong>su</strong> failo identifikatoriumi<br />

fid, <strong>ir</strong> transformuoja juos į dvejetainį pavidalą nurodytu formatu<br />

format. Parametras size nebūtinas. Jis nurodo įvedamų<br />

duomenų kiekį, kuris gali būti užrašytas įva<strong>ir</strong>ia forma:<br />

n - įvedama n elementų į vektorių stulpeli:<br />

[m,n] -įmxnmatricą įvedami duomenys išdėstomi stulpeliais.<br />

Formatas format apibrėžiamas simboliu %.<br />

Formato pavyzdžiai:<br />

%s įvedama simbolių eilutė,<br />

%d įvedami sveikieji skaičiai,<br />

%f įvedami realieji skaičiai.<br />

Pastaba. Pradinius duomenų failus galima paruošti <strong>su</strong><br />

paprasčiausiais teksto redaktoriais: Notepad, Wordpad ar<br />

Matlab vidiniu redaktoriumi.<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 31 / 43<br />

!<br />

<br />

<br />

<br />

<br />

<br />

" <br />

#<br />

# <br />

<br />

<br />

<br />

<br />

<br />

<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 32 / 43<br />

Įvedimas - išvedimas<br />

Veiksmų <strong>su</strong> <strong>failais</strong> pavyzdžiai<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Įvedimas - išvedimas<br />

format funkcija<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

!<br />

"<br />

!<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

!<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

format function controls the precision of disp output.<br />

» format short<br />

» disp(pi)<br />

3.1416<br />

» format long<br />

» disp(pi)<br />

3.14159265358979<br />

Alternatively, a second parameter can be used to control the<br />

precision of the output of num2str<br />

» disp([’pi = ’,num2str(pi,2)])<br />

pi=3.1<br />

» disp([’pi = ’,num2str(pi,4)])<br />

pi=3.142<br />

» disp([’pi = ’,num2str(pi,8)])<br />

pi = 3.1415927<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 33 / 43<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 34 / 43<br />

Įvedimas - išvedimas<br />

Pavyzdžiai<br />

<br />

<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

Įvedimas - išvedimas<br />

Pavyzdžiai<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 35 / 43<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 36 / 43


Įvedimas - išvedimas<br />

Pavyzdžiai<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Įvedimas - išvedimas<br />

Pavyzdžiai<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 37 / 43<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 38 / 43<br />

Įvedimas - išvedimas<br />

Pavyzdžiai<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Įvedimas - išvedimas<br />

Pavyzdžiai<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 39 / 43<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 40 / 43<br />

Įvedimas - išvedimas<br />

Pavyzdžiai<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

Įvedimas - išvedimas<br />

Pavyzdžiai<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 41 / 43<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 42 / 43


Įvedimas - išvedimas<br />

Pavyzdžiai<br />

Veiksmai <strong>su</strong> <strong>failais</strong><br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

MIM ( MIF VU) <strong>MATLAB</strong> <strong>programavimas</strong> <strong>Dialogo</strong> <strong>komandos</strong> <strong>ir</strong> <strong>veiksmai</strong> <strong>su</strong> <strong>failais</strong> 2010-09-28 43 / 43

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!