Сравнить коммиты
20 Коммитов
| Автор | SHA1 | Дата | |
|---|---|---|---|
| c3310cf681 | |||
| ba5b3c4b1f | |||
| c717ce9d7c | |||
| 0a882ae16e | |||
| bb23662432 | |||
| 6d0213ad3a | |||
| a8713cd654 | |||
| 1bab6c177f | |||
| 233bdb55ea | |||
| 8d3c0cc2be | |||
| 7c58947cb3 | |||
| 819d5608ea | |||
| 726827521b | |||
| 0116024130 | |||
| 8adce4c392 | |||
| aaa5eb5241 | |||
| 671870544d | |||
| 52d1a07d2f | |||
| 96a36b9f8b | |||
| e45f3c7d74 |
84
ТЕМА1/Perem
Обычный файл
@@ -0,0 +1,84 @@
|
||||
# Created by Octave 10.3.0, Wed Feb 11 12:15:38 2026 UTC <unknown@DESKTOP-ASTD85S>
|
||||
# name: A
|
||||
# type: matrix
|
||||
# rows: 4
|
||||
# columns: 6
|
||||
-1.7549911675895713 -1.7725607154862144 -0.57197510173811239 -0.26855120247317654 0.45491148295236561 -0.97483029037396507
|
||||
0.7777993370195011 0.40622017361997736 0.73535182341744376 -0.80512489740458204 -0.28952150313756031 -1.2910248665920119
|
||||
-0.98604600885713711 1.4298737189540942 0.63240303807671738 -0.11228509046586291 -0.71981072117965295 -0.43988606819521336
|
||||
0.98041385926725155 -1.4805122774066495 -1.9652977233316609 0.77279406267017203 -0.52765554023833805 1.9755999681945642
|
||||
|
||||
|
||||
# name: B
|
||||
# type: matrix
|
||||
# rows: 4
|
||||
# columns: 6
|
||||
-0.65508737872360034 1.947077913226696 -0.68027980227068008 0.59710172772741688 -0.76404722087385546 -2.2243206101015942
|
||||
1.3337803628155518 -1.2640262691986839 -0.47249826053252691 0.042139071305758127 -0.093218821432076118 0.28293326757154952
|
||||
0.99446413299255665 0.28502515211958501 -1.9163100445944554 0.47244242950878185 -0.57428695111364425 1.2912864726146456
|
||||
2.2693759023507343 -1.6099420499047956 -0.6045558619634267 0.23003805298133698 -1.1459587107073901 -0.45960485383679223
|
||||
|
||||
|
||||
# name: C
|
||||
# type: double_range
|
||||
# base, limit, increment
|
||||
2 14 1
|
||||
|
||||
|
||||
# name: D
|
||||
# type: matrix
|
||||
# rows: 4
|
||||
# columns: 6
|
||||
4 8 12 16 20 24
|
||||
5 9 13 17 21 25
|
||||
6 10 14 18 22 26
|
||||
7 11 15 19 23 27
|
||||
|
||||
|
||||
# name: D1
|
||||
# type: scalar
|
||||
22
|
||||
|
||||
|
||||
# name: D2
|
||||
# type: matrix
|
||||
# rows: 1
|
||||
# columns: 3
|
||||
18 22 26
|
||||
|
||||
|
||||
# name: D3
|
||||
# type: matrix
|
||||
# rows: 2
|
||||
# columns: 3
|
||||
13 17 21
|
||||
14 18 22
|
||||
|
||||
|
||||
# name: D4
|
||||
# type: matrix
|
||||
# rows: 1
|
||||
# columns: 5
|
||||
19 20 21 22 23
|
||||
|
||||
|
||||
# name: D5
|
||||
# type: matrix
|
||||
# rows: 2
|
||||
# columns: 3
|
||||
6 14 26
|
||||
7 15 27
|
||||
|
||||
|
||||
# name: J
|
||||
# type: double_range
|
||||
# base, limit, increment
|
||||
4 27 1
|
||||
|
||||
|
||||
# name: N
|
||||
# type: double_range
|
||||
# base, limit, increment
|
||||
1 28 1
|
||||
|
||||
|
||||
5
ТЕМА1/Prog1.m
Обычный файл
@@ -0,0 +1,5 @@
|
||||
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])
|
||||
Двоичные данные
ТЕМА1/assets/ph1.png
Обычный файл
|
После Ширина: | Высота: | Размер: 120 KiB |
Двоичные данные
ТЕМА1/assets/ph10.png
Обычный файл
|
После Ширина: | Высота: | Размер: 27 KiB |
Двоичные данные
ТЕМА1/assets/ph11.png
Обычный файл
|
После Ширина: | Высота: | Размер: 9.6 KiB |
Двоичные данные
ТЕМА1/assets/ph12.png
Обычный файл
|
После Ширина: | Высота: | Размер: 23 KiB |
Двоичные данные
ТЕМА1/assets/ph15.png
Обычный файл
|
После Ширина: | Высота: | Размер: 6.1 KiB |
Двоичные данные
ТЕМА1/assets/ph2.png
Обычный файл
|
После Ширина: | Высота: | Размер: 4.0 KiB |
Двоичные данные
ТЕМА1/assets/ph3.png
Обычный файл
|
После Ширина: | Высота: | Размер: 11 KiB |
Двоичные данные
ТЕМА1/assets/ph4.png
Обычный файл
|
После Ширина: | Высота: | Размер: 38 KiB |
Двоичные данные
ТЕМА1/assets/ph5.png
Обычный файл
|
После Ширина: | Высота: | Размер: 93 KiB |
Двоичные данные
ТЕМА1/assets/ph55.png
Обычный файл
|
После Ширина: | Высота: | Размер: 36 KiB |
Двоичные данные
ТЕМА1/assets/ph6.png
Обычный файл
|
После Ширина: | Высота: | Размер: 6.3 KiB |
Двоичные данные
ТЕМА1/assets/ph7.png
Обычный файл
|
После Ширина: | Высота: | Размер: 43 KiB |
Двоичные данные
ТЕМА1/assets/ph8.png
Обычный файл
|
После Ширина: | Высота: | Размер: 20 KiB |
Двоичные данные
ТЕМА1/assets/ph9.png
Обычный файл
|
После Ширина: | Высота: | Размер: 6.1 KiB |
676
ТЕМА1/report.md
Обычный файл
@@ -0,0 +1,676 @@
|
||||
# Отчет по теме 1
|
||||
|
||||
Комаров Егор, А-03-24
|
||||
|
||||
## 1 Изучение среды GNU Octave
|
||||
|
||||
GUI GNU Octave запущен, произведено общее ознакомление с интерфейсом программы.
|
||||
|
||||

|
||||
|
||||
## 2 Настройка текущего каталога
|
||||
|
||||
В качестве текущей выберем папку ТЕМА 1.
|
||||
|
||||

|
||||
|
||||
## 3 Настройка рабочего пространства
|
||||
|
||||
Во вкладке Window активируем показ командного окна, журнала выполненных команд, диспетчера файлов, области переменных и редактора. После этого в интерфейсе среды появляются соответствующие окна.
|
||||
|
||||

|
||||
|
||||
## 4 Установка пути к рабочим репозиториям.
|
||||
|
||||
С помощью **Set path...** установливаем путь к папкам ТЕМА1 и ТЕМА2. Включаем отображение списка файлов в текущей папке.
|
||||
|
||||

|
||||
|
||||
## 5 Работа с системой помощи.
|
||||
|
||||
Просматриваем документацию по программе **(GNU Octave Manual)**.
|
||||
|
||||

|
||||
|
||||
Просматриваем список встроенных функций **Function Index**.
|
||||
|
||||

|
||||
|
||||
Используем команду **help** для получения информации по функции **randn**.
|
||||
|
||||

|
||||
|
||||
```matlab
|
||||
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.
|
||||
|
||||
The arguments are handled the same as the arguments for ‘rand’.
|
||||
|
||||
By default, ‘randn’ uses the Marsaglia and Tsang "Ziggurat
|
||||
technique" to transform from a uniform to a normal distribution.
|
||||
|
||||
The class of the value returned can be controlled by a trailing
|
||||
"double" or "single" argument. These are the only valid classes.
|
||||
|
||||
Reference: G. Marsaglia and W.W. Tsang, ‘Ziggurat Method for
|
||||
Generating Random Variables’, J. Statistical Software, vol 5, 2000,
|
||||
<https://www.jstatsoft.org/v05/i08/>
|
||||
|
||||
See also: rand, rande, randg, randp.
|
||||
|
||||
Additional help for built-in functions and operators is
|
||||
available in the online version of the manual. Use the command
|
||||
'doc <topic>' to search the manual index.
|
||||
|
||||
Help and information about Octave is also available on the WWW
|
||||
at https://www.octave.org and https://octave.discourse.group/c/help/
|
||||
```
|
||||
|
||||
|
||||
## 6 Способы задания матриц и векторов.
|
||||
|
||||
Создание нормально распределённой матрицы:
|
||||
|
||||
```matlab
|
||||
>> A=randn(4,6)
|
||||
A =
|
||||
|
||||
-0.487249 1.500163 -0.058514 0.447870 -0.831425 0.230160
|
||||
0.042227 0.690096 -0.052365 1.305950 -0.379213 -0.269474
|
||||
0.654921 0.941014 0.093497 0.561096 0.212812 -0.410104
|
||||
-0.148194 -0.678435 -1.008628 1.425202 0.760093 -2.166047
|
||||
```
|
||||
|
||||
Создание равномерно распределённой матрицы:
|
||||
|
||||
```matlab
|
||||
>> B=rand(4,7)
|
||||
B =
|
||||
|
||||
0.345536 0.704204 0.316431 0.818448 0.340374 0.749643 0.774945
|
||||
0.126996 0.730145 0.664247 0.153328 0.237525 0.663924 0.288564
|
||||
0.019296 0.989218 0.222881 0.216879 0.223590 0.603890 0.498865
|
||||
0.719244 0.753689 0.380854 0.641714 0.662913 0.353391 0.594957
|
||||
```
|
||||
|
||||
Создание вектора:
|
||||
|
||||
```matlab
|
||||
>>C=4:27
|
||||
C =
|
||||
|
||||
Columns 1 through 19:
|
||||
|
||||
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
||||
|
||||
Columns 20 through 24:
|
||||
|
||||
23 24 25 26 27
|
||||
```
|
||||
|
||||
Задание текста (символьного вектора):
|
||||
|
||||
```matlab
|
||||
>> H='This is a symbols vector'
|
||||
H = This is a symbols vector
|
||||
```
|
||||
|
||||
Задание вектора с комплексными числами:
|
||||
|
||||
```matlab
|
||||
>> L=[-2+23.1j, 3-5.6j]
|
||||
L =
|
||||
|
||||
-2.0000 + 23.1000i 3.0000 - 5.6000i
|
||||
```
|
||||
|
||||
## 7 Базовые операции с матрицами.
|
||||
|
||||
Формирование матрицы из вектора C. Количество строк – результат деления длины вектора на заданное количество столбцов матрицы.
|
||||
|
||||
```matlab
|
||||
>> 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
|
||||
```
|
||||
|
||||
Умножение транспонированной матрицы на матрицу:
|
||||
|
||||
```matlab
|
||||
>> E=B'*A
|
||||
E =
|
||||
|
||||
0.488550 0.011549 1.000897 2.699564 -0.504726 1.819611
|
||||
-0.151361 0.254209 0.624697 1.512441 0.183915 0.725667
|
||||
0.072425 0.313477 1.110223 2.959277 0.309335 1.753866
|
||||
0.333663 0.135882 1.735861 4.354475 -0.273429 1.707147
|
||||
0.038203 0.340325 1.835803 4.116933 -1.331504 2.154751
|
||||
-0.258805 0.328323 0.793725 1.274550 -1.792678 1.396500
|
||||
-0.015348 0.371355 1.553848 3.350191 -1.666793 2.328455
|
||||
```
|
||||
|
||||
Горизонтальная конкатенация матриц:
|
||||
|
||||
```matlab
|
||||
>> F=[A,B]
|
||||
F =
|
||||
|
||||
Columns 1 through 8:
|
||||
|
||||
1.148943 -0.660449 0.505361 2.144800 0.874353 -0.061676 0.831759 0.168296
|
||||
0.073393 -0.083308 1.300502 1.839412 -3.915271 0.771531 0.413143 0.094149
|
||||
-0.439376 0.422486 0.877189 2.021633 0.628780 0.429597 0.288750 0.547413
|
||||
-0.485810 0.620539 -0.275356 -0.561242 0.267499 1.872348 0.762738 0.228719
|
||||
|
||||
Columns 9 through 13:
|
||||
|
||||
0.632518 0.858376 0.634046 0.031583 0.540918
|
||||
0.232844 0.454478 0.678126 0.535694 0.709084
|
||||
0.770984 0.976534 0.934923 0.240303 0.664854
|
||||
0.684711 0.528709 0.677770 0.471018 0.816684
|
||||
```
|
||||
|
||||
Поэлементное умножение:
|
||||
|
||||
```matlab
|
||||
>> G=A.*D
|
||||
G =
|
||||
|
||||
4.5958 -5.2836 6.0643 34.3168 17.4871 -1.4802
|
||||
0.3670 -0.7498 16.9065 31.2700 -82.2207 19.2883
|
||||
-2.6363 4.2249 12.2806 36.3894 13.8332 11.1695
|
||||
-3.4007 6.8259 -4.1303 -10.6636 6.1525 50.5534
|
||||
```
|
||||
|
||||
Поэлементное деление:
|
||||
|
||||
```matlab
|
||||
M=G./4.5
|
||||
M =
|
||||
|
||||
1.0213e+00 -1.1741e+00 1.3476e+00 7.6260e+00 3.8860e+00 -3.2894e-01
|
||||
8.1547e-02 -1.6662e-01 3.7570e+00 6.9489e+00 -1.8271e+01 4.2863e+00
|
||||
-5.8583e-01 9.3886e-01 2.7290e+00 8.0865e+00 3.0740e+00 2.4821e+00
|
||||
-7.5570e-01 1.5169e+00 -9.1785e-01 -2.3697e+00 1.3672e+00 1.1234e+01
|
||||
```
|
||||
|
||||
Поэлементное возведение в степень:
|
||||
|
||||
```matlab
|
||||
>> 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
|
||||
```
|
||||
|
||||
Поэлементное сравнение. Формирование логической матрицы: элементы <20 соответствуют 0, а >=20 соответствуют 1:
|
||||
|
||||
```matlab
|
||||
>> 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
|
||||
```
|
||||
|
||||
Преобразование матрицы в столбец:
|
||||
|
||||
```matlab
|
||||
>> 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 Примеры использования стандартных математических функций.
|
||||
|
||||
Поэлементное взятие корня:
|
||||
|
||||
```matlab
|
||||
>> B1=sqrt(B)
|
||||
B1 =
|
||||
|
||||
Columns 1 through 5:
|
||||
|
||||
0.9120 0.4102 0.7953 0.9265 0.7963
|
||||
0.6428 0.3068 0.4825 0.6742 0.8235
|
||||
0.5374 0.7399 0.8781 0.9882 0.9669
|
||||
0.8733 0.4782 0.8275 0.7271 0.8233
|
||||
|
||||
Columns 6 and 7:
|
||||
|
||||
0.1777 0.7355
|
||||
0.7319 0.8421
|
||||
0.4902 0.8154
|
||||
0.6863 0.9037
|
||||
```
|
||||
|
||||
Поэлементное взятие логорифма:
|
||||
|
||||
```matlab
|
||||
>> B2=log(B)
|
||||
B2 =
|
||||
|
||||
Columns 1 through 4:
|
||||
|
||||
-0.184212 -1.782031 -0.458047 -0.152714
|
||||
-0.883960 -2.362875 -1.457387 -0.788605
|
||||
-1.242194 -0.602552 -0.260088 -0.023746
|
||||
-0.270841 -1.475262 -0.378758 -0.637316
|
||||
|
||||
Columns 5 through 7:
|
||||
|
||||
-0.455633 -3.455126 -0.614488
|
||||
-0.388422 -0.624192 -0.343782
|
||||
-0.067292 -1.425857 -0.408188
|
||||
-0.388948 -0.752859 -0.202503
|
||||
```
|
||||
|
||||
Поэлементное взятие синуса:
|
||||
|
||||
```matlab
|
||||
>> B3=sin(B)
|
||||
B3 =
|
||||
|
||||
Columns 1 through 4:
|
||||
|
||||
0.739117 0.167503 0.591177 0.756782
|
||||
0.401490 0.094010 0.230746 0.438994
|
||||
0.284754 0.520480 0.696841 0.828562
|
||||
0.690903 0.226730 0.632450 0.504419
|
||||
|
||||
Columns 5 through 7:
|
||||
|
||||
0.592410 0.031578 0.514923
|
||||
0.627335 0.510438 0.651139
|
||||
0.804553 0.237996 0.616944
|
||||
0.627057 0.453794 0.728880
|
||||
```
|
||||
|
||||
Количество столбцов матрицы:
|
||||
|
||||
```matlab
|
||||
>> k=length(B1)
|
||||
k = 7
|
||||
```
|
||||
|
||||
Количество строк и столбцов матрицы:
|
||||
|
||||
```matlab
|
||||
>> nm=size(B1)
|
||||
nm =
|
||||
|
||||
4 7
|
||||
```
|
||||
|
||||
Количество элементов матрицы:
|
||||
|
||||
```matlab
|
||||
>> elem=numel(B1)
|
||||
elem = 28
|
||||
```
|
||||
|
||||
Генерация вектора из 20 линейно расположенных точек между указанными значениями:
|
||||
|
||||
```matlab
|
||||
>> NN=linspace(11.5,34.1,20)
|
||||
NN =
|
||||
|
||||
Columns 1 through 8:
|
||||
|
||||
11.500 12.689 13.879 15.068 16.258 17.447 18.637 19.826
|
||||
|
||||
Columns 9 through 16:
|
||||
|
||||
21.016 22.205 23.395 24.584 25.774 26.963 28.153 29.342
|
||||
|
||||
Columns 17 through 20:
|
||||
|
||||
30.532 31.721 32.911 34.100
|
||||
```
|
||||
|
||||
Генерация матрицы из единиц:
|
||||
|
||||
```matlab
|
||||
>> FF=ones(2,4)
|
||||
FF =
|
||||
|
||||
1 1 1 1
|
||||
1 1 1 1
|
||||
```
|
||||
|
||||
Генерация квадратной матрицы из нулей:
|
||||
|
||||
```matlab
|
||||
>> 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
|
||||
```
|
||||
|
||||
Формирование столбца из значений диагонали матрицы:
|
||||
|
||||
```matlab
|
||||
>> B1D=diag(B1)
|
||||
B1D =
|
||||
|
||||
0.9120
|
||||
0.3068
|
||||
0.8781
|
||||
0.7271
|
||||
```
|
||||
|
||||
Формирование матрицы с указанной в векторе диагональю:
|
||||
|
||||
```matlab
|
||||
>> DB=diag(B1D)
|
||||
DB =
|
||||
|
||||
Diagonal Matrix
|
||||
|
||||
0.9120 0 0 0
|
||||
0 0.3068 0 0
|
||||
0 0 0.8781 0
|
||||
0 0 0 0.7271
|
||||
```
|
||||
|
||||
Сортировка матрицы по столбцам:
|
||||
|
||||
```matlab
|
||||
>> BS1=sort(B)
|
||||
BS1 =
|
||||
|
||||
0.288750 0.094149 0.232844 0.454478 0.634046 0.031583 0.540918
|
||||
0.413143 0.168296 0.632518 0.528709 0.677770 0.240303 0.664854
|
||||
0.762738 0.228719 0.684711 0.858376 0.678126 0.471018 0.709084
|
||||
0.831759 0.547413 0.770984 0.976534 0.934923 0.535694 0.816684
|
||||
```
|
||||
|
||||
Сортировка матрицы по строкам:
|
||||
|
||||
```matlab
|
||||
>> BS2=sortrows(B,2)
|
||||
BS2 =
|
||||
|
||||
0.413143 0.094149 0.232844 0.454478 0.678126 0.535694 0.709084
|
||||
0.831759 0.168296 0.632518 0.858376 0.634046 0.031583 0.540918
|
||||
0.762738 0.228719 0.684711 0.528709 0.677770 0.471018 0.816684
|
||||
0.288750 0.547413 0.770984 0.976534 0.934923 0.240303 0.664854
|
||||
```
|
||||
|
||||
Суммирование матрицы по столбцам:
|
||||
|
||||
```matlab
|
||||
>> DS1=sum(D)
|
||||
DS1 =
|
||||
|
||||
22 38 54 70 86 102
|
||||
```
|
||||
|
||||
Суммирование матрицы по строкам. Такие вводные функции означают, что матрица суммируется по второй размерности:
|
||||
|
||||
```matlab
|
||||
>> DS2=sum(D,2)
|
||||
DS2 =
|
||||
|
||||
84
|
||||
90
|
||||
96
|
||||
102
|
||||
```
|
||||
|
||||
Произведение элементов по столбцам:
|
||||
|
||||
```matlab
|
||||
>> DP1=prod(D)
|
||||
DP1 =
|
||||
|
||||
840 7920 32760 93024 212520 421200
|
||||
```
|
||||
|
||||
Определитель произведения матрицы и транспонированной матрицы:
|
||||
|
||||
```matlab
|
||||
>> dt=det(A*A')
|
||||
dt = 1388.8
|
||||
```
|
||||
|
||||
Обратная матрица произведения матрицы и транспонированной матрицы:
|
||||
|
||||
```matlab
|
||||
>> dinv=inv(A*A')
|
||||
dinv =
|
||||
|
||||
0.374568 0.025819 -0.305610 0.189828
|
||||
0.025819 0.053005 -0.044695 0.025517
|
||||
-0.305610 -0.044695 0.432459 -0.163317
|
||||
0.189828 0.025517 -0.163317 0.317169
|
||||
```
|
||||
|
||||
## 9 Работа с индексацией.
|
||||
|
||||
Извлечение элемента из 3 строки 5 столбца:
|
||||
|
||||
```matlab
|
||||
>> D1=D(3,5)
|
||||
D1 = 22
|
||||
```
|
||||
|
||||
Извлечение элементов из 3 строки 4, 5 и 6 столбцов:
|
||||
|
||||
```matlab
|
||||
>> D2=D(3,4:end)
|
||||
D2 =
|
||||
|
||||
18 22 26
|
||||
```
|
||||
|
||||
Извлечение элементов из 2 и 3 строк 3, 4 и 5 столбцов:
|
||||
|
||||
```matlab
|
||||
>> D3=D(2:3,3:5)
|
||||
D3 =
|
||||
|
||||
13 17 21
|
||||
14 18 22
|
||||
```
|
||||
|
||||
Извлечение элементов под номерами 16-20:
|
||||
|
||||
```matlab
|
||||
>> D4=D(16:20)
|
||||
D4 =
|
||||
|
||||
19 20 21 22 23
|
||||
```
|
||||
|
||||
Извлечение элементов 3 и 4 строк 1, 3 и 6 столбцов:
|
||||
|
||||
```matlab
|
||||
>> D5=D(3:4,[1,3,6])
|
||||
D5 =
|
||||
|
||||
6 14 26
|
||||
7 15 27
|
||||
```
|
||||
|
||||
## 10 Создание запуск базовой программы на m-языке.
|
||||
|
||||
Программный код:
|
||||
|
||||
```matlab
|
||||
- цикл по перечислению
|
||||
Dsum=0
|
||||
for i=1:6
|
||||
Dsum=Dsum+sqrt(D(2,i))
|
||||
endfor
|
||||
- цикл пока выполняется условие
|
||||
Dsum2=0;i=1
|
||||
while (D(i)<22)
|
||||
Dsum2=Dsum2+sin(D(i))
|
||||
i=i+1
|
||||
endwhile
|
||||
- условие if
|
||||
if (D(3,5)>=20)
|
||||
printf('D(3,5)>=20')
|
||||
else
|
||||
printf('D(3,5)<20')
|
||||
endif
|
||||
```
|
||||
|
||||
Результат работы программы:
|
||||
|
||||
```matlab
|
||||
Dsum = 0
|
||||
Dsum = 2.2361
|
||||
Dsum = 5.2361
|
||||
Dsum = 8.8416
|
||||
Dsum = 12.965
|
||||
Dsum = 17.547
|
||||
Dsum = 22.547
|
||||
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
|
||||
D(3,5)>=20
|
||||
```
|
||||
## 11 Создание графических функций.
|
||||
|
||||
Воспользуемся функцией построения графиков **plot()** в виде **plot(D(1,:),B([2,4],1:6))**:
|
||||
|
||||

|
||||
|
||||
Воспользуемся функцией расчёта и построения гистрограммы **hist()** в виде **hist(A(:),6)**. На выходе получаем гистограмму из 6 столбцов размер каждого соответствует количеству значений столбца-вектора A, попадающих в отрезок этого столбца:
|
||||
|
||||

|
||||
|
||||
Воспользуемся функцией расчёта и построения круговой диаграммы **pie()** в виде **pie(C1)**. C1 - вектор содержащий ряд из 13 последовательных чисел. На выходе получаем круговую диаграмму, где размер доли соответствует доле числа в общей сумме чисел вектора:
|
||||
|
||||

|
||||
|
||||
Воспользуемся функцией расчёта и построения гистрограммы **bar()** в виде **bar(K)**. K - вектор имеющий нормальное распределение. На выходе получаем столбчатую диаграмму, где по оси y — значение элемента, а по x — его номер:
|
||||
|
||||

|
||||
|
||||
## 12 Использование текстового редактора среды.
|
||||
|
||||
Создадим новый сценарий и запустим с его помощью команды пункта 9. Скрипт сохраним под названием Prog1.
|
||||
|
||||
Запустим скрипт через командную строку, введя название файла:
|
||||
|
||||
```matlab
|
||||
>> 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
|
||||
```
|
||||
|
||||
## 13 Сохранение области переменных.
|
||||
|
||||
Сохраним существующую область переменным под названием Perem.
|
||||
|
||||

|
||||
|
||||
Завершим сеанс и для нового загрузим файл Perem.
|
||||
|
||||
## 14 Окончание работы.
|
||||
|
||||
Закроем приложение GUI GNU Octave.
|
||||
181
ТЕМА1/task.md
Обычный файл
@@ -0,0 +1,181 @@
|
||||
# Контрольное задание по теме 1.
|
||||
|
||||
Комаров Егор, А-03-24
|
||||
|
||||
## Задание 1:
|
||||
|
||||
Создайте переменную ММ – матрицу 5х7 со случайными нормально распределенными элементами с математическим ожиданием 10 и стандартным отклонением 8.
|
||||
|
||||
## Решение:
|
||||
|
||||
```matlab
|
||||
>> MM=randn(5,7)*8+10
|
||||
MM =
|
||||
|
||||
28.1527 13.4458 10.9555 7.6667 12.6378 9.2147 9.8023
|
||||
16.6164 11.8658 5.7105 -1.6662 0.9891 7.4128 12.2133
|
||||
29.7457 23.3815 7.9986 11.5438 4.6299 20.8105 0.8708
|
||||
13.6755 8.2890 24.7054 11.2460 16.5975 1.2757 8.0440
|
||||
9.6014 20.2747 11.7695 13.9071 13.0849 -0.4976 9.4186
|
||||
```
|
||||
|
||||
## Задание 2:
|
||||
|
||||
Рассчитайте среднее значение SR по всем элементам матрицы ММ.
|
||||
|
||||
## Решение:
|
||||
|
||||
```matlab
|
||||
>> SR = sum(sum(MM))/numel(MM)
|
||||
SR = 11.583
|
||||
```
|
||||
|
||||
## Задание 3:
|
||||
|
||||
Замените в ММ все значения, превышающие SR+8, на значение SR+8, а значения, меньшие, чем SR-8, - на SR-8.
|
||||
|
||||
## Решение:
|
||||
|
||||
```matlab
|
||||
>> MM(MM<SR-8)=SR-8
|
||||
MM =
|
||||
|
||||
28.1527 13.4458 10.9555 7.6667 12.6378 9.2147 9.8023
|
||||
16.6164 11.8658 5.7105 3.5826 3.5826 7.4128 12.2133
|
||||
29.7457 23.3815 7.9986 11.5438 4.6299 20.8105 3.5826
|
||||
13.6755 8.2890 24.7054 11.2460 16.5975 3.5826 8.0440
|
||||
9.6014 20.2747 11.7695 13.9071 13.0849 3.5826 9.4186
|
||||
|
||||
>> MM(MM>SR+8)=SR+8
|
||||
MM =
|
||||
|
||||
19.5826 13.4458 10.9555 7.6667 12.6378 9.2147 9.8023
|
||||
16.6164 11.8658 5.7105 3.5826 3.5826 7.4128 12.2133
|
||||
19.5826 19.5826 7.9986 11.5438 4.6299 19.5826 3.5826
|
||||
13.6755 8.2890 19.5826 11.2460 16.5975 3.5826 8.0440
|
||||
9.6014 19.5826 11.7695 13.9071 13.0849 3.5826 9.4186
|
||||
```
|
||||
|
||||
## Задание 4.1:
|
||||
|
||||
Превратите ММ в вектор – столбец ММС.
|
||||
|
||||
## Решение:
|
||||
|
||||
```matlab
|
||||
>> MMC=MM(:)
|
||||
MMC =
|
||||
|
||||
19.5826
|
||||
16.6164
|
||||
19.5826
|
||||
13.6755
|
||||
9.6014
|
||||
13.4458
|
||||
11.8658
|
||||
19.5826
|
||||
8.2890
|
||||
19.5826
|
||||
10.9555
|
||||
5.7105
|
||||
7.9986
|
||||
19.5826
|
||||
11.7695
|
||||
7.6667
|
||||
3.5826
|
||||
11.5438
|
||||
11.2460
|
||||
13.9071
|
||||
12.6378
|
||||
3.5826
|
||||
4.6299
|
||||
16.5975
|
||||
13.0849
|
||||
9.2147
|
||||
7.4128
|
||||
19.5826
|
||||
3.5826
|
||||
3.5826
|
||||
9.8023
|
||||
12.2133
|
||||
3.5826
|
||||
8.0440
|
||||
9.4186
|
||||
```
|
||||
|
||||
## Задание 4.2:
|
||||
|
||||
Упорядочьте его элементы по возрастанию.
|
||||
|
||||
## Решение:
|
||||
|
||||
```matlab
|
||||
>> MMC=sort(MMC)
|
||||
MMC =
|
||||
|
||||
3.5826
|
||||
3.5826
|
||||
3.5826
|
||||
3.5826
|
||||
3.5826
|
||||
4.6299
|
||||
5.7105
|
||||
7.4128
|
||||
7.6667
|
||||
7.9986
|
||||
8.0440
|
||||
8.2890
|
||||
9.2147
|
||||
9.4186
|
||||
9.6014
|
||||
9.8023
|
||||
10.9555
|
||||
11.2460
|
||||
11.5438
|
||||
11.7695
|
||||
11.8658
|
||||
12.2133
|
||||
12.6378
|
||||
13.0849
|
||||
13.4458
|
||||
13.6755
|
||||
13.9071
|
||||
16.5975
|
||||
16.6164
|
||||
19.5826
|
||||
19.5826
|
||||
19.5826
|
||||
19.5826
|
||||
19.5826
|
||||
19.5826
|
||||
```
|
||||
|
||||
## Задание 4.3:
|
||||
|
||||
Определите значение медианы, в качестве которого возьмите серединное по порядку индексов значение в упорядоченном векторе.
|
||||
|
||||
## Решение:
|
||||
|
||||
```matlab
|
||||
>> MED=(MMC(17)+MMC(18))/2
|
||||
MED = 11.101
|
||||
>> MED=(MMC(17)+MMC(18))/2
|
||||
MED = 11.101
|
||||
```
|
||||
|
||||
## Задание 5:
|
||||
|
||||
Рассчитайте матрицу ММ1 с элементами, равными натуральным логарифмам от значений соответствующих элементов из матрицы ММ.
|
||||
|
||||
## Решение:
|
||||
|
||||
```matlab
|
||||
>> MM1 = log(MM)
|
||||
MM1 =
|
||||
|
||||
2.9746 2.5987 2.3938 2.0369 2.5367 2.2208 2.2826
|
||||
2.8104 2.4737 1.7423 1.2761 1.2761 2.0032 2.5025
|
||||
2.9746 2.9746 2.0793 2.4461 1.5325 2.9746 1.2761
|
||||
2.6156 2.1149 2.9746 2.4200 2.8093 1.2761 2.0849
|
||||
2.2619 2.9746 2.4655 2.6324 2.5715 1.2761 2.2427
|
||||
```
|
||||