Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

схема алгоритму основної частини програми

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 3.6.2024

Рис. 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

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

Всі?

Всім?

ні

так

Масив?

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

Всі?

так

ні

Розпочата?

ні

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

так

Сервер?

ні

ні

ні

ні

так




1. Ашколы научного управления Школа научного менеджмента 18851920 наиболее тесно связана с именами Ф
2. Клиентсервер программалы~ ж~йесі ~андай б~ліктерден т~рады Серверлерді ~амсыздандыру программасы ж~не
3. Cтрелочный перевод и его устройство
4. 2014 Вступ Державотворчі процеси в епоху раннього середньовіччя
5. Предмет спадкового права.html
6. Горюче смазочные материалы, технические жидкости и резинотехнические изделия для автомобиля ВАЗ-21043
7. РЕФЕРАТ по теме ldquo;Нормы права
8. Коммуникативные стили
9. Отправить Школьные Годы Книга Первая Перевод NellBlue Бета denils Обложка NellBlueРазмещение Без согл
10. Лабораторная работа 7 Дифракция Фраунгофера
11. Фармацевтический колледж Департамента здравоохранения города Москвы РАССМ
12. ЛАБОРАТОРНАЯ РАБОТА1
13. Соціальні, економічні та культурні права громадян україни Право на працю і відпочинок
14. История создания и развития вычислительной техники
15. Тема- Взаимные превращения жидкостей и газов
16. Подпись Дата Лист Изм
17. Вольтер Очерк исторической личности
18. вариант. Музыкальный руководитель исполняет произведение.
19. реферат дисертації на здобуття наукового ступеня кандидата економічних наук4
20. Наследие Византии