Тест:
Листинг программы:
Цели и задачи: Изучить работу с потоками. Научиться разбивать задачу на части, для последующего их выполнения различными потоками.
Анчуария и Тарантерия – два крохотных латиноамериканских государства, затерянных в южных Андах. Диктатор Анчуарии, дон Федерико, объявил войну диктатору Тарантерии, дону Эрнандо. У обоих диктаторов очень мало солдат, но очень много снарядов для минометов, привезенных с последней американской гуманитарной помощью. Поэтому армии обеих сторон просто обстреливают наугад территорию противника, надеясь поразить что-нибудь ценное. Стрельба ведется по очереди до тех пор, пока либо не будут уничтожены все цели, либо стоимость потраченных снарядов не превысит суммарную стоимость всего того, что ими можно уничтожить.
Создать многопоточное приложение, моделирующее военные действия.
Данная программа написана на языке С++ и компилирована на системе Debian 8 Jessie.
Использовался компилятор g++ версии 4.9 x86_64.
Для автоматизации сборки и проведения тестов применялся прилагаемый Makefile.
Результаты тестов работы программы приведены ниже.
(в скобках--значения по умолчанию)
asn количество снарядов игрока А (15)
asl количество солдат игрока А(400)
bsn количество снарядов игрока В(30)
bsl количество солдата игрока В(200)
apn цена снарядов игрока А (1)
apl цена солдат игрока А (10)
bpn цена снарядов игрока В (100)
bpl цена солдата игрока В (10)
1000-- максимальное кол-во значений аргументов
g++ -pthread -std=gnu++11 -o war war.cpp
запуск программы:
./war
Тест:
Листинг программы: