Files
it-labs/ТЕМА1/report.md
2026-02-12 08:02:30 +03:00

10 KiB

Отчет по теме 1

Иевлев Михаил, А-03-24

1 Изучение среды GNU Octave

Запустил среду GNU Octave

2 Настройка текущего каталога

Нажал на окно рядом с Текущая папка: и установил путь к папке ТЕМА1:

Скриншот выбора текущей папки

3 Ознакомление с интерефейсом Octave

Открыл командное окно, журнал выполненных команд, диспетчер файлов, область переменных и редактор.

4 Установление пути

Установил пути к папкам TEMA1 и TEMA2.

5 Открытие мануалов

Открыл документацию через «Справка» + Документация + На диске» и help randn

6 Создание матриц и векторов

>> A=randn(4,6)
A =

   1.597723   1.277021   0.015167   1.309341   0.185252  -0.361744
   1.233637  -0.730546   1.060699  -0.369914  -1.960105   2.189985
  -1.675882   2.510296   0.708574  -2.152905  -2.884376   0.275914
   0.612264  -0.483651  -0.154699  -0.382876   1.252928  -0.608606
>> B=rand(4,7)
B =

   2.4001e-01   6.3320e-01   2.5302e-03   7.1201e-01   4.4206e-01   3.6183e-01   4.6930e-01
   1.8981e-01   7.5095e-01   5.5027e-01   4.2271e-01   2.1783e-01   2.9008e-01   7.3649e-01
   2.5354e-01   5.1838e-01   9.7046e-01   2.9602e-02   9.6376e-01   2.5712e-01   1.8791e-01
   7.2239e-01   6.2262e-02   2.4428e-01   8.9849e-01   5.2660e-01   8.8235e-01   4.9401e-03
>> C=4:27
C =

 Columns 1 through 18:

    4    5    6    7    8    9   10   11   12   13   14   15   16   17   18   19   20   21

 Columns 19 through 24:

   22   23   24   25   26   27
>> H='This is a symbols vector'
H = This is a symbols vector
>> L=[-2+23.1j, 3-5.6j]
L =

   -2.0000 + 23.1000i    3.0000 -  5.6000i

Скриншот о появлении строки с информацией о созданных матрицах и о введенных в командном окне команд

7 Преобразование матриц и векторов

>> D=reshape(C,[],6)
D =

    4    8   12   16   20   24
    5    9   13   17   21   25
    6   10   14   18   22   26
    7   11   15   19   23   27
>> E=B'*A
E =

   0.635016   0.454906   0.272876  -0.578397  -0.153802  -0.040823
   1.107451   1.531177   1.163814  -0.588577  -2.771832   1.520649
  -0.793939   1.919235   1.233564  -2.383083  -3.571232   1.323263
   2.159571   0.240189   0.341151   0.368150   0.343700   0.129514
  -0.317719   2.570023   0.839194  -1.778290  -2.465148   0.262563
   1.045291   0.468839   0.358866  -0.524928  -0.137664   0.038324
   1.346475   0.530598   0.920695  -0.064413  -1.892477   1.491971
>> F=[A,B]
F =

 Columns 1 through 7:

   1.5977e+00   1.2770e+00   1.5167e-02   1.3093e+00   1.8525e-01  -3.6174e-01   2.4001e-01
   1.2336e+00  -7.3055e-01   1.0607e+00  -3.6991e-01  -1.9601e+00   2.1900e+00   1.8981e-01
  -1.6759e+00   2.5103e+00   7.0857e-01  -2.1529e+00  -2.8844e+00   2.7591e-01   2.5354e-01
   6.1226e-01  -4.8365e-01  -1.5470e-01  -3.8288e-01   1.2529e+00  -6.0861e-01   7.2239e-01

 Columns 8 through 13:

   6.3320e-01   2.5302e-03   7.1201e-01   4.4206e-01   3.6183e-01   4.6930e-01
   7.5095e-01   5.5027e-01   4.2271e-01   2.1783e-01   2.9008e-01   7.3649e-01
   5.1838e-01   9.7046e-01   2.9602e-02   9.6376e-01   2.5712e-01   1.8791e-01
   6.2262e-02   2.4428e-01   8.9849e-01   5.2660e-01   8.8235e-01   4.9401e-03
