Files
it-labs/ТЕМА1/report.md
Пользователь № 12 аудитории Ж-202 1a46f03a42 files: скрины занесены в assets
2026-02-12 09:54:53 +03:00

13 KiB

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

Евдоченко Наталья, А-03-24

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

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

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

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

3 Настройка отображений окон

4 Установка путей к папкам ТЕМА1 и ТЕМА2

Добавила пути к папкам ТЕМА1 и ТЕМА2 и проверила список файлов в текущей папке

Скриншот списка файлов

5 Изучение системы помощи

Открыла обширное ангоязычное описание методики рработы со средой

Скриншот расширенного англоязычного описания

Использовала более быстрый способ получения справок с помощью команды help

>> help randn
'randn' is a built-in function from the file libinterp/corefcn/rand.cc

 -- X = randn (N)
 -- X = randn (M, N, ...)
 -- X = randn ([M N ...])
 -- X = randn (..., "single")
 -- X = randn (..., "double")
 -- V = randn ("state")
 -- randn ("state", V)
 -- randn ("state", "reset")
 -- V = randn ("seed")
 -- randn ("seed", V)
 -- randn ("seed", "reset")
     Return a matrix with normally distributed random elements having
     zero mean and variance one.

Воспользовалась функцией из дополнительно загружаемых пакетов

Скриншот дополнительно загружаемых пакетов

6 Создание нескольких матриц с помощью различных команд

Матрица А со случайными, нормально распределенными элементами, с 4 строками и 6 столбцами

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

  -0.7052  -0.8818  -1.1144  -0.4998   0.8084  -0.8141
  -0.7136   0.2865  -0.2747  -1.9414  -0.6845  -0.4213
  -0.9317   0.4764  -1.1302   0.2482  -1.3404  -0.6040
  -2.0625   1.1710   0.2332  -0.1656   0.3384  -1.2633

Матрица В 4х7 со случайными элементами, равномерно распределенными в диапазоне от 0 до

>> B=rand(4,7)
B =

   0.302148   0.404094   0.234567   0.840058   0.376967   0.056362   0.878047
   0.432837   0.917329   0.366490   0.251031   0.275377   0.231369   0.144644
   0.838462   0.839366   0.019972   0.766134   0.849156   0.936181   0.652944
   0.910177   0.241217   0.295250   0.365846   0.103967   0.640409   0.132252

Вектор С с целыми числами от 4 до 27

>> C = 4:27
C =

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

Символьный вектор Н

>> H="This is a symbols vector"
H = This is a symbols vector

Вектор-строка L с 2 комплексными элементами

>> L=[-2+23.1j, 3-5.6j]
L =

   -2.0000 + 23.1000i    3.0000 -  5.6000i

7 Выполнение операций с матрицами

Преобразование матрицы С в матрицу с 6 столбцами

>> 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 =

  -3.180346   1.322897  -1.191036  -0.933906  -0.867910  -2.084580
  -2.219046   0.588858  -1.594785  -1.814432  -1.344676  -1.527155
  -1.054488   0.253421  -0.315813  -0.872676   0.011914  -0.730410
  -2.239845   0.124593  -1.785729  -0.777626  -0.395859  -1.714559
  -1.467883   0.272803  -1.431254  -0.529445  -0.986784  -1.067140
  -2.397905   1.212558  -1.035136  -0.350995  -1.150975  -1.517838
  -1.603472  -0.266859  -1.725379  -0.579492  -0.219650  -1.337202

Создание матрицы путем «горизонтального» соединения матриц А и В (числа строк у соединяемых матриц должны совпадать)

>> F=[A,B]
F =

 Columns 1 through 9:

  -0.705157  -0.881795  -1.114405  -0.499831   0.808407  -0.814087   0.302148   0.404094   0.234567
  -0.713565   0.286495  -0.274745  -1.941373  -0.684453  -0.421308   0.432837   0.917329   0.366490
  -0.931664   0.476435  -1.130236   0.248249  -1.340418  -0.604009   0.838462   0.839366   0.019972
  -2.062523   1.171037   0.233207  -0.165606   0.338372  -1.263280   0.910177   0.241217   0.295250

 Columns 10 through 13:

   0.840058   0.376967   0.056362   0.878047
   0.251031   0.275377   0.231369   0.144644
   0.766134   0.849156   0.936181   0.652944
   0.365846   0.103967   0.640409   0.132252

Поэлементное перемножение матриц A и D (размеры матриц должны совпадать)

G=A.*D
G =

   -2.8206   -7.0544  -13.3729   -7.9973   16.1681  -19.5381
   -3.5678    2.5785   -3.5717  -33.0033  -14.3735  -10.5327
   -5.5900    4.7644  -15.8233    4.4685  -29.4892  -15.7042
  -14.4377   12.8814    3.4981   -3.1465    7.7826  -34.1085

Поэлементное деление элементов матрицы G на 4.5

M=G./4.5
M =

  -0.6268  -1.5676  -2.9717  -1.7772   3.5929  -4.3418
  -0.7929   0.5730  -0.7937  -7.3341  -3.1941  -2.3406
  -1.2422   1.0587  -3.5163   0.9930  -6.5532  -3.4898
  -3.2084   2.8625   0.7774  -0.6992   1.7295  -7.5797

Поэлементное возведение в степень элементов матрицы D

>> 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

Создание логической матрицы, совпадающей по размерам с D и с элементами по заданному условию

>> 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

8 Изучение математических функций и операций с матрицами

Математические функции:

B1=sqrt(B)
B1 =

   0.5497   0.6357   0.4843   0.9165   0.6140   0.2374   0.9370
   0.6579   0.9578   0.6054   0.5010   0.5248   0.4810   0.3803
   0.9157   0.9162   0.1413   0.8753   0.9215   0.9676   0.8080
   0.9540   0.4911   0.5434   0.6049   0.3224   0.8003   0.3637
   
   >> B2=log(B)
B2 =

  -1.196838  -0.906107  -1.450013  -0.174285  -0.975597  -2.875958  -0.130055
  -0.837393  -0.086289  -1.003783  -1.382178  -1.289614  -1.463741  -1.933480
  -0.176186  -0.175109  -3.913414  -0.266398  -0.163512  -0.065946  -0.426264
  -0.094116  -1.422060  -1.219933  -1.005544  -2.263684  -0.445649  -2.023044

B3=sin(B)
B3 =

   0.297572   0.393186   0.232422   0.744682   0.368102   0.056332   0.769493
   0.419448   0.793981   0.358341   0.248403   0.271910   0.229310   0.144140
   0.743616   0.744220   0.019971   0.693355   0.750723   0.805300   0.607527
   0.789613   0.238884   0.290979   0.357739   0.103780   0.597523   0.131867

Операции с матрицами:

>> 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 15:

   11.500   12.689   13.879   15.068   16.258   17.447   18.637   19.826   21.016   22.205   23.395   24.584   25.774   26.963   28.153

 Columns 16 through 20:

   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.5497
   0.9578
   0.1413
   0.6049

>> DB=diag(B1D)
DB =

Diagonal Matrix

   0.5497        0        0        0
        0   0.9578        0        0
        0        0   0.1413        0
        0        0        0   0.6049

>> BS1=sort(B)
BS1 =

   0.302148   0.241217   0.019972   0.251031   0.103967   0.056362   0.132252
   0.432837   0.404094   0.234567   0.365846   0.275377   0.231369   0.144644
   0.838462   0.839366   0.295250   0.766134   0.376967   0.640409   0.652944
   0.910177   0.917329   0.366490   0.840058   0.849156   0.936181   0.878047

>> BS2=sortrows(B,2)
BS2 =

   0.910177   0.241217   0.295250   0.365846   0.103967   0.640409   0.132252
   0.302148   0.404094   0.234567   0.840058   0.376967   0.056362   0.878047
   0.838462   0.839366   0.019972   0.766134   0.849156   0.936181   0.652944
   0.432837   0.917329   0.366490   0.251031   0.275377   0.231369   0.144644

>> 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 = 407.92
>> dinv=inv(A*A')
dinv =

   2.7761e-01  -5.1542e-02  -5.5301e-03  -3.9597e-02
  -5.1542e-02   2.5608e-01  -6.5104e-02  -4.9109e-02
  -5.5301e-03  -6.5104e-02   2.8356e-01  -7.3056e-02
  -3.9597e-02  -4.9109e-02  -7.3056e-02   1.8320e-01

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 Изучение управляющих конструкций

Цикл по перечислению:

>> Dsum=0
Dsum = 0
>> for i=1:6
Dsum=Dsum+sqrt(D(2,i))
endfor
Dsum = 2.2361
Dsum = 5.2361
Dsum = 8.8416
Dsum = 12.965
Dsum = 17.547
Dsum = 22.547

Цикл пока выполняется условие:

>> Dsum2=0;i=1
i = 1
>> while (D(i)<22)
Dsum2=Dsum2+sin(D(i))
i=i+1
endwhile
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:

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(C)

Скриншот круговой диаграммы

Функция расчета и построения диаграммы столбцов:

>> bar(C)

Скриншот диаграммы столбцов

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

Создала сценарий Prog1.m

Скриншот сценария Prog1

Запустила программу из открытого файла на выполнение

>> 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

Запустила программу на выполнение вводом имени файла Prog1 командной строке

Скриншот программы Prog1

13 Сохранение и загрузка области переменных

Создала файл Perem. Сохранила и загрузила область переменных

Скриншот области переменных