Cvičení v matlabu

Týden 4

Výraz, příkazy

Výraz

Výraz je posloupnost konstant, názvů proměnných, operátorů (včetně kulatých závorek - viz lekce 2) a volání funkcí (viz lekce 3).

Pokud je výraz smysluplný (MATLABem vyhodnotitelný), tak po jeho napsání a stisku klávesy ENTER je výraz ihned vyhodnocen. Vyhodnocením výrazu vzniká vždy nějaká hodnota.

Výslednou hodnotu výrazu můžeme odebrat (uložit do nějaké proměnné - viz přiřazovací příkaz), jinak je uložena do proměnné ans (viz výše) a zobrazena, například:

>> 3+2*0.5
ans =
        4

Pokud nepotřebujeme vypočtenou hodnotu vidět, lze její zobrazení potlačit - za výrazem napíšeme středník. Středník tedy slouží (kromě oddělení řádků matice) také k potlačení výpisu výsledku výrazu. Obvykle se při potlačeném výpisu výsledku používá přiřazení hodnoty výrazu do nějaké proměnné, protože jinak vypočtená hodnota zanikne. Proměnná vytvořená přiřazením s potlačeným výpisem samozřejmě vznikne ve Workspace. Typicky tedy píšeme:
>> proměnná=výraz;

Příklad:

výraz  odebrání hodnoty?    zobrazení výsledku?    vznik (změna) ans?  
>> b = 5*a+3anoanone
>> 5*a+3neanoano
>> b = 5*a+3;  nenene
>> 5*a+3;nenene

Poznámka: poslední případ je k ničemu, protože výraz se sice vyhodnotí, ale jeho výsledek se nikdo nedozví.

Další příklady výrazů naleznete v lekci 2 (za přehledem operátorů).


Příkaz

Pokud napíšeme a odešleme nějaký výraz ke zpracování, MATLAB ho bere v podstatě jako příkaz k nějaké činnosti (vyhodnocení výrazu). Kromě odeslání výrazů však existuje spousta "čistokrevných" příkazů, např. příkaz přiřazovací. S ostatními se seznámíme v dalších lekcích. Zde je základní přehled:

  • přiřazovací příkaz (=), jehož syntaxe je
    >> název_proměnné = výraz
  • podmíněný příkaz, větvení (if) - viz lekce 2
  • přepínač (switch)
  • cyklus neboli smyčka (forwhile)

Dále MATLAB obsahuje příkazy pro:

  • práci s adresářem (např. cddir)
  • práci s proměnnými (např. saveloadclear)
  • ...

Jeden příkaz na více řádků

Někdy se stane, že potřebujeme napsat jeden příkaz na více řádků. K tomu účelu použijeme tři tečky. Tři tečky se zvýrazňují modře a znamenají, že MATLAB má počkat s provedením příkazu, protože ještě není celý. Pokud MATLAB čeká na dokončení příkazu, tak příkazový řádek nezačíná >>.

Příklad:
>> A = [1.5 -3 4.1; 2...
1.14 5 0.2; 7 15.1 8/31 0];

nebo
>> A = [1.5 -3 4.1; 2...
1.14 5 0.2; 7 15.1...
8/31 0];

Potlačení výpisu výsledku

Některé příkazy vypisují své výsledky (např. >> x = 215). Pokud nepotřebujeme tyto výsledky vidět, lze potlačit výpis výsledků příkazu (stejně jako u výrazů) napsáním středníku na konec příkazu (>> x = 215;).

Násilné ukončení příkazu (CTRL+C)

Příkaz, který se právě provádí, násilím ukončíme pomocí stisku CTRL+C. Většinou se CTRL+C používá, pokud jsme "vyrobili" nekonečný cyklus nebo jsme zapomněli na středník a necháváme vypisovat příliš velké matice.

Více příkazů na jednom řádku

Doposud jsme příkazy ukončovali vždy pomocí klávesy ENTER, která zároveň odeslala příkaz ke zpracování. Občas ale chceme odeslat ke zpracování více příkazů najednou. Tehdy můžeme použít buď M-soubory, anebo zápis více příkazů na jeden řádek, přičemž k odělení jednotlivých příkazů se používá čárka nebo středník (čárka jen odděluje příkazy, středník navíc potačuje výpis jejich výsledků).
Příklad:
>> m=8, n=3; vysledek=3*m+0.5*n


Komentáře (poznámky)

Komentáře slouží většinou k vysvětlení významu jednotlivých příkazů, skriptů nebo funkcí. Je velmi vhodné je používat (ať už kvůli vlastní skleróze nebo kvůli kolegům, se kterými budete případné výsledky své práce sdílet). Komentáře u uživatelských funkcí navíc slouží jako nápověda, kterou umí MATLAB zobrazovat např. příkazem >>help název.

Komenář začíná znakem % (procento) a končí spolu s koncem řádku. Text komentáře bývá označen zeleně (pokud jste si nezvolili jinou barvu).

Všechny komentáře jsou MATLABem ignorovány, tj. nejsou vyhodnocovány.

Příklad:
>> x = [125/100 0.9-9]; % vytvoreni vektoru x s hodnotami 1.25 a -8.1, bez vypisu