>> G=A.*D
G =

    6.3909   10.2162    0.1820   20.9495    3.7050   -8.6819
    6.1682   -6.5749   13.7891   -6.2885  -41.1622   54.7496
  -10.0553   25.1030    9.9200  -38.7523  -63.4563    7.1738
    4.2858   -5.3202   -2.3205   -7.2746   28.8173  -16.4324
>> M=G./4.5
M =

   1.4202e+00   2.2703e+00   4.0445e-02   4.6554e+00   8.2334e-01  -1.9293e+00
   1.3707e+00  -1.4611e+00   3.0642e+00  -1.3975e+00  -9.1472e+00   1.2167e+01
  -2.2345e+00   5.5784e+00   2.2045e+00  -8.6116e+00  -1.4101e+01   1.5942e+00
   9.5241e-01  -1.1823e+00  -5.1566e-01  -1.6166e+00   6.4039e+00  -3.6516e+00
>> DDD=D.^3
DDD =

      64     512    1728    4096    8000   13824
     125     729    2197    4913    9261   15625
     216    1000    2744    5832   10648   17576
     343    1331    3375    6859   12167   19683
>> DL=D>=20
DL =

  0  0  0  0  1  1
  0  0  0  0  1  1
  0  0  0  0  1  1
  0  0  0  0  1  1
>> Dstolb=D(:)
Dstolb =

    4
    5
    6
    7
    8
    9
   10
   11
   12
   13
   14
   15
   16
   17
   18
   19
   20
   21
   22
   23
   24
   25
   26
   27

8 Стандартные функции

>> B1=sqrt(B)

B1 =

   0.489906   0.795737   0.050301   0.843805   0.664875   0.601523   0.685055
   0.435677   0.866574   0.741802   0.650165   0.466727   0.538592   0.858188
   0.503528   0.719986   0.985121   0.172052   0.981715   0.507068   0.433490
   0.849934   0.249524   0.494248   0.947889   0.725674   0.939335   0.070286

>> B2=log(B)

B2 =

  -1.427084  -0.456973  -5.979464  -0.339667  -0.816312  -1.016581  -0.756511
  -1.661706  -0.286416  -0.597345  -0.861059  -1.524022  -1.237592  -0.305863
  -1.372231  -0.657047  -0.029982  -3.519917  -0.036909  -1.358221  -1.671775
  -0.325194  -2.776401  -1.409436  -0.107037  -0.641308  -0.125166  -5.310368


>> B3=sin(B)

B3 =

   2.3771e-01   5.9173e-01   2.5302e-03   6.5335e-01   4.2780e-01   3.5399e-01   4.5226e-01
   1.8868e-01   6.8233e-01   5.2292e-01   4.1024e-01   2.1612e-01   2.8603e-01   6.7169e-01
   2.5083e-01   4.9547e-01   8.2515e-01   2.9598e-02   8.2134e-01   2.5429e-01   1.8681e-01
   6.6118e-01   6.2222e-02   2.4186e-01   7.8239e-01   5.0260e-01   7.7223e-01   4.9401e-03
>> k=length(B1)

k = 7

>> nm=size(B1)

nm =

   4   7

>> elem=numel(B1)

elem = 28

>> NN=linspace(11.5,34.1,20)

NN =

 Columns 1 through 10:

   11.500   12.689   13.879   15.068   16.258   17.447   18.637   19.826   21.016   22.205

 Columns 11 through 20:

   23.395   24.584   25.774   26.963   28.153   29.342   30.532   31.721   32.911   34.100

>> FF=ones(2,4)

FF =

   1   1   1   1
   1   1   1   1

>> GG=zeros(5)

GG =

   0   0   0   0   0
   0   0   0   0   0
   0   0   0   0   0
   0   0   0   0   0
   0   0   0   0   0

>> B1D=diag(B1)

B1D =

   0.4899
   0.8666
   0.9851
   0.9479

>> DB=diag(B1D)

DB =

Diagonal Matrix

   0.4899        0        0        0
        0   0.8666        0        0
        0        0   0.9851        0
        0        0        0   0.9479

>> BS1=sort(B)

BS1 =

   1.8981e-01   6.2262e-02   2.5302e-03   2.9602e-02   2.1783e-01   2.5712e-01   4.9401e-03
   2.4001e-01   5.1838e-01   2.4428e-01   4.2271e-01   4.4206e-01   2.9008e-01   1.8791e-01
   2.5354e-01   6.3320e-01   5.5027e-01   7.1201e-01   5.2660e-01   3.6183e-01   4.6930e-01
   7.2239e-01   7.5095e-01   9.7046e-01   8.9849e-01   9.6376e-01   8.8235e-01   7.3649e-01

>> BS2=sortrows(B,2)

BS2 =

   7.2239e-01   6.2262e-02   2.4428e-01   8.9849e-01   5.2660e-01   8.8235e-01   4.9401e-03
   2.5354e-01   5.1838e-01   9.7046e-01   2.9602e-02   9.6376e-01   2.5712e-01   1.8791e-01
   2.4001e-01   6.3320e-01   2.5302e-03   7.1201e-01   4.4206e-01   3.6183e-01   4.6930e-01
   1.8981e-01   7.5095e-01   5.5027e-01   4.2271e-01   2.1783e-01   2.9008e-01   7.3649e-01

>> DS1=sum(D)

DS1 =

    22    38    54    70    86   102

>> DS2=sum(D,2)

DS2 =

    84
    90
    96
   102

>> DP1=prod(D)

DP1 =

      840     7920    32760    93024   212520   421200

>> dt=det(A*A')

dt = 1694.3

>> dinv=inv(A*A')

dinv =

   0.179791   0.010567   0.034995   0.058353
   0.010567   0.110303   0.014284   0.136288
   0.034995   0.014284   0.089572   0.185021
   0.058353   0.136288   0.185021   0.857589

9 Индексация элементов матриц

>> D1=D(3,5)

D1 = 22

>> D2=D(3,4:end)

D2 =

   18   22   26

>> D3=D(2:3,3:5)

D3 =

   13   17   21
   14   18   22

>> D4=D(16:20)

D4 =

   19   20   21   22   23

>> D5=D(3:4,[1,3,6])

D5 =

    6   14   26
    7   15   27

10 Конструкции для использования в программах на m-языке

>> Dsum=0

for i=1:6

Dsum=Dsum+sqrt(D(2,i))

endfor

Dsum = 0
Dsum = 2.2361
Dsum = 5.2361
Dsum = 8.8416
Dsum = 12.965
Dsum = 17.547
Dsum = 22.547
>> Dsum2=0;i=1

while (D(i)<22)

Dsum2=Dsum2+sin(D(i))

i=i+1

endwhile

i = 1
Dsum2 = -0.7568
i = 2
Dsum2 = -1.7157
i = 3
Dsum2 = -1.9951
i = 4
Dsum2 = -1.3382
i = 5
Dsum2 = -0.3488
i = 6
Dsum2 = 0.063321
i = 7
Dsum2 = -0.4807
i = 8
Dsum2 = -1.4807
i = 9
Dsum2 = -2.0173
i = 10
Dsum2 = -1.5971
i = 11
Dsum2 = -0.6065
i = 12
Dsum2 = 0.043799
i = 13
Dsum2 = -0.2441
i = 14
Dsum2 = -1.2055
i = 15
Dsum2 = -1.9565
i = 16
Dsum2 = -1.8066
i = 17
Dsum2 = -0.8937
i = 18
Dsum2 = -0.057011
i = 19
>> if (D(3,5)>=20)

printf('D(3,5)>=20')

else

printf('D(3,5)<20')

endif

D(3,5)>=20

11 Использование графических функций

>> plot(D(1,:),B([2,4],1:6))

Вывод

>> hist(A(:),6)

Вывод

>> pie([1 3 0.5 2.5 2])

Вывод

>> bar([1 3 0.5 2.5 2])

Вывод

12 Работа с текстовым редактором

Prog1.m

D1=D(3,5)

D2=D(3,4:end)

D3=D(2:3,3:5)

D4=D(16:20)

D5=D(3:4,[1,3,6])

CL

>> Prog1

D1 = 22
D2 =

   18   22   26

D3 =

   13   17   21
   14   18   22

D4 =

   19   20   21   22   23

D5 =

    6   14   26
    7   15   27

12 Сохранение и использование области переменных

Сохранил область для папки TEMA1 с названием Perem, перезашел в данную папку и выбрал сохраненную область переменных Perem