курсовая. Практическая работа 2 Теоретические сведения к индивидуальной практической работе2 Основы программирования tcpIP
Скачать 418.91 Kb.
|
1 2 Указания к выбору вариантаНа основе анализа приведенных примеров написать программу, обмена сообщениями между двумя компьютерами. Используя только Win Api и язык С/С++ для программирования сокетов, написать программы клиента и сервера взаимодействующих между собой по протоколу UDP и TCP. (Программы можно запускать две на одном компьютере используя для IP – адреса сервера адрес - 127.0.0.1. Номер варианта индивидуального задания определяется следующим образом: 1 плюс остаток от целочисленного деления номера вашей зачетной книжки (его двух последних цифр, стоящих после дефиса) на двадцать четыре. Например, номер варианта студента, имеющего номер зачетки 80102126, равен 1 + 26 mod 24 = 3; Варианты заданий Вариант №1 Разработать две клиент - серверные программы. Клиент отсылает серверу два числа L и U, введенные пользователем, где L – это нижняя граница диапазона, U – верхняя граница диапазона. Сервер принимает значения границ диапазона, вычисляет сумму и произведение чисел от L до U и выводит полученные значения на экран и отсылает их клиенту. Клиент так же выводит их на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №2 Разработать две клиент - серверные программы. Клиент отсылает серверу введенный пользователем номер числа Фибоначчи. Сервер принимает номер, вычисляет число Фибоначчи с этим номером, по формуле Fi = Fi–1 + Fi–2, F0 = F1 = 1 и выводит полученные значения на экран и отсылает их клиенту. Клиент так же выводит их на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №3 Разработать две клиент - серверные программы. Клиент отсылает серверу введенную пользователем строку, хранящую знаковое целое число. Сервер принимает строку, хранящую знаковое целое число, и выводит на экран строковый эквивалент этого числа прописью (например, ввод «-1211» должен приводить к выводу «минус тысяча двести одиннадцать») после чего отсылает их клиенту. Клиент так же выводит их на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №4 Разработать две клиент - серверные программы. Клиент отсылает серверу введенную пользователем строку, хранящую число со знаком и плавающей точкой. Сервер принимает строку, хранящую число со знаком и плавающей точкой, и выводит на экран строковый эквивалент этого числа прописью (например, ввод «-12.11» должен приводить к выводу «минус двенадцать целых одиннадцать сотых»). сервер отсылает строку клиенту, который так же выводит её на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №5 Разработать две клиент - серверные программы. Клиент отсылает серверу две строки, введенные пользователем. Сервер принимает две строки. Далее, если обе строки хранят целые числа со знаком, то на экран выводится сумма чисел, в противном случае – конкатенация двух введенных строк. Результат отправляется клиенту для вывода на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №6 Разработать две клиент - серверные программы. Клиент отсылает серверу элементы двух прямоугольных матриц, введенные пользователем. Сервер принимает две прямоугольных матрицы, а затем выводит на экран их сумму и произведение. Результат отправляется клиенту для вывода на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №7 Разработать две клиент - серверные программы. Клиент отсылает серверу элементы вектора (одномерного целочисленного массива), введенные пользователем. Сервер принимает вектор , упорядочивает его по возрастанию любым из так называемых «улучшенных алгоритмов» сортировки массивов и выводит на экран. Результат отправляется клиенту для вывода на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №8 Разработать две клиент - серверные программы. Клиент отсылает серверу элементы вектора (одномерного массива чисел с плавающей точкой), введенные пользователем. Сервер принимает вектор, упорядочивает его по возрастанию любым из так называемых «улучшенных алгоритмов» сортировки массивов и выводит на экран. Результат отправляется клиенту для вывода на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №9 Разработать две клиент - серверные программы. Клиент отсылает серверу элементы вектора (одномерного массива строк), введенные пользователем. Сервер принимает вектор, упорядочивает его по возрастанию любым из так называемых «улучшенных алгоритмов» сортировки массивов и выводит на экран. Результат отправляется клиенту для вывода на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №10 Разработать две клиент - серверные программы. Клиент отсылает серверу элементы введенной пользователем квадратной матрицы. Сервер принимает матрицу, затем вычисляет сумму элементов, лежащих на главной и побочной диагоналях, и выводит на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №11 Разработать две клиент - серверные программы. Клиент отсылает серверу элементы введенной пользователем квадратной матрицы. Сервер принимает матрицу, затем вычисляет сумму элементов, не лежащих на главной и побочной диагоналях, и выводит на экран. Результат отправляется клиенту для вывода на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №12 Разработать две клиент - серверные программы. Клиент принимает от пользователя две даты – строки вида ЦЦ.ЦЦ.ЦЦЦЦ, где Ц – это любая цифра из диапазона [0-9] и отсылает серверу. Сервер принимает даты , вычисляет полное количество дней, прошедших между двумя полученными датами, и выводит его на экран. Результат отправляется клиенту для вывода на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №13 Разработать две клиент - серверные программы. Клиент принимает от пользователя два значения времени – строки вида ЦЦ.ЦЦ.ЦЦ, где Ц – это любая цифра из диапазона [0-9], и отсылает серверу. Сервер принимает обе строки, вычисляет полное количество секунд, прошедших между двумя значениями времени, и выводит его на экран. Результат отправляется клиенту для вывода на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколом UDP и TCP. Вариант №14 Разработать две клиент - серверные программы. Клиент отсылает серверу две строки, введенные пользователем. Сервер принимает, осуществляет поиск вхождения второй строки в первую любым известным методом и выводит на экран значение индекса элемента первой строки, с которого началось совпадение, или -1 в противном случае. Результат отправляется клиенту для вывода на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №15 Разработать две клиент - серверные программы. Клиент отсылает серверу две строки, введенные пользователем. Сервер принимает две строки, осуществляет поиск количества вхождений второй строки в первую любым известным методом, и выводит на экран полученное значение. Результат отправляется клиенту для вывода на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №16 Разработать две клиент - серверные программы. Клиент принимает от пользователя дату – строку вида ЦЦ.ЦЦ.ЦЦЦЦ, где Ц – это любая цифра из диапазона [0-9,] и отсылает серверу. Сервер принимает дату и выводит на экран число и месяц прописью, а за последними четырьмя – слово «года» (например, ввод «29.02.2016» приводит к выводу «Двадцать девятое февраля 20 Результат отправляется клиенту для вывода на экран. года»). Результат отправляется клиенту для вывода на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №17 Разработать две клиент - серверные программы. Клиент принимает от пользователя значение времени – строку вида ЦЦ.ЦЦ.ЦЦ, где Ц – это любая цифра из диапазона [0-9] и отсылает серверу. Сервер принимает значение времени и выводит на экран значение часов минут и секунд прописью (например, ввод «12.01.20» приводит к выводу «двенадцать часов одна минута двадцать секунд»). Результат отправляется клиенту для вывода на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №18 Разработать две клиент - серверные программы. Клиент принимает от пользователя строку из нулей и единиц («битовую строку») и отсылает серверу. Сервер принимает битовую строку, инвертирует ее, выводит на экран значение инвертированной строки, переводит ее в число в десятичный формат и выводит полученное число на экран. Результат отправляется клиенту для вывода на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №19 Разработать две клиент - серверные программы. Клиент принимает от пользователя строку из нулей и единиц («битовую строку») и отсылает серверу. Сервер принимает битовую строку, осуществляет ее реверс (нули заменяются на единицы, а единицы на нули). Полученная строка выводится на экран, затем программа переводит ее в число в десятичном формате и выводит полученное число на экран. Результат отправляется клиенту для вывода на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №20 Разработать две клиент - серверные программы. Клиент отсылает число, введенное пользователем, серверу. Сервер принимает число, вычисляет его факториал по формуле N! = N * (N – 1)!, где 0 != 1, и выводит его на экран. Результат отправляется клиенту для вывода на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №21 Разработать две клиент - серверные программы. Клиент принимает от пользователя квадратную матрицу и отсылает на сервер. Сервер принимает матрицу, осуществляет обход только крайних ее элементов, вычисляет их сумму, и выводит на экран. Результат отправляется клиенту для вывода на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №22 Разработать две клиент - серверные программы. Клиент принимает от пользователя строку символов и отсылает серверу. Сервер принимает строку, осуществляет замену всех латинских букв на их аналоги из кириллицы и выводит результат на экран. Результат отправляется клиенту для вывода на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №23 Разработать две клиент - серверные программы. Клиент принимает от пользователя строку символов и отсылает серверу. Сервер принимает строку, осуществляет смену регистра всех букв и выводит результат на экран. Результат отправляется клиенту для вывода на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Вариант №24 Разработать две клиент - серверные программы. Клиент принимает от пользователя беззнаковое целое число и отсылает серверу. Сервер принимает число. Если оно является степенью двойки, то на экран выводится показатель степени, и сообщение «не является степенью двойки» в противном случае. Результат отправляется клиенту для вывода на экран. Для взаимодействия воспользоваться механизмом сокетов и протоколами UDP и TCP. Содержание отчета по индивидуальной практической работе № 2Индивидуальная практическая работа № 1 должна содержать: титульный лист (образец титульного листа приведен выше); Номер зачетной книжки и номер варианта условие индивидуального задания; схему алгоритма программы выполненной по ГОСТ 19. 701-90; описание схемы алгоритма; текст программы c коментариями. исполняемй файл 1 2 |