.

Контроль работы удаленной станции

Язык: русский
Формат: реферат
Тип документа: Word Doc
55 318
Скачать документ

Рис. 1 Блок-схема алгоритму основної частини програми.

Рис. 2 Блок-схема алгоритму ініціалізації.

Рис. 3 Продовження блок-схеми алгоритму ініціалізації.

Рис. 4 Блок-схема алгоритму обробки відкриття нового сокету.

Рис. 5 Блок-схема алгоритму функції Game.

Рис. 6 Блок-схема алгоритму обробки приходу даних на сокет клієнта

Рис. 7 Блок-схема алгоритму обробки приходу даних на сокет серверу.

Рис. 8 Блок-схема алгоритму функції CheckFirstMove

Рис. 9 Блок-схема алгоритму обробки натиснення на карту

Рис. 10 Продовження блок-схеми алгоритму обробки натиснення на карту

Рис. 11 Блок-схема алгоритму функції ReadMsgServer

Рис. 12 Блок-схема алгоритму функції ReadMsgClient

Рис. 13 Блок-схема алгоритму запиту нової партії гри

Початок

Початкова ініціалізація змінних

Створення основної форми

Вивід основної форми на екран

Кінець

Виклик форми вибору типу гри

Вхід

Перевірка відео режиму

M1

M2

M1

M2

ні

так

так

ні

Вихід

Виклик форми вибору кількості гравців

Виклик форми для вводу імені ком’ютера де створено сервер

Спроба встановлення зв’язку з сервером

Виведення запиту користувачу про очікування серверу

ні

Вхід

Посилаємо по відкритому сокету клієнту його номер

Вихід

так

Вихід

Відправляємо повідомлення про необхідність передати серверу ім’я гравця

Ініціалізація карт. Роздача кожному з гравців

Вхід

так

Відправляємо серверу повідомлення про необхідність передати цьому
клієнту ім’я іншого

Перевіряємо чи всім вже відправили повідомлення

Вихід

Виведення повідомлення про помилку

Зв’язок є?

так

ні

800х600?

так

ні

Відповідь

Ok?

Перевіряємо чи всі гравці вже встановили зв’язок

Початок гри.

Виклик функції

Game

так

Вхід

ні

Перевіряемо, чи всі вже імена прийнято

Зчитування з буферу масиву карт

В залежності від повідомлення, що прийшло відправляємо серверу
необхідну інформацію

Розпочата?

Перевіряемо, чи розпочата вже гра

ні

Перевіряемо, чи розпочата вже гра

так

Викликаємо функцію обробки повідомлень сервера ReadMsgClient

Викликаємо функцію

GameClientBegin

Вхід

Повідомляємо кожного з клієнтів, що тепер хід першого гравця

Перевіряемо, чи дозволено цією картою в даному випадку ходити?

так

Всім?

Перевіряемо, чи всім вже відправлено

Викликаємо функцію обробки повідомлень клієнта ReadMsgServer

так

Зчитування з буферу повідомлення

Відправляємо повідомлення всім клієнтам про початок

Дозволено?

Вихід

ні

Вихід

Відправляємо повідомлення з ім’ям серверу, іменами інших гравців, та
масив карт

Викликаємо функцію СheckFirstMove

Знаходимо по картам кожного гравця того хто повинен ходити

Вхід

Повідомляємо кожного з клієнтів, що тепер хід іншого гравця

Повідомляємо гравця

M3

так

Перевіряемо, це сервер, чи кліент

Сервер?

Вихід

В залежності від того що зараз: хід, підкид чи відбив перевіряємо

Вхід

M4

M3

M4

Визначаємо клієнт передав запит, чи інформацію

Визначаємо відповідь користувача

Запит?

Повідомляємо кожного з клієнтів, про зроблений хід

Повідомляємо сервер, про зроблений хід клієнта

Визначаємо, про що повідомив клієнт та передаємо інфо іншим

Визначаємо відповідь та посилаємо її клієнту

Згоден?

так

Визначаємо сервер передав запит, чи інформацію

Вихід

Зчитуємо з буферу повідомлення клієнта

Вхід

Визначаємо зміни в грі відображаємо це (зміна положень карт, зміна
написів)

Визначаємо відповідь та посилаємо її серверу

Запит?

ні

так

Вихід

Зчитуємо з буферу повідомлення сервера

Вхід

Вхід

Виводимо повідомлення на екран та запит про нову партію

Вихід

ні

Завершуємо програму

Викликаємо функцію

початку гри Game

Обрано тип сервер?

Всі?

Всім?

ні

так

Масив?

Перевіряемо, що прийнято масив чи повідомлення

Всі?

так

ні

Розпочата?

ні

Перевіряемо сервер, чи клієнт робить хід

так

Сервер?

ні

ні

ні

ні

так

Нашли опечатку? Выделите и нажмите CTRL+Enter

Похожие документы
Обсуждение

Ответить

Курсовые, Дипломы, Рефераты на заказ в кратчайшие сроки
Заказать реферат!
UkrReferat.com. Всі права захищені. 2000-2020