Initial commit
This commit is contained in:
parent
b365b81639
commit
80735ac864
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
build/
|
||||||
|
|
||||||
53
README.md
Normal file
53
README.md
Normal 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
|
||||||
|
```
|
||||||
|
|
||||||
|
Ввод аналогичен. Вывод:
|
||||||
|
- Общее число найденных вхождений
|
||||||
|
- Список индексов в порядке возрастания
|
||||||
|
|
||||||
Loading…
x
Reference in New Issue
Block a user