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

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

Автор SHA1 Сообщение Дата
eb4b78d4a5 doc: актуализировано описание работы с Git
* Убрана  синхронизация с апстримом, так как не требуется для CI,
  однако путает студентов, которые не понимают, когда её делать.

* Добавлена настройка Git, отключающая Windows credential helper.

* Добавлена настройка авторства коммитов.

* Добавлены примечания для компьютерных классов.
2026-02-18 13:48:51 +00:00
9 изменённых файлов: 28 добавлений и 607 удалений

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

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

Двоичные данные
ТЕМА1/assets/figure0.png

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

До

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

Двоичные данные
ТЕМА1/assets/figure1.png

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

До

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

Двоичные данные
ТЕМА1/assets/figure2.png

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

До

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

Двоичные данные
ТЕМА1/assets/figure3.png

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

До

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

Двоичные данные
ТЕМА1/assets/figure4.png

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

До

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

Двоичные данные
ТЕМА1/assets/figure5.png

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

До

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

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

@@ -1,488 +0,0 @@
# Отчет по теме 1
Иевлев Михаил, А-03-24
## 1 Изучение среды GNU Octave
Запустил среду GNU Octave
## 2 Настройка текущего каталога
Нажал на окно рядом с *Текущая папка:* и установил путь к папке ТЕМА1:
![Скриншот выбора текущей папки](assets/figure0.png)
## 3 Ознакомление с интерефейсом Octave
Открыл командное окно, журнал выполненных команд, диспетчер файлов, область переменных и редактор.
## 4 Установление пути
Установил пути к папкам TEMA1 и TEMA2.
## 5 Открытие мануалов
Открыл документацию через «Справка» + Документация + На диске» и help randn
## 6 Создание матриц и векторов
```matlab
>> 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
```
```matlab
>> 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
```
```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
```
![Скриншот о появлении строки с информацией о созданных матрицах и о введенных в командном окне команд](assets/figure1.png)
## 7 Преобразование матриц и векторов
```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.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
```
```matlab
>> 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
```
```matlab
>> 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
```
```matlab
>> 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
```
```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
```
```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.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
```
```matlab
>> 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 Индексация элементов матриц
```matlab
>> 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-языке
```matlab
>> 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
```
```matlab
>> 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
```
```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/figure2.png)
```matlab
>> hist(A(:),6)
```
![Вывод](assets/figure3.png)
```matlab
>> pie([1 3 0.5 2.5 2])
```
![Вывод](assets/figure4.png)
```matlab
>> bar([1 3 0.5 2.5 2])
```
![Вывод](assets/figure5.png)
## 12 Работа с текстовым редактором
### `Prog1.m`
```matlab
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`
```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
```
## 12 Сохранение и использование области переменных
Сохранил область для папки TEMA1 с названием Perem, перезашел в данную папку и выбрал сохраненную область переменных Perem

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

@@ -1,102 +0,0 @@
# Общее контрольное задание по теме 1
Михаил Иевлев, А-03-24
## Задание
Создайте переменную ММ – матрицу 5х7 со случайными нормально распределенными элементами с математическим ожиданием 10 и стандарт-ным отклонением 8.
Рассчитайте среднее значение SR по всем элементам матрицы ММ.
Замените в ММ все значения, превышающие SR+8, на значение SR+8, а значения, меньшие, чем SR-8, - на SR-8.
Превратите ММ в вектор – столбец ММС. Упорядочьте его элементы по возрастанию. Определите значение медианы, в качестве которого возьми-те серединное по порядку индексов значение в упорядоченном векторе.
Рассчитайте матрицу ММ1 с элементами, равными натуральным лога-рифмам от значений соответствующих элементов из матрицы ММ.
## Решение
```matlab
MM = 10 + 8 * rand(5,7)
SR = sum(MM(:))/numel(MM)
MM(MM > SR + 8) = SR + 8
MM(MM < SR - 8) = SR - 8
MMC = sort(MM(:))
med = MMC(ceil(length(MMC)/2))
MM1 = log(MM)
```
## Вывод
```matlab
>> OK3
MM =
16.342 16.937 10.806 17.311 14.104 17.323 10.789
14.581 16.663 14.657 10.082 11.423 15.565 12.488
15.946 17.747 11.048 12.189 10.032 12.462 10.403
15.350 14.176 16.981 12.870 14.945 12.325 12.527
17.089 17.409 13.441 13.732 14.504 17.798 12.329
SR = 14.125
MM =
16.342 16.937 10.806 17.311 14.104 17.323 10.789
14.581 16.663 14.657 10.082 11.423 15.565 12.488
15.946 17.747 11.048 12.189 10.032 12.462 10.403
15.350 14.176 16.981 12.870 14.945 12.325 12.527
17.089 17.409 13.441 13.732 14.504 17.798 12.329
MM =
16.342 16.937 10.806 17.311 14.104 17.323 10.789
14.581 16.663 14.657 10.082 11.423 15.565 12.488
15.946 17.747 11.048 12.189 10.032 12.462 10.403
15.350 14.176 16.981 12.870 14.945 12.325 12.527
17.089 17.409 13.441 13.732 14.504 17.798 12.329
MMC =
10.032
10.082
10.403
10.789
10.806
11.048
11.423
12.189
12.325
12.329
12.462
12.488
12.527
12.870
13.441
13.732
14.104
14.176
14.504
14.581
14.657
14.945
15.350
15.565
15.946
16.342
16.663
16.937
16.981
17.089
17.311
17.323
17.409
17.747
17.798
med = 14.176
MM1 =
2.7937 2.8295 2.3801 2.8513 2.6465 2.8520 2.3785
2.6797 2.8132 2.6849 2.3107 2.4357 2.7450 2.5248
2.7692 2.8762 2.4022 2.5005 2.3058 2.5227 2.3421
2.7311 2.6516 2.8321 2.5549 2.7044 2.5117 2.5279
2.8384 2.8570 2.5983 2.6197 2.6744 2.8791 2.5120
```