155GIT1 / 1. cvičení: Porovnání verzí
mBez shrnutí editace |
mBez shrnutí editace |
||
Řádek 42: | Řádek 42: | ||
<source lang=octave> | <source lang=octave> | ||
s = 1 | s = 1 | ||
c = 2.3 % pozor, nutno používat desetinnou tečku! | c = 2.3 % pozor, nutno používat desetinnou tečku! | ||
a = 3,9 % čárka odděluje příkazy | a = 3,9 % čárka odděluje příkazy | ||
</source> | </source> | ||
Řádek 52: | Řádek 52: | ||
<source lang=octave> | <source lang=octave> | ||
s = 1 | s = 1 | ||
t1 = s + 4 * 2 % násobení, dělení má prioritu před sčítáním, odčítáním (t1 = 9) | t1 = s + 4 * 2 % násobení, dělení má prioritu před sčítáním, odčítáním (t1 = 9) | ||
t2 = (s + 4) * 2 % operátor závorka má vždy nejvyšší prioritu (t2 = 10) | t2 = (s + 4) * 2 % operátor závorka má vždy nejvyšší prioritu (t2 = 10) | ||
u = t1 / t2 ^ 2 % mocnina má prioritu před +, -, *, / (u = 0.09) | u = t1 / t2 ^ 2 % mocnina má prioritu před +, -, *, / (u = 0.09) | ||
v1 = t1^(1/2) % zápis druhé odmocniny | v1 = t1^(1/2) % zápis druhé odmocniny | ||
v2 = sqrt(t1) % druhá odmocnina pomocí interní matematické funkce Matlabu/Octave | v2 = sqrt(t1) % druhá odmocnina pomocí interní matematické funkce Matlabu/Octave | ||
</source> | </source> | ||
Řádek 78: | Řádek 78: | ||
<source lang=octave> | <source lang=octave> | ||
A = [1 2 3; 3 2 1;-1 -2 -3] | A = [1 2 3; 3 2 1;-1 -2 -3] | ||
B = [1 2 3; 4 5; 6] | B = [1 2 3; 4 5; 6] | ||
</source> | </source> | ||
Řádek 85: | Řádek 85: | ||
<source lang=octave> | <source lang=octave> | ||
C = rand(3, 4) | C = rand(3, 4) | ||
</source> | </source> | ||
Řádek 91: | Řádek 91: | ||
<source lang=octave> | <source lang=octave> | ||
A(1, 2) | A(1, 2) | ||
A(4) | A(4) | ||
</source> | </source> | ||
Řádek 98: | Řádek 98: | ||
<source lang=octave> | <source lang=octave> | ||
B = 2 * A | B = 2 * A | ||
A*B | A*B | ||
B' % transpozice | B' % transpozice | ||
A*B' | A*B' | ||
</source> | </source> | ||
Řádek 107: | Řádek 107: | ||
<source lang=octave> | <source lang=octave> | ||
rows(C) % pouze v Octave | rows(C) % pouze v Octave | ||
columns(C) % pouze v Octave | columns(C) % pouze v Octave | ||
length(C) | length(C) | ||
size(C) | size(C) | ||
[r, c] = size(C) | [r, c] = size(C) | ||
size(C,1) | size(C,1) | ||
size(C,2) | size(C,2) | ||
</source> | </source> | ||
Verze z 23. 2. 2017, 21:40
První seznámení s Matlabem a GNU Octave - proměnné, matice, vektory, indexování, skripty
Náplň cvičení
- ukázka Matlabu a GNU Octave, viz nástroje

- nápověda, help, doc
- skalární hodnoty
- proměnné, pole, matice (dvourozměrné)
- základní operace s proměnnými, inkrementace
- vektor, sloupcový, řádkový
- matice, dimenze, ukázka konzistence
- vytváření skriptů
- File -> New -> Script
- spuštění: F5
- výstup se vypisuje do Command Window
- skripty z příkazové řádky •
edit
,run
Ukázky
- Tipy
- Pokud je příkaz ukončen středníkem, tak hodnoty nevypisuje
- Více příkazů lze v jedné řádce oddělit čárkou anebo středníkem
- Dlouhý příkaz lze rozdělit na více řádků pomocí
...
- Pohyb v historii příkazů (klávesové šipky nahoru a dolu)
- Doplňování příkazů pomocí klávesy TAB (dvojstisk)
- Komentáře začínají znakem
%
(v Octave i znakem#
) a jsou ukončeny koncem řádky - Rozsah numerických datových typů
realmin
,realmax
- Textové řetězce jsou ohraničeny jednoduchými uvozovkami (v Octave i dvojitými uvozovkami)
- Nastavení formátu výpisu numerických hodnot:
format long
- výpis na plný počet desetinných místformat short
- výpis na omezený počet desetinných míst (defaultní)
Skalární hodnoty
(matice o dimenzi 1x1)
s = 1
c = 2.3 % pozor, nutno používat desetinnou tečku!
a = 3,9 % čárka odděluje příkazy
Základní matematické operace
(+, -, *, /, závorky, mocnina, odmocnina)
s = 1
t1 = s + 4 * 2 % násobení, dělení má prioritu před sčítáním, odčítáním (t1 = 9)
t2 = (s + 4) * 2 % operátor závorka má vždy nejvyšší prioritu (t2 = 10)
u = t1 / t2 ^ 2 % mocnina má prioritu před +, -, *, / (u = 0.09)
v1 = t1^(1/2) % zápis druhé odmocniny
v2 = sqrt(t1) % druhá odmocnina pomocí interní matematické funkce Matlabu/Octave
Vektory
(řádkový vs. sloupcový)
a = [3 2 5] % taktéž a = [3,2,5]
b = [2;4;6]
c = a*b
a' % transpozice
a*a
a*a'
Matice
(musí být obdélníková)
A = [1 2 3; 3 2 1;-1 -2 -3]
B = [1 2 3; 4 5; 6]
(náhodné hodnoty)
C = rand(3, 4)
(indexování)
A(1, 2)
A(4)
(násobení)
B = 2 * A
A*B
B' % transpozice
A*B'
(dimenze)
rows(C) % pouze v Octave
columns(C) % pouze v Octave
length(C)
size(C)
[r, c] = size(C)
size(C,1)
size(C,2)