Initial commit

This commit is contained in:
gandc 2025-04-24 01:22:51 +03:00
parent b365b81639
commit 80735ac864
Signed by: gandc
GPG Key ID: 9F77B03D43C42CB4
2 changed files with 55 additions and 0 deletions

2
.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
build/

53
README.md Normal file
View File

@ -0,0 +1,53 @@
# Поиск в массиве с использованием барьера
Проект содержит две программы для многопоточного поиска значений в массиве с использованием `pthread_barrier`:
- **task1**
Поиск **первого** вхождения заданного значения. Возвращает индекс или `-1`.
- **task2**
Поиск **всех** вхождений заданного значения. Возвращает количество и список индексов в порядке возрастания.
## Структура проекта
```
.
├── README.md
├── .gitignore
├── CMakeLists.txt
├── task1.c
└── task2.c
```
## Сборка
```bash
git clone https://git.gandc.ru/gandc/pr6_sysprog.git
mkdir build && cd build
cmake ..
make
```
## Запуск
### Задание 1
```bash
./task1
```
1. Введите `N` и `target` (например: `8 5`)
2. Введите `N` элементов массива (через пробел или по одному): `1 2 5 3 5 4 5 6`
3. Введите число потоков: `4`
Вывод: индекс первого вхождения или сообщение о том, что значение не найдено.
### Задание 2
```bash
./task2
```
Ввод аналогичен. Вывод:
- Общее число найденных вхождений
- Список индексов в порядке возрастания