%--------------------------------------------------------------- % 7. cvičení z předmětu PPEL - zaznam z příkazoveho okna MATLABu %--------------------------------------------------------------- % Lenka Šroubová, ZČU, FEL, KTE % e-mail: lsroubov@kte.zcu.cz %------------------------------------- fi=0:0.01:2*pi; % fi z intervalu od 0 do 2pi r=sin(2.*fi).*cos(2.*fi); % výpočet r=sin(2fi)cos(2fi) polar(fi,r) % graf funkce v polárních souřadnicích polar(fi,r,'r') % graf funkce v polárních souřadnicích červenou barvou x=[1:7]; % proložení bodů polynomem 2. stupně y=[1,0,4,2,2,3,5]; xj=[0.5:0.1:7.5]; hp=polyval(polyfit(x,y,2),xj); plot(x,y,'*',xj,hp,'k') % graf c=[2+3i,-4+5i,-1-3i,6-4i] % vektor c c = 2.0000 + 3.0000i -4.0000 + 5.0000i -1.0000 - 3.0000i 6.0000 - 4.0000i isreal(c) % test, jsou-li čísla ve vektoru c reálná ans = 0 a=[1,5,3,6] % vektor a a = 1 5 3 6 isreal(a) % test, jsou-li čísla ve vektoru a reálná ans = 1 d=[2+3i,6,-4+5i,7,-1-3i,6-4i,1] % vektor d d = Columns 1 through 5 2.0000 + 3.0000i 6.0000 -4.0000 + 5.0000i 7.0000 -1.0000 - 3.0000i Columns 6 through 7 6.0000 - 4.0000i 1.0000 isreal(d) % test, jsou-li čísla ve vektoru d reálná ans = 0 imag(c) % imaginární části komplexních čísel z vektoru c ans = 3 5 -3 -4 imag(d) % imaginární části komplexních čísel z vektoru d ans = 3 0 5 0 -3 -4 0 ~imag(d) % negace imaginárních částí komplexních čísel z vektoru d ans = 0 1 0 1 0 0 1 ~0 % negace nuly ans = 1 ~1 % negace 1 ans = 0 ~5 % negace 5 ans = 0 ~imag(d) % negace imaginárních částí komplexních čísel z vektoru d ans = 0 1 0 1 0 0 1 find(~imag(d)) % nalezení pozic nenulových prvků ve vektoru ~imag(d) ans = 2 4 7 d % vektor d vytvořen již dříve, zde pro připomenutí d = Columns 1 through 5 2.0000 + 3.0000i 6.0000 -4.0000 + 5.0000i 7.0000 -1.0000 - 3.0000i Columns 6 through 7 6.0000 - 4.0000i 1.0000 d(find(~imag(d))) % vypsání prvků z vektoru d na pozicích nalezených pomocí find(~imag(d)), tj. prvků na pozici 2,4 a 7 ans = 6 7 1 A=round(rand(2,5).*10) % matice zaokrouhlených náhodných čísel z intervalu od 0 do 1 vynásobených 10 A = 8 1 6 3 10 9 9 1 5 10 A<5 % porovnání prvků matice A s číslem 5, je-li prvek matice A menší, vypíše se 1 (pravda), jinak 0 (nepravda) ans = 0 1 0 1 0 0 0 1 0 0 find(A<5) % nalezení pozic nenulových prvků ve výsledné matici získané porovnáním prvků matice A s číslem 5 (A<5) % vypisují se pozice shora dolů po sloupcích ans = 3 6 7 [r,s]=find(A<5) % nalezení pozic nenulových prvků ve výsledné matici získané porovnáním prvků matice A s číslem 5 (A<5) % vypsání pozice udáním příslušných řádků a sloupců r = 1 2 1 s = 2 3 4 d % vektor d vytvořen již dříve, zde pro připomenutí d = Columns 1 through 5 2.0000 + 3.0000i 6.0000 -4.0000 + 5.0000i 7.0000 -1.0000 - 3.0000i Columns 6 through 7 6.0000 - 4.0000i 1.0000 d.' % prostá transpozice vektoru d ans = 2.0000 + 3.0000i 6.0000 -4.0000 + 5.0000i 7.0000 -1.0000 - 3.0000i 6.0000 - 4.0000i 1.0000 for n=1:10 % cyklus for s pevným počtem opakování od 1 do 10 s krokem 1 (krok 1 se nemusí uvádět) disp(n) % výpis na obrazovku bez názvu proměnné end % konec cyklu for 1 2 3 4 5 6 7 8 9 10 for n=1:10 % cyklus for s pevným počtem opakování od 1 do 10 s krokem 1 n end % konec cyklu for n = 1 n = 2 n = 3 n = 4 n = 5 n = 6 n = 7 n = 8 n = 9 n = 10 for n=1:10 % cyklus for s pevným počtem opakování od 1 do 10 s krokem 1 disp(n) % výpis na obrazovku bez názvu proměnné end % konec cyklu for 1 2 3 4 5 6 7 8 9 10 for n=0:2:12 % cyklus for s pevným počtem opakování od 0 do 12 s krokem 2 disp(n) % výpis na obrazovku bez názvu proměnné end % konec cyklu for 0 2 4 6 8 10 12 for n=10:-3:0 % cyklus for s pevným počtem opakování od 10 do 0 s krokem -3 disp(n) % výpis na obrazovku bez názvu proměnné end % konec cyklu for 10 7 4 1 for n=10:-3:1 % cyklus for s pevným počtem opakování od 10 do 1 s krokem -3 disp(n) % výpis na obrazovku bez názvu proměnné end % konec cyklu for 10 7 4 1 for n=10:-3:-1 % cyklus for s pevným počtem opakování od 10 do -1 s krokem -3 disp(n) % výpis na obrazovku bez názvu proměnné end % konec cyklu for 10 7 4 1 for n=10:-3:-2 % cyklus for s pevným počtem opakování od 10 do -2 s krokem -3 disp(n) % výpis na obrazovku bez názvu proměnné end % konec cyklu for 10 7 4 1 -2 a a = 1 5 3 6 for n=1:length(a) % cyklus for s pevným počtem opakování od 1 do počtu prvků ve vektoru a (s krokem 1) disp(a(n)) % výpis n-tého prvku vektoru a na obrazovku bez názvu proměnné end % konec cyklu for 1 5 3 6 for n=1:length(d) % cyklus for s pevným počtem opakování od 1 do počtu prvků ve vektoru d (s krokem 1) disp(d(n)) % výpis n-tého prvku vektoru d na obrazovku bez názvu proměnné end % konec cyklu for 2.0000 + 3.0000i 6 -4.0000 + 5.0000i 7 -1.0000 - 3.0000i 6.0000 - 4.0000i 1 for n=1:length(d) % cyklus for s pevným počtem opakování od 1 do počtu prvků ve vektoru d (s krokem 1) disp(isreal(d(n))) % výpis testu, je-li n-tý prvek vektoru d reálný, na obrazovku bez názvu proměnné end % konec cyklu for 0 1 0 1 0 0 1 for n=1:length(d) % cyklus for s pevným počtem opakování od 1 do počtu prvků ve vektoru d (s krokem 1) disp([d(n),isreal(d(n))]) % výpis n-tého prvku vektoru d a testu, je-li n-tý prvek vektoru d reálný, na obrazovku bez názvu proměnné end % konec cyklu for 2.0000 + 3.0000i 0 6 1 -4.0000 + 5.0000i 0 7 1 -1.0000 - 3.0000i 0 6.0000 - 4.0000i 0 1 1 diary off % přeruší ukládání do textového souboru