diff --git a/ТЕМА1/report.md b/ТЕМА1/report.md index e69de29..84d60b7 100644 --- a/ТЕМА1/report.md +++ b/ТЕМА1/report.md @@ -0,0 +1,583 @@ +# Отчет по теме 1 + +Дмитриев Денис, А-03-24 + +## 1 Изучение среды GNU Octave + +## 2 Настройка текущего католога + +Нажал на окно рядом с *Текущая папка:* и установил путь к папке TEMA1: + +![Скриншот выбора текущей папки](screens/1.png) + +## 3 Работа с предложением *Окно* + +Отметил галочками предложения, которые указаны в методическом задании: + +![Скриншот выбора нужных для работы окон](screens/2.png) + +## 4 Отображение списка файлов, размещенных в текущей папке + +Выбрал в главном меню предложения "Правка" + "Установить путь" и добавил в появившийся список пути к папкам TEMA1 и TEMA2: + +![Скриншот отображения списка файлов](screens/3.png) + +## 5 Изучил работу с системной помощи + +3 способа взаимодействия с системой помощи: + +В главном меню выберите предложения «Справка» + « Документация» + « На диске». + +Ввод в командную строку help randn. + +Также можно использовать функции из дополнительных пакетов. Список пакетов можно получить выбрав в меню «Справка» + «Пакеты Octave». + + +## 6 Создание матрицы + +Создал матрицу A с размерами 4x6 и случайными, нормально распределенными элементами: + +```matlab +>> A = randn(4, 6) +A = + + 0.771762 1.105541 0.730124 2.126274 -1.003519 -0.173919 + 0.444238 0.910021 1.645450 -1.097477 -0.395713 -1.081679 + -1.191087 -1.175833 1.129577 -1.678835 2.090537 -0.393653 + -1.157870 1.019957 0.037269 3.236657 0.895129 -1.517315 + +>> +``` + +Создал матрицу B с размерами 4x7, со случайными элементами, равномерно распределенными в диапазоне от 0 до 1: + +```matlab +>> B = rand(4, 7) +B = + + 0.694982 0.394179 0.323789 0.508678 0.970610 0.117920 0.892635 + 0.734522 0.627452 0.289060 0.477757 0.643385 0.933351 0.963873 + 0.336235 0.814269 0.233545 0.013444 0.149924 0.667995 0.949852 + 0.195053 0.396269 0.730697 0.216455 0.782906 0.132764 0.189516 + +>> +``` + +Создал вектор C с целыми числами от 4 до 27: + +```matlab +>> 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: + +```matlab +ࠀ>> H = 'This is a symbols vector' +H = This is a symbols vector +>> +``` + +Создал вектор-строку L с 2 комплексными элементами: + +```matlab +>> L = [-2+23.1j, 3-5.6j] +L = + + -2.0000 + 23.1000i 3.0000 - 5.6000i + +>> +``` + +## 7 Выполнение следующих операций + +Преобразовал матрицу C в матрицу с 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 + +>> +``` + +Сделал матричное перемножение B и A с транспонированием матрицы B: + +```matlab +>> E = B'*A +E = + + 0.236331 1.240351 2.103116 0.738438 -0.110577 -1.343705 + -0.845742 0.453508 2.254787 0.065083 1.413113 -1.669059 + -0.745924 1.091683 1.003080 2.344160 0.702988 -1.569616 + 0.338176 1.202100 1.180775 1.235283 -0.477663 -0.938971 + -0.050181 2.280788 1.965852 3.639985 -0.214397 -2.111676 + -0.443727 0.329697 2.381378 -1.465343 1.027634 -1.494497 + -0.233701 0.940419 3.317734 -0.141089 0.878150 -1.859314 + +>> +``` + +Создал матрицы путем горизонтального соединения матриц A и B: + +```matlab + +>> F=[A,B] +F = + + Columns 1 through 12: + + 0.771762 1.105541 0.730124 2.126274 -1.003519 -0.173919 0.694982 0.394179 0.323789 0.508678 0.970610 0.117920 + 0.444238 0.910021 1.645450 -1.097477 -0.395713 -1.081679 0.734522 0.627452 0.289060 0.477757 0.643385 0.933351 + -1.191087 -1.175833 1.129577 -1.678835 2.090537 -0.393653 0.336235 0.814269 0.233545 0.013444 0.149924 0.667995 + -1.157870 1.019957 0.037269 3.236657 0.895129 -1.517315 0.195053 0.396269 0.730697 0.216455 0.782906 0.132764 + + Column 13: + + 0.892635 + 0.963873 + 0.949852 + 0.189516 + +>> +``` + +Поэлементарно перемножил матрицы A и D: + +```matlab + +>> G = A.*D +G = + + 3.0870 8.8443 8.7615 34.0204 -20.0704 -4.1740 + 2.2212 8.1902 21.3908 -18.6571 -8.3100 -27.0420 + -7.1465 -11.7583 15.8141 -30.2190 45.9918 -10.2350 + -8.1051 11.2195 0.5590 61.4965 20.5880 -40.9675 + +>> +``` + +Поэлементарно поделил элементы матрицы G на 4.5: + +```matlab + +>> M =G./4.5 +M = + + 0.6860 1.9654 1.9470 7.5601 -4.4601 -0.9276 + 0.4936 1.8200 4.7535 -4.1460 -1.8467 -6.0093 + -1.5881 -2.6130 3.5142 -6.7153 10.2204 -2.2744 + -1.8011 2.4932 0.1242 13.6659 4.5751 -9.1039 + +>> +``` + +Поэлементарно возвел в степень элементы матрицы 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.8337 0.6278 0.5690 0.7132 0.9852 0.3434 0.9448 + 0.8570 0.7921 0.5376 0.6912 0.8021 0.9661 0.9818 + 0.5799 0.9024 0.4833 0.1159 0.3872 0.8173 0.9746 + 0.4416 0.6295 0.8548 0.4652 0.8848 0.3644 0.4353 + +>> +``` + +Логарифм: + +```matlab +>> B2 = log(B) +B2 = + + -0.363869 -0.930950 -1.127662 -0.675940 -0.029831 -2.137750 -0.113577 + -0.308535 -0.466089 -1.241120 -0.738654 -0.441012 -0.068974 -0.036796 + -1.089944 -0.205465 -1.454382 -4.309246 -1.897627 -0.403475 -0.051449 + -1.634482 -0.925662 -0.313757 -1.530371 -0.244742 -2.019182 -1.663281 + +>> +``` + +Синус: +```matlab +>> B3 = sin(B) +B3 = + + 0.640372 0.384050 0.318161 0.487023 0.825230 0.117647 0.778728 + 0.670233 0.587084 0.285052 0.459788 0.599907 0.803619 0.821407 + 0.329936 0.727224 0.231427 0.013443 0.149363 0.619413 0.813330 + 0.193819 0.385979 0.667389 0.214769 0.705343 0.132374 0.188384 + +>> +``` + +- Операции с матрицами: + +```matlab +>> k = length(B1) +k = 7 +>> +``` + +```matlab +>> nm = size(B1) +nm = + + 4 7 + +>> +``` + +```matlab +>> elem = numel(B1) +elem = 28 +>> +``` + +```matlab +>> 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 + +>> +``` + +```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.8337 + 0.7921 + 0.4833 + 0.4652 + +>> +``` + +```matlab +>> DB = diag(B1D) +DB = + +Diagonal Matrix + + 0.8337 0 0 0 + 0 0.7921 0 0 + 0 0 0.4833 0 + 0 0 0 0.4652 + +>> +``` + +```matlab +>> BS1=sort(B) +BS1 = + + 0.195053 0.394179 0.233545 0.013444 0.149924 0.117920 0.189516 + 0.336235 0.396269 0.289060 0.216455 0.643385 0.132764 0.892635 + 0.694982 0.627452 0.323789 0.477757 0.782906 0.667995 0.949852 + 0.734522 0.814269 0.730697 0.508678 0.970610 0.933351 0.963873 + +>> +``` + +```matlab +>> BS2=sortrows(B,2) +BS2 = + + 0.694982 0.394179 0.323789 0.508678 0.970610 0.117920 0.892635 + 0.195053 0.396269 0.730697 0.216455 0.782906 0.132764 0.189516 + 0.734522 0.627452 0.289060 0.477757 0.643385 0.933351 0.963873 + 0.336235 0.814269 0.233545 0.013444 0.149924 0.667995 0.949852 + +>> +``` + +```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 = 1255.5 +>> +``` + +```matlab +฀>> dinv = inv(A*A') +dinv = + + 0.8194 -0.3173 0.4800 -0.2872 + -0.3173 0.2928 -0.2075 0.1266 + 0.4800 -0.2075 0.3753 -0.1545 + -0.2872 0.1266 -0.1545 0.1674 + +>> +``` + +## 9 Изучение работы с индексацией элементов матрицы + +```matlab +>> D1 = D(3,5) +D1 = 22 +>> +``` + +```matlab +ࠀ>> D2 = D(3,4:end) +D2 = + + 18 22 26 + +>> +``` + +```matlab +>> D3 = D(2:3,3:5) +D3 = + + 13 17 21 + 14 18 22 + +>> +``` + +```matlab +>> D4 = D(16:20) +D4 = + + 19 20 21 22 23 + +>> +``` + +```matlab +>> D5 = D(3:4,[1,3,6]) +D5 = + + 6 14 26 + 7 15 27 + +>> +``` + +## 10 Изучение некоторых управляющих конструкций + +Цикл по перечислению: + +```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 +>> +``` + +Цикл пока выполняется условие: + +```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: + +```matlab +>> if (D(3,5)>=20) +printf('D(3,5)>=20') +else +printf('D(3,5)<20') +endif +D(3,5)>=20>> +``` + +## 11 Использование графических функций + + + + diff --git a/ТЕМА1/screens/1.PNG b/ТЕМА1/screens/1.PNG new file mode 100644 index 0000000..91b489e Binary files /dev/null and b/ТЕМА1/screens/1.PNG differ diff --git a/ТЕМА1/screens/2.PNG b/ТЕМА1/screens/2.PNG new file mode 100644 index 0000000..867c015 Binary files /dev/null and b/ТЕМА1/screens/2.PNG differ diff --git a/ТЕМА1/screens/3.PNG b/ТЕМА1/screens/3.PNG new file mode 100644 index 0000000..d8b2e4b Binary files /dev/null and b/ТЕМА1/screens/3.PNG differ diff --git a/ТЕМА1/screens/4.PNG b/ТЕМА1/screens/4.PNG new file mode 100644 index 0000000..bcfd5d1 Binary files /dev/null and b/ТЕМА1/screens/4.PNG differ diff --git a/ТЕМА1/screens/5.PNG b/ТЕМА1/screens/5.PNG new file mode 100644 index 0000000..1b1e7b2 Binary files /dev/null and b/ТЕМА1/screens/5.PNG differ diff --git a/ТЕМА1/screens/6.PNG b/ТЕМА1/screens/6.PNG new file mode 100644 index 0000000..833f6ce Binary files /dev/null and b/ТЕМА1/screens/6.PNG differ