Skip to content

Commit dc65b4d

Browse files
committed
markdown files updated
1 parent 49b9faa commit dc65b4d

3 files changed

Lines changed: 53 additions & 13 deletions

File tree

README.md

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,15 @@
22

33
A repository for learning C, C++ and the basics of Git in SUAI
44

5-
## Useful links:
5+
## Useful links
6+
67
File with tasks for laboratory works: [Google Docs](https://docs.google.com/document/d/1xrpJrEPfF8pt5H5FsIfXumKFvwkoEy_wYpgZskR7_lA/)
7-
My formatted Lab tasks (var 7, 6): [TASKS.md](TASKS.md)
8+
My formatted Lab tasks (var 7, 6): [TASKS.md](TASKS.md)
89
Ready-made variants are listed here: [STATUS.md](STATUS.md)
910
The report with the lab results: [Google Sheets](https://docs.google.com/spreadsheets/d/1lntWU4vhTECSaRqylbBAyvFPDyTe_JTkbdczJ-7RJFQ/)
1011

11-
## Semester 1:
12+
## Semester 1
13+
1214
Labs now ready: `7 / 7`
1315
| Lab | Dev | Ready | Pass | Dop |
1416
| :---- | :-: | :-: | :-: | :-: |
@@ -20,18 +22,20 @@ Labs now ready: `7 / 7`
2022
| Lab 5 |||||
2123
| Lab 6 |||||
2224

23-
## Semester 2:
24-
Labs now ready: `6 / 8`
25+
## Semester 2
26+
27+
Labs now ready: `7 / 8`
2528
| Lab | Dev | Ready | Pass | Dop |
2629
| :---- | :-: | :-: | :-: | :-: |
2730
| Lab 7 |||||
2831
| Lab 8 |||||
2932
| Lab 9 |||||
3033
| Lab 10 |||||
3134
| Lab 11 |||||
32-
| Lab 12 | 🔷 | 🔷 | 🔷 | |
35+
| Lab 12 | | | | |
3336
| Lab 13 |||||
3437
| Lab 14 | | | | |
3538

36-
### Total time spent on labs:
37-
[![wakatime](https://wakatime.com/badge/user/44ab2413-c50e-4335-a9cd-7990b8ed9c8b/project/40f4ff13-1639-42ba-a9dd-a503aca9302c.svg)](https://wakatime.com/@CyberPotat42)
39+
### Total time spent on labs
40+
41+
[![wakatime](https://wakatime.com/badge/user/44ab2413-c50e-4335-a9cd-7990b8ed9c8b/project/40f4ff13-1639-42ba-a9dd-a503aca9302c.svg)](https://wakatime.com/@CyberPotat42)

STATUS.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,99 +1,114 @@
11
# Status Page ⚡
2+
23
Here are the completed variants for each laboratory work
34
Total progress: `29 / 260` (11.15 %)
45

56
## Lab 0
7+
68
Variants now ready: `1 / 20`
79

810
| 01 | 02 | 03 | 04 | 05 | 06 | [](Semester_1/Lab_0) | 08 | 09 | 10 |
911
|---|---|---|---|---|---|---|---|---|---|
1012
| 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
1113

1214
## Lab 1
15+
1316
Variants now ready: `1 / 20`
1417

1518
| 01 | 02 | 03 | 04 | 05 | 06 | [](Semester_1/Lab_1) | 08 | 09 | 10 |
1619
|---|---|---|---|---|---|---|---|---|---|
1720
| 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
1821

1922
## Lab 2
23+
2024
Variants now ready: `1 / 20`
2125

2226
| 01 | 02 | 03 | 04 | 05 | 06 | [](Semester_1/Lab_2) | 08 | 09 | 10 |
2327
|---|---|---|---|---|---|---|---|---|---|
2428
| 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
2529

2630
## Lab 3
31+
2732
Variants now ready: `1 / 20`
2833

2934
| 01 | 02 | 03 | 04 | 05 | 06 | [](Semester_1/Lab_3) | 08 | 09 | 10 |
3035
|---|---|---|---|---|---|---|---|---|---|
3136
| 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
3237

3338
## Lab 4
39+
3440
Variants now ready: `3 / 20`
3541

3642
| 01 | 02 | 03 | 04 | 05 | 06 | [](Semester_1/Lab_4) | 08 | 09 | 10 |
3743
|---|---|---|---|---|---|---|---|---|---|
3844
| [](Variants/Lab_4/var_11) | 12 | 13 | 14 | 15 | 16 | [](Variants/Lab_4/var_17) | 18 | 19 | 20 |
3945

4046
## Lab 5
47+
4148
Variants now ready: `4 / 20`
4249

4350
| 01 | 02 | 03 | 04 | 05 | 06 | [](Semester_1/Lab_5) | 08 | [](Variants/Lab_5/var_9) | 10 |
4451
|---|---|---|---|---|---|---|---|---|---|
4552
| [](Variants/Lab_5/var_11) | [](Variants/Lab_5/var_12) | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
4653

4754
## Lab 6
55+
4856
Variants now ready: `3 / 20`
4957

5058
| 01 | 02 | 03 | 04 | 05 | 06 | [](Semester_1/Lab_6) | 08 | [](Variants/Lab_6/var_9) | 10 |
5159
|---|---|---|---|---|---|---|---|---|---|
5260
| [](Variants/Lab_6/var_11) | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
5361

5462
## Lab 7
63+
5564
Variants now ready: `5 / 20`
5665

5766
| 01 | 02 | 03 | 04 | [](Variants/Lab_7/var_5) | [](Semester_2/Lab_7) | [](Variants/Lab_7/var_7) | 08 | 09 | 10 |
5867
|---|---|---|---|---|---|---|---|---|---|
5968
| [](Variants/Lab_7/var_11) | [](Variants/Lab_7/var_12) | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
6069

6170
## Lab 8
71+
6272
Variants now ready: `2 / 20`
6373

6474
| 01 | 02 | 03 | 04 | [](Variants/Lab_8/var_5) | [](Semester_2/Lab_8) | 07 | 08 | 09 | 10 |
6575
|---|---|---|---|---|---|---|---|---|---|
6676
| 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
6777

6878
## Lab 9
79+
6980
Variants now ready: `3 / 20`
7081

7182
| 01 | 02 | 03 | 04 | 05 | [](Semester_2/Lab_9) | 07 | 08 | 09 | 10 |
7283
|---|---|---|---|---|---|---|---|---|---|
7384
| [](Variants/Lab_9/var_11) | [](Variants/Lab_9/var_12) | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
7485

7586
## Lab 10
87+
7688
Variants now ready: `2 / 20`
7789

7890
| 01 | 02 | 03 | 04 | 05 | [](Semester_2/Lab_10) | [](Variants/Lab_10/var_7) | 08 | 09 | 10 |
7991
|---|---|---|---|---|---|---|---|---|---|
8092
| 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
8193

8294
## Lab 11
95+
8396
Variants now ready: `1 / 20`
8497

8598
| 01 | 02 | 03 | 04 | 05 | [](Semester_2/Lab_11) | 07 | 08 | 09 | 10 |
8699
|---|---|---|---|---|---|---|---|---|---|
87100
| 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
88101

89102
## Lab 12
103+
90104
Variants now ready: `1 / 20`
91105

92106
| 01 | 02 | 03 | 04 | 05 | [](Semester_2/Lab_12) | 07 | 08 | 09 | 10 |
93107
|---|---|---|---|---|---|---|---|---|---|
94108
| 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
95109

96110
## Lab 13
111+
97112
Variants now ready: `1 / 20`
98113

99114
| 01 | 02 | 03 | 04 | 05 | [](Semester_2/Lab_13) | 07 | 08 | 09 | 10 |

TASKS.md

Lines changed: 26 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,38 +7,45 @@
77
> Здесь приведены задания для варианта №7
88
99
### Lab 0
10+
1011
**Задание:** Ввести три целых числа. Вычислить и вывести произведение первого и второго числа
1112

1213
**Доп:** Третье число умножить на второе и поделить на первое. Вывести результат как float
1314

1415
### Lab 1
16+
1517
**Задание:** Ввести 10 действительных чисел. Вывести максимальное по абсолютной величине число
1618

1719
**Доп:** Вывести все локальные максимумы введенного массива
1820

1921
### Lab 2
22+
2023
**Задание:** Ввести строку, выяснить, нет ли повторяющихся слов, и вывести их, если они есть. Можно считать, что все слова имеют длину ровно 3 символа
2124

2225
**Доп:** Вывести исходную строку без тех слов, которые встречались больше 1 раза
2326

2427
### Lab 3
28+
2529
> Необходимо написать функцию и тестирующую программу, которая вводит исходные данные, вызывает функцию и выводит результат её работы
2630
2731
**Задание:** Написать функцию, которая вставляет в массив элемент с заданным индексом и заданным значением. Лишний элемент должен пропасть
2832

2933
**Доп:** Написать функцию, которая вставляет в массив 0 после максимального элемента. Размер массива должен увеличиться
3034

3135
### Lab 4
36+
3237
**Задание:** Ввести строку. Вывести различные слова вместе с количеством их появления в строке
3338

3439
**Доп:** Вывести различные слова с сортировкой по алфавиту
3540

3641
### Lab 5
42+
3743
**Задание:** Ввести строку. Заменить знаки препинания на сокращения (пример: тчк, зпт, впр, дтч) (можно использовать английские аналоги)
3844

3945
**Доп:** Обратное задание: сокращения заменить на символы (регистр не учитывать) (можно использовать только английские слова)
4046

4147
### Lab 6
48+
4249
> Во всех заданиях располагать узлы списка/дерева в динамической памяти
4350
> Предусмотреть функции вывода на экран списка/дерева
4451
@@ -47,41 +54,50 @@
4754
**Доп:** Сделать управление функциями (0 - выход из цикла, 1 - удаление элемента, 2 - вставка элемента, и т.д)
4855

4956
## Semester 2
50-
> В лабораторных работах второго семестра настоятельно рекомендуется использовать функции стандартной библиотеки вместо собственного кода, если это не противоречит заданию
5157

58+
> В лабораторных работах второго семестра настоятельно рекомендуется использовать функции стандартной библиотеки вместо собственного кода, если это не противоречит заданию
59+
>
5260
> Во всех последующих лабораторных работах необходимо разделять исходный код на 3 файла: в файле **main.cpp** располагается управляющая функция main, в файле **my_lab.cpp** (название может отличаться) ― функции в соответствии с заданием (ввод/вывод исходных данных, основная логика задания и т.п.), а в файле **my_lab.h** ― прототипы функций из my_lab.cpp
53-
61+
>
5462
> Далее приведены задания для варианта №6
5563
5664
### Lab 7
65+
5766
**Задание:** Написать генератор псевдослучайных чисел по алгоритму `f(n) = f(n-1) + f(n-2) + f(n-3) mod 211` (начальные условия: `f(0) = f(1) = f(2) = 1`). Подсчитать частоту каждого числа при выборке 100000
5867
> Линский: рекурсивная реализация неэффективна! Для лабы нужно уменьшить сложность (через глобальные переменные или параметры)
5968
6069
### Lab 8
70+
6171
**Задание:** Сортировка вставками: пусть первые k элементов упорядочены по возрастанию. Берется (k+1)-ый элемент и размещается среди первых k так, чтобы упорядоченными оказались k+1 элементов. Этот метод применяется при k от 1 до n-1
6272

6373
### Lab 9
64-
**Задание:** Ввести n и числа a<sub>1</sub>, a<sub>2</sub>, ..., a<sub>n</sub>. Вычислить и вывести коэффициенты многочлена p(x) = (x - a<sub>1</sub>) * (x - a<sub>2</sub>) * ... * (x - a<sub>n</sub>) (Для этого написать вспомогательную функцию для умножения двух многочленов)
74+
75+
**Задание:** Ввести n и числа a<sub>1</sub>, a<sub>2</sub>, ..., a<sub>n</sub>. Вычислить и вывести коэффициенты многочлена p(x) = (x - a<sub>1</sub>) *(x - a<sub>2</sub>)* ... * (x - a<sub>n</sub>) (Для этого написать вспомогательную функцию для умножения двух многочленов)
6576

6677
### Lab 10
78+
6779
> Использовать функции **fopen**, **fclose**, **fgets**
6880
6981
**Задание:** По символьному файлу с текстом создать новый файл с форматированным текстом, в котором в каждой строке первое слово начинается с 3-ей позиции, а последнее заканчивается в 60-ой позиции
7082

7183
### Lab 11
84+
7285
**Задание:** Написать функцию `const char* strpbrk(const char *string, const char *strCharSet)` работающую так же, как библиотечная и тестирующую программу к ней
7386

7487
### Lab 12
88+
7589
> Используйте приватные поля для данных, определите конструктор, который должен содержать значения по умолчанию, напишите методы установки и извлечения значений (set, get), выполнения операций ввода и вывода значения объекта созданного класса. Напишите конструктор копий, оператор присваивания, деструктор. Напишите программу для тестирования вашего класса
7690
7791
**Задание:** Создайте класс `HugeInt`, который хранит в 40-элементном массиве цифр целые числа разрядностью до 40 знаков. Разрядность указать в конструкторе. Предусмотреть функции сложения, вычитания, сравнения и проверки на 0
7892

7993
### Lab 13
94+
8095
> Для всех заданий используйте приватные поля для данных, определите конструктор, который должен содержать значения по умолчанию, напишите функции-элементы установки и извлечения значений, перегруженные операторы ввода и вывода значения объекта созданного класса и указанные в задании перегруженные операции. Напишите конструктор копий, оператор присваивания, деструктор, если требуется. Напишите программу для тестирования вашего класса и всех операций
8196
8297
**Задание:** Создайте класс `Rational` (рациональная дробь) с операциями `+, +=, -, -=, =, ==, !=, >, <, >=, <=, *, *=, /, /=`
8398

8499
### Lab 14
100+
85101
> Номера заданий выдаются индивидуально по запросу
86102
> Здесь приведено задание для варианта 2
87103
@@ -91,7 +107,7 @@
91107

92108
Программа должна уметь работать с фигурами, указанными в задании. Каждая фигуру должна уметь выводить на экран свои параметры **в текстовом режиме** с помощью метода print(). Возможно, в будущем будут добавлены новые фигуры.
93109

94-
Класс FigureList должен быть основан на связном списке. Связаный список должен быть реализован с помощью двух классов Node (элемент списка) и List (сам список).
110+
Класс FigureList должен быть основан на связном списке. Связаный список должен быть реализован с помощью двух классов Node (элемент списка) и List (сам список).
95111

96112
```c++
97113
class FigureList
@@ -111,17 +127,22 @@ class FigureList
111127
```
112128
113129
Программа должна работать с фигурами:
130+
114131
* Circle (параметры: радиус, надпись произвольной длины)
115132
* Segment (параметры: координаты начала и коодинаты конца)
116133
117134
## Educational Practice
135+
118136
> Требования к заданиям:
137+
>
119138
> * указывать имена файлов исходных и результирующих файлов в командной строке
120139
> * файлы, после обработки заголовков, читать целиком в динамически заказанную память
121140
> * использовать в работе информацию из папки [Форматы](https://drive.google.com/drive/folders/12bxUiI0kUxZr93gR5xvFAoCZyQIY1Lz_?usp=sharing)
122141
123142
### Lab 15
143+
124144
**Задание:** Написать программу, формирующую по исходному BMP файлу новый BMP файл, повернутый по часовой стрелке на 90 градусов
125145
126146
### Lab 16
127-
**Задание:** Написать программу, формирующую по исходному WAV (16 бит на отсчет) файлу новый WAV файл (8 бит на отсчет)
147+
148+
**Задание:** Написать программу, формирующую по исходному WAV (16 бит на отсчет) файлу новый WAV файл (8 бит на отсчет)

0 commit comments

Comments
 (0)