Сравнить коммиты

8 Коммитов
main ... main

Автор SHA1 Сообщение Дата
7b416dd619 task 2026-02-12 10:05:00 +03:00
0e54d38f3d task 2026-02-12 10:02:42 +03:00
dc2c816776 task 2026-02-12 10:01:18 +03:00
614328cc22 task 2026-02-12 09:42:36 +03:00
dd0de8ad26 otchet 2026-02-12 09:34:08 +03:00
79f280494c otchet 2026-02-12 09:31:48 +03:00
048ed5642e otchet 2026-02-12 09:28:59 +03:00
ec494626bd otchet 2026-02-11 22:31:03 +03:00
14 изменённых файлов: 1181 добавлений и 28 удалений

Просмотреть файл

@@ -2,53 +2,42 @@
[Репозиторий с методическими указаниями и заданиями.](http://uit.mpei.ru/git/main/it)
**Работы проверяются только после того, как закоммичены по правилам ниже.**
## Работа с Git
**Работы проверяются только после того, как закоммичены по правилам ниже.**
[Лабораторная работа про Git второго семестра][gitlab]
поможет вспомнить, как работать с Git.
[gitlab]: http://uit.mpei.ru/git/main/cs/src/branch/main/labs/lab02
1. Один раз в начале семестра
1. В начале семестра
создать на сервере копию этого репозитория («форкнуть» его), нажав *Fork*.
Получится репозиторий-форк `http://uit.mpei.ru/git/IvanovII/it-labs`,
где `IvanovII` — ваше имя пользователя.
2. В начале каждого занятия:
1. Настроить Git, чтобы не было проблем с вводом пароля:
Клонировать свой форк на рабочий стол
(`IvanovII` заменить на свое имя пользователя):
```sh
git config --global credential.helper ""
git config --global core.askpass ""
git clone http://uit.mpei.ru/git/IvanovII/it-labs.git
```
2. Клонировать свой форк на рабочий стол
(`IvanovII` заменить на свое имя пользователя):
Перебазировать свой форк на исходный репозиторий ("апстрим"):
```sh
git clone http://uit.mpei.ru/git/IvanovII/it-labs.git
```
```sh
# Первую команду нужно запускать только один раз,
# иначе будет ошибка "error: remote upstream already exists".
git remote add upstream http://uit.mpei.ru/git/main/it-labs.git
git fetch upstream
git stash push
git rebase upstream/main
git stash pop
```
Не клонируйте на диск L (students) в компьютерном классе —
не будет работать Git.
Не клонируйте в папку, в пути к которой есть русские буквы и пробелы —
не будет работать Octave.
3. Перейти в клонированную папку и настроить имя пользователя и почту,
чтобы у коммитов был правильный автор:
```sh
cd it-labs
git config user.name "Иванов И. И."
git config user.email "IvanovII@mpei.ru"
```
Если вы работаете со своего компьютера, а не с лабораторного,
то все эти шаги нужно сделать один раз, а не каждое занятие.
Перебазировать нужно, чтобы подтянуть из исходного репозитория обновления.
3. После того, как отчет написан, закоммитить его как `TEMAn/report.md`.

351
ТЕМА1/Perem Обычный файл
Просмотреть файл

@@ -0,0 +1,351 @@
# Created by Octave 8.3.0, Wed Feb 11 10:45:28 2026 GMT <unknown@w10prog-56>
# name: A
# type: matrix
# rows: 4
# columns: 6
-0.49961216799536634 0.73574332058745695 -1.4083538751250311 -0.14566206211667387 0.017863211775500584 0.80796356634075106
0.065261175045992326 -0.93387431302891188 -1.4183857700013964 1.5389152284998671 -0.074219376625527092 0.58380926566438962
0.606362954282331 0.93324459076542632 0.53857160267056992 1.0963840687506055 0.15846728604624788 -0.54797357396866242
1.1126937083502504 0.25416779924328053 0.59198742296398099 0.753771967611094 0.37990610214780912 -2.1629012180637903
# name: B
# type: matrix
# rows: 4
# columns: 7
0.57698638787272005 0.18970642911370528 0.30264542865574517 0.48736324631540151 0.43280092078882426 0.023380488578641501 0.12197145436865042
0.56038722785344175 0.13132972371804807 0.96064402796334503 0.73281787741616489 0.082143119004015941 0.29696780946196544 0.01435486322402646
0.807299128592188 0.50415868612371417 0.39457565823282115 0.20740929439424316 0.93227336820470807 0.39751988122280979 0.49228114398292655
0.58944460252786224 0.4977524141264652 0.74236943137694733 0.32142383705747368 0.6317766560577921 0.46773071857187465 0.78769865360535729
# name: B1
# type: matrix
# rows: 4
# columns: 7
0.75959620053862831 0.43555301527334794 0.55013219198274987 0.69811406397192821 0.65787606795567832 0.15290679703218396 0.34924411858848881
0.74859016013666768 0.3623944311355351 0.98012449615512875 0.85604782425759651 0.28660620894184402 0.54494752909061384 0.11981178249248468
0.8984982629878524 0.71004132705337242 0.62815257559992632 0.45542210573735126 0.96554304316519624 0.6304917772840577 0.70162749659839196
0.7677529567040835 0.70551570792326457 0.86160863005017962 0.56694253417561968 0.79484379349516976 0.68390841387708823 0.88752388903361767
# name: B1D
# type: matrix
# rows: 4
# columns: 1
0.75959620053862831
0.3623944311355351
0.62815257559992632
0.56694253417561968
# name: B2
# type: matrix
# rows: 4
# columns: 7
-0.54993660396077182 -1.6622775116628694 -1.1951933611505663 -0.71874554827609993 -0.83747742393636071 -3.7558534258665044 -2.1039682422114407
-0.57912725590419989 -2.0300441431103602 -0.040151356986067352 -0.31085806988245213 -2.4992921993702044 -1.2141315317035344 -4.2436664935613324
-0.2140610119918972 -0.68486420704663709 -0.92994437449143608 -1.573061170332368 -0.070129193780183091 -0.92251033048362419 -0.70870529483466538
-0.52857453707977919 -0.69765248597131024 -0.29790827376608336 -1.134994662101986 -0.45921933960667854 -0.75986253633043388 -0.23863968154770085
# name: B3
# type: matrix
# rows: 4
# columns: 7
0.54550067808570402 0.18857059898869827 0.29804644416992448 0.46829776044575339 0.41941510495748785 0.02337835849024672 0.1216692503048462
0.53151423886617388 0.13095253099185403 0.81956076129516875 0.66896679472914999 0.082050773491500861 0.29262209030539771 0.014354370230233348
0.72242228830141819 0.4830709727596843 0.38441648818135477 0.20592541294153055 0.80297696501372484 0.38713280633092645 0.47263739023882712
0.55589943477451609 0.47745188715327036 0.67603576777043162 0.31591779786175661 0.59057941433507777 0.45086190165747797 0.70873160088385834
# name: BS1
# type: matrix
# rows: 4
# columns: 7
0.56038722785344175 0.13132972371804807 0.30264542865574517 0.20740929439424316 0.082143119004015941 0.023380488578641501 0.01435486322402646
0.57698638787272005 0.18970642911370528 0.39457565823282115 0.32142383705747368 0.43280092078882426 0.29696780946196544 0.12197145436865042
0.58944460252786224 0.4977524141264652 0.74236943137694733 0.48736324631540151 0.6317766560577921 0.39751988122280979 0.49228114398292655
0.807299128592188 0.50415868612371417 0.96064402796334503 0.73281787741616489 0.93227336820470807 0.46773071857187465 0.78769865360535729
# name: BS2
# type: matrix
# rows: 4
# columns: 7
0.56038722785344175 0.13132972371804807 0.96064402796334503 0.73281787741616489 0.082143119004015941 0.29696780946196544 0.01435486322402646
0.57698638787272005 0.18970642911370528 0.30264542865574517 0.48736324631540151 0.43280092078882426 0.023380488578641501 0.12197145436865042
0.58944460252786224 0.4977524141264652 0.74236943137694733 0.32142383705747368 0.6317766560577921 0.46773071857187465 0.78769865360535729
0.807299128592188 0.50415868612371417 0.39457565823282115 0.20740929439424316 0.93227336820470807 0.39751988122280979 0.49228114398292655
# name: C
# type: double_range
# base, limit, increment
4 27 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: DB
# type: diagonal matrix
# rows: 4
# columns: 4
0.75959620053862831
0.3623944311355351
0.62815257559992632
0.56694253417561968
# name: DDD
# type: matrix
# rows: 4
# columns: 6
64 512 1728 4096 8000 13824
125 729 2197 4913 9261 15625
216 1000 2744 5832 10648 17576
343 1331 3375 6859 12167 19683
# name: DL
# type: bool matrix
# rows: 4
# columns: 6
0 0 0 0 1 1
0 0 0 0 1 1
0 0 0 0 1 1
0 0 0 0 1 1
# name: DP1
# type: matrix
# rows: 1
# columns: 6
840 7920 32760 93024 212520 421200
# name: DS1
# type: matrix
# rows: 1
# columns: 6
22 38 54 70 86 102
# name: DS2
# type: matrix
# rows: 4
# columns: 1
84
90
96
102
# name: Dstolb
# type: matrix
# rows: 24
# columns: 1
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# name: Dsum
# type: scalar
22.547300573537278
# name: Dsum2
# type: scalar
-0.057010896737607175
# name: E
# type: matrix
# rows: 7
# columns: 6
0.89368969407805388 0.80440802579406689 -0.82371410818184521 2.1077601328795823 0.32057934263189153 -0.92394580188855646
0.77334022161588756 0.61394578495435193 0.11273872462045081 1.1024156502904463 0.2626333941037905 -1.1229075473026615
0.97677327669985026 -0.11752942574775121 -1.1368150703389066 2.4264494991586427 0.2786658291986584 -1.016529416617816
0.28774354138414543 -0.050526347313819928 -1.4238147408019988 1.5264347799950793 0.1092950518959781 0.012734792466586486
1.057398094143861 1.2723353980597474 0.15005231150010384 1.5617138238912101 0.38938524076161518 -1.4796883789613871
0.76918164893004703 0.22973679550160658 0.036840705470654239 1.2419994030099997 0.21906453579701982 -1.03722258925948
1.1149667772365723 0.73596039283376169 0.53929663655741922 1.1377986716777029 0.37837537493692619 -1.8665424417949463
# name: F
# type: matrix
# rows: 4
# columns: 13
-0.49961216799536634 0.73574332058745695 -1.4083538751250311 -0.14566206211667387 0.017863211775500584 0.80796356634075106 0.57698638787272005 0.18970642911370528 0.30264542865574517 0.48736324631540151 0.43280092078882426 0.023380488578641501 0.12197145436865042
0.065261175045992326 -0.93387431302891188 -1.4183857700013964 1.5389152284998671 -0.074219376625527092 0.58380926566438962 0.56038722785344175 0.13132972371804807 0.96064402796334503 0.73281787741616489 0.082143119004015941 0.29696780946196544 0.01435486322402646
0.606362954282331 0.93324459076542632 0.53857160267056992 1.0963840687506055 0.15846728604624788 -0.54797357396866242 0.807299128592188 0.50415868612371417 0.39457565823282115 0.20740929439424316 0.93227336820470807 0.39751988122280979 0.49228114398292655
1.1126937083502504 0.25416779924328053 0.59198742296398099 0.753771967611094 0.37990610214780912 -2.1629012180637903 0.58944460252786224 0.4977524141264652 0.74236943137694733 0.32142383705747368 0.6317766560577921 0.46773071857187465 0.78769865360535729
# name: FF
# type: matrix
# rows: 2
# columns: 4
1 1 1 1
1 1 1 1
# name: G
# type: matrix
# rows: 4
# columns: 6
-1.9984486719814654 5.8859465646996556 -16.900246501500373 -2.330592993866782 0.35726423551001169 19.391125592178025
0.32630587522996163 -8.4048688172602066 -18.439015010018153 26.16155888449774 -1.558606909136069 14.59523164160974
3.638177725693986 9.3324459076542627 7.5400024373879786 19.734913237510899 3.4862802930174532 -14.247312923185223
7.7888559584517525 2.7958457916760859 8.8798113444597142 14.321667384610786 8.73784034939961 -58.39833288772234
# name: GG
# type: matrix
# rows: 5
# columns: 5
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
# name: H
# type: sq_string
# elements: 1
# length: 24
This is a symbols vector
# name: L
# type: complex matrix
# rows: 1
# columns: 2
(-2,23.100000000000001) (3,-5.5999999999999996)
# name: M
# type: matrix
# rows: 4
# columns: 6
-0.44409970488477007 1.3079881254888124 -3.7556103336667497 -0.51790955419261819 0.079392052335558155 4.3091390204840057
0.072512416717769257 -1.8677486260578238 -4.0975588911151455 5.8136797521106089 -0.34635709091912648 3.2433848092466087
0.808483939043108 2.0738768683676141 1.6755560971973287 4.3855362750024218 0.77472895400387853 -3.1660695384856052
1.7308568796559449 0.621299064816908 1.9732914098799366 3.1825927521357302 1.9417422998665801 -12.977407308382743
# name: NN
# type: matrix
# rows: 1
# columns: 20
11.5 12.689473684210526 13.878947368421052 15.06842105263158 16.257894736842104 17.44736842105263 18.63684210526316 19.826315789473686 21.015789473684212 22.205263157894738 23.394736842105264 24.58421052631579 25.773684210526316 26.963157894736842 28.152631578947371 29.342105263157897 30.531578947368423 31.721052631578949 32.910526315789475 34.100000000000001
# name: ans
# type: scalar
156
# name: dinv
# type: matrix
# rows: 4
# columns: 4
0.54922357193948401 -0.096613343540855962 -0.14780056377925344 0.29179204606192699
-0.096613343540855962 0.2034495802200994 -0.010114999759658898 -0.0043428192489578452
-0.14780056377925344 -0.010114999759658898 0.71004096904783931 -0.39860747778408595
0.29179204606192699 -0.0043428192489578452 -0.39860747778408595 0.45464142082732445
# name: dt
# type: scalar
103.70328629132538
# name: elem
# type: scalar
28
# name: i
# type: scalar
6
# name: k
# type: scalar
7
# name: nm
# type: matrix
# rows: 1
# columns: 2
4 7

9
ТЕМА1/Prog1.m Обычный файл
Просмотреть файл

@@ -0,0 +1,9 @@
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/figure1.PNG Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 2.0 KiB

Двоичные данные
ТЕМА1/assets/figure11.1.PNG Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 14 KiB

Двоичные данные
ТЕМА1/assets/figure11.2.PNG Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 40 KiB

Двоичные данные
ТЕМА1/assets/figure11.3.PNG Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 17 KiB

Двоичные данные
ТЕМА1/assets/figure11.PNG Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 22 KiB

Двоичные данные
ТЕМА1/assets/figure12.PNG Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 8.4 KiB

Двоичные данные
ТЕМА1/assets/figure13.PNG Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 51 KiB

Двоичные данные
ТЕМА1/assets/figure3.PNG Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 60 KiB

Двоичные данные
ТЕМА1/assets/figure4.PNG Обычный файл

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 25 KiB

656
ТЕМА1/report.md Обычный файл
Просмотреть файл

@@ -0,0 +1,656 @@
#Отчет по теме 1
Шабанова Рания, А-03-24
## 1 Изучение среды GNU Octave.
## 2 Настройка текущего каталога.
Нажала на окно рядом с *Текущая папка:* и установила путь к папке ТЕМА1:
![скриншот выбора текущей папки](assets/figure1.PNG)
## 3 Настройка командного окна.
Нажала на *Окно* и отметила галочками нужные закладки:
![скриншот настроенного интерфейса](assets/figure3.PNG)
## 4 Установка пути к папкам.
В главном меню нажала "Правка"+"Установить путь" и добавила пути к папкам ТЕМА1 и ТЕМА2:
![скриншот выбора путей](assets/figure4.PNG)
## 5 Изучение работы со справкой.
"Справка"+"Документация"+"На диске" -> GNU Octave Manual -> Function Index
Команда help Пример работы команды:
```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/
```
Для дополнительно подгружаемых пакетов "Справка"+"Пакеты Octave"
## 6 Создание матриц и векторов.
Из-за постоянных предупреждений воспользовалаь командой:
```matlab
>> warning('off','all')
```
Создание матрицы со случайными, нормально распределенными элементами:
```matlab
>>A = randn(4, 6)
A =
-0.4321 1.1729 0.3541 1.5892 0.4530 0.2627
-1.7323 -0.9788 -0.4989 1.6601 0.7393 0.2212
0.7755 -1.0102 0.2191 -0.2449 0.3585 0.2069
1.1003 0.5001 -0.2061 -2.0966 1.6449 -1.0841
```
Создание матрицы со случайными, равномерно распределенными элементами в диапазоне от 0 до 1:
```matlab
>> B = rand(4, 7)
B =
0.373271 0.844238 0.711102 0.953539 0.219433 0.675295 0.340843
0.551754 0.356287 0.959939 0.909888 0.696343 0.642488 0.113784
0.084194 0.670743 0.578236 0.339736 0.720005 0.705143 0.967447
0.128237 0.483455 0.044278 0.968504 0.127631 0.899501 0.195310
```
Создание вектора с целыми числами от 4 до 27:
```matlab
>> 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
```
Создание символьного вектора:
```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 Операции с матрицами.
Преобразование вектора С в матрицу с 6 столбцами:
```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.910683 -0.123162 -0.151095 1.219653 0.818133 0.098530
0.070163 0.205633 0.168516 0.755192 1.681531 -0.084697
-1.472997 -0.667516 -0.109583 2.489169 1.311971 0.470816
-0.659044 0.368938 -0.241469 0.912002 2.819514 -0.527820
-0.602273 -1.087712 -0.138278 1.060741 1.082316 0.222294
0.131844 -0.099328 -0.112298 0.081094 2.513291 -0.509676
0.620796 -0.591256 0.235644 0.084094 0.906638 0.103147
```
Создание матрицы путем горизонтального соединения матриц А и В:
```matlab
>> F=[A,B]
F =
Columns 1 through 8:
-0.432076 1.172859 0.354099 1.589192 0.452953 0.262740 0.373271 0.844238
-1.732292 -0.978753 -0.498940 1.660060 0.739344 0.221213 0.551754 0.356287
0.775511 -1.010206 0.219102 -0.244935 0.358536 0.206887 0.084194 0.670743
1.100337 0.500081 -0.206064 -2.096644 1.644885 -1.084062 0.128237 0.483455
Columns 9 through 13:
0.711102 0.953539 0.219433 0.675295 0.340843
0.959939 0.909888 0.696343 0.642488 0.113784
0.578236 0.339736 0.720005 0.705143 0.967447
0.044278 0.968504 0.127631 0.899501 0.195310
```
Поэлементное перемножение матриц:
```matlab
>> G=A.*D
G =
-1.7283 9.3829 4.2492 25.4271 9.0591 6.3058
-8.6615 -8.8088 -6.4862 28.2210 15.5262 5.5303
4.6531 -10.1021 3.0674 -4.4088 7.8878 5.3791
7.7024 5.5009 -3.0910 -39.8362 37.8323 -29.2697
```
Поэлементное деление матрицы G на 4.5:
```matlab
>> M=G./4.5
M =
-0.3841 2.0851 0.9443 5.6505 2.0131 1.4013
-1.9248 -1.9575 -1.4414 6.2713 3.4503 1.2290
1.0340 -2.2449 0.6816 -0.9797 1.7528 1.1953
1.7116 1.2224 -0.6869 -8.8525 8.4072 -6.5044
```
Поэлементное возведение в степень матрицы D:
```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
```
Создание логической матрицы, которая совпадает по размерам с матрицей D по заданному условию:
```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 =
0.6110 0.9188 0.8433 0.9765 0.4684 0.8218 0.5838
0.7428 0.5969 0.9798 0.9539 0.8345 0.8016 0.3373
0.2902 0.8190 0.7604 0.5829 0.8485 0.8397 0.9836
0.3581 0.6953 0.2104 0.9841 0.3573 0.9484 0.4419
```
Логарифм элемента:
```matlab
>> B2=log(B)
B2 =
-0.985451 -0.169321 -0.340939 -0.047575 -1.516709 -0.392605 -1.076334
-0.594652 -1.032019 -0.040885 -0.094434 -0.361912 -0.442407 -2.173455
-2.474630 -0.399370 -0.547774 -1.079588 -0.328497 -0.349355 -0.033094
-2.053872 -0.726797 -3.117275 -0.032002 -2.058612 -0.105915 -1.633166
```
Синус элемента:
```matlab
>> B3=sin(B)
B3 =
0.364663 0.747465 0.652669 0.815469 0.217676 0.625128 0.334282
0.524182 0.348797 0.819157 0.789435 0.641417 0.599189 0.113538
0.084095 0.621568 0.546547 0.333238 0.659388 0.648143 0.823440
0.127886 0.464841 0.044263 0.824039 0.127285 0.783016 0.194071
```
Другие операции с матрицами.
Длина матрицы:
```matlab
k=length(B1)
k = 7
```
Размер матрицы:
```matlab
>> nm=size(B1)
nm =
4 7
```
Количество элементов в матрице:
```matlab
>> elem=numel(B1)
elem = 28
```
Матрица из 20 элементов со значениями от 11.5 до 34.1:
```matlab
>> 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
```
Единичная матрица 2х4:
```matlab
>> FF=ones(2,4)
FF =
1 1 1 1
1 1 1 1
```
Нулевая квадратная матрица 5х5:
```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.6110
0.5969
0.7604
0.9841
```
Расположение элементов по главной диагонали:
```matlab
>> DB=diag(B1D)
DB =
Diagonal Matrix
0.6110 0 0 0
0 0.5969 0 0
0 0 0.7604 0
0 0 0 0.9841
```
Сортировка значений матрицы по возрастанию:
```matlab
>> BS1=sort(B)
BS1 =
0.084194 0.356287 0.044278 0.339736 0.127631 0.642488 0.113784
0.128237 0.483455 0.578236 0.909888 0.219433 0.675295 0.195310
0.373271 0.670743 0.711102 0.953539 0.696343 0.705143 0.340843
0.551754 0.844238 0.959939 0.968504 0.720005 0.899501 0.967447
```
Сортировка строк матрицы по возрастанию по определенному столбцу():
```matlab
>> BS2=sortrows(B,2)
BS2 =
0.551754 0.356287 0.959939 0.909888 0.696343 0.642488 0.113784
0.128237 0.483455 0.044278 0.968504 0.127631 0.899501 0.195310
0.084194 0.670743 0.578236 0.339736 0.720005 0.705143 0.967447
0.373271 0.844238 0.711102 0.953539 0.219433 0.675295 0.340843
```
Суммирование строк по колонне:
```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 = 225.78
```
Обратная матрицы для произведения матрицы А на её же транспонированную матрицу:
```matlab
>> dinv=inv(A*A')
dinv =
0.396533 -0.082236 0.287856 0.039764
-0.082236 0.209140 -0.061884 0.086233
0.287856 -0.061884 0.777679 -0.040941
0.039764 0.086233 -0.040941 0.161014
```
## 9 Индексация элементов матрицы:
Извлечение элемента, находящегося на пересечении 3 строки и 5 столбца матрицы:
```matlab
>> D1=D(3,5)
D1 = 22
```
Извлечение части 3 строки матрицы D с 4 столбца и до конца:
```matlab
>> D2=D(3,4:end)
D2 =
18 22 26
```
Извлечение подматрицы из матрицы D строки со 2 по 3 и столбцы с 3 по 5:
```matlab
>> D3=D(2:3,3:5)
D3 =
13 17 21
14 18 22
```
Извлечение элементов с 16 по 20 включительно из матрицы D как вектор:
```matlab
>> D4=D(16:20)
D4 =
19 20 21 22 23
```
Извлечение подматрицы из D: строки 3–4 и столбцы 1, 3 и 6:
```matlab
>> D5=D(3:4,[1,3,6])
D5 =
6 14 26
7 15 27
```
## 10 Изучение некоторых управляющих конструкций.
Цикл по перечислению (С 1 по 6 столбец):
```matlab
>> 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
```
Цикл пока выполняется условие (он продолжается, пока значение первого элемента матрицы D меньше 22):
```matlab
>> 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 (проверка условия, что значение в матрице D в 3 строке и 5 столбце >=20)
```matlab
>> if (D(3,5)>=20)
printf('D(3,5)>=20')
else
printf('D(3,5)<20')
endif
D(3,5)>=20
```
## 11 Использование графических функций.
Функция построения графиков:
```matlab
>> plot(D(1,:),B([2,4],1:6))
```
![скриншот графика](assets/figure11.PNG)
Функция расчета и построения гистограммы:
```matlab
>> hist(A(:),6)
```
![скриншот гистограммы](assets/figure11.1.PNG)
Функция графика "Пирог":
```matlab
>> pie(C)
```
![скриншот пирога](assets/figure11.2.PNG)
Функция столбчатой диаграммы:
```matlab
>> bar(B)
```
![скриншот диаграммы](assets/figure11.3.PNG)
## 12 Изучение работы с текстовым редактором среды.
Создала файл и занесла в него команды из 9 пункта:
![скриншот команд](assets/figure12.PNG)
```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),перезапустила IDE, загрузила область переменных:
![скриншот конечный](assets/figure13.PNG)

148
ТЕМА1/task.md Обычный файл
Просмотреть файл

@@ -0,0 +1,148 @@
# Общее контрольное задание по теме 1
Шабанова Рания, А-03-24
## Решение
- Создайте переменную ММ – матрицу 5х7 со случайными нормально распределенными элементами с математическим ожиданием 10 и стандартным отклонением 8.
```matlab
>> MM=10+8*randn(5,7)
MM =
0.1406 14.9802 12.7207 9.0749 8.5773 15.4073 6.9935
13.8795 24.9492 9.1119 9.4800 -3.7672 21.7140 5.7326
19.2962 16.2804 9.4359 5.9329 24.7377 2.2018 21.7807
17.2418 24.7828 5.7255 19.3644 8.4500 -1.2598 0.9687
23.6906 17.2696 14.2765 2.4179 5.6787 24.4171 6.2295
```
- Рассчитайте среднее значение SR по всем элементам матрицы ММ.
```matlab
>> SR=sum(MM(:))/numel(MM)
SR = 11.940
```
- Замените в ММ все значения, превышающие SR+8, на значение SR+8, а значения, меньшие, чем SR-8, - на SR-8.
```matlab
>> MM(MM>SR+8)=SR+8
MM =
0.1406 14.9802 12.7207 9.0749 8.5773 15.4073 6.9935
13.8795 19.9404 9.1119 9.4800 -3.7672 19.9404 5.7326
19.2962 16.2804 9.4359 5.9329 19.9404 2.2018 19.9404
17.2418 19.9404 5.7255 19.3644 8.4500 -1.2598 0.9687
19.9404 17.2696 14.2765 2.4179 5.6787 19.9404 6.2295
>> MM(MM<SR-8)=SR-8
MM =
3.9404 14.9802 12.7207 9.0749 8.5773 15.4073 6.9935
13.8795 19.9404 9.1119 9.4800 3.9404 19.9404 5.7326
19.2962 16.2804 9.4359 5.9329 19.9404 3.9404 19.9404
17.2418 19.9404 5.7255 19.3644 8.4500 3.9404 3.9404
19.9404 17.2696 14.2765 3.9404 5.6787 19.9404 6.2295
```
- Превратите ММ в вектор – столбец ММС. Упорядочьте его элементы по возрастанию. Определите значение медианы, в качестве которого возьмите серединное по порядку индексов значение в упорядоченном векторе.
```matlab
>> MMC=MM(:)
MMC =
3.9404
13.8795
19.2962
17.2418
19.9404
14.9802
19.9404
16.2804
19.9404
17.2696
12.7207
9.1119
9.4359
5.7255
14.2765
9.0749
9.4800
5.9329
19.3644
3.9404
8.5773
3.9404
19.9404
8.4500
5.6787
15.4073
19.9404
3.9404
3.9404
19.9404
6.9935
5.7326
19.9404
3.9404
6.2295
>> MMC1=sort(MMC)
MMC1 =
3.9404
3.9404
3.9404
3.9404
3.9404
3.9404
5.6787
5.7255
5.7326
5.9329
6.2295
6.9935
8.4500
8.5773
9.0749
9.1119
9.4359
9.4800
12.7207
13.8795
14.2765
14.9802
15.4073
16.2804
17.2418
17.2696
19.2962
19.3644
19.9404
19.9404
19.9404
19.9404
19.9404
19.9404
19.9404
>> >> Med=MMC1(floor(numel(MMC1)/2)+1)
Med = 9.4800
```
- Рассчитайте матрицу ММ1 с элементами, равными натуральным логарифмам от значений соответствующих элементов из матрицы ММ.
```matlab
>> MM1=log(MM)
MM1 =
1.3713 2.7067 2.5432 2.2055 2.1491 2.7348 1.9450
2.6304 2.9927 2.2096 2.2492 1.3713 2.9927 1.7462
2.9599 2.7900 2.2445 1.7805 2.9927 1.3713 2.9927
2.8473 2.9927 1.7449 2.9634 2.1342 1.3713 1.3713
2.9927 2.8490 2.6586 1.3713 1.7367 2.9927 1.8293```