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