Доработать примитивное клиент-серверное приложение на С++

500 руб. за проект
09 сентября 2019, 21:58 • 1 отклик • 47 просмотров
Задание
Необходимо написать две программы под Linux, клиент и сервер. Клиент читает сообщения произвольной длины с консоли и отправляет их на сервер (только ASCII-символы). Полученный от сервера ответ выводит в консоль. Протокол, по которому клиент отправляет сообщения, указывается при его запуске через параметр командной строки. Сервер принимает текстовые сообщения от клиента по протоколам UDP и TCP. Сервер обрабатывает полученное сообщение следующим образом:
  1. достаёт из сообщения все числа (беззнаковые целые); остальной текст игнорируется;
  2. сортирует их в порядке возрастания;
  3. вычисляет их сумму.
В ответ сервер отправляет клиенту сообщение, состоящее из двух строк. В первой строке перечислены все числа в порядке возрастания, а во второй строке указана их сумма.

Размер сообщения не фиксированный, но не более 1024 символов. Важно, чтобы объем передаваемых по сети данных был минимально необходимым.

Пример
Допустим, клиент отправил сообщение

20 apples, 30 bananas, 15 peaches and 1 watermelon.
в ответ он должен получить сообщение

1 15 20 30 66

Требования
Задание должно быть выполнено на языке С++ с применением ООП и STL. Для работы с сетью необходимо использовать Berkeley Sockets. Применение библиотек и фреймворков наподобие Qt или Boost для работы с сетью при выполнении задания не допускается. Сборку делать через CMake.

__________________________________________________________
На данный момент готовы работающие по отдельности клиент-серверные приложения с протоколами TCP и UDP соответственно. Требуется сделать клиент-серверное приложение, принимающее протокол как аргумент командной строки (по сути, объединив две написанные версии приложений с использованием классов и аргументов командной строки). Желательно не позднее завтрашнего вечера (до 10.09.2019 17:00). Наработки будут отправлены исполнителю лично в удобном для него виде.
Отзывы
Адекватный исполнитель, решил поставленную задачу в указанные сроки, рекомендую.
5 лет назад
Avatar r50 a6ce93fe35b158fd29ba0e8681c918c22117160e9586a56eee4ffbc20df9bda1
M P
Фрилансер
Все супер
Хороший заказчик, побольше бы таких
5 лет назад