и ми весь перший масив, якщо так, то в другому масиві залишився останній елемент, який ми витягуємо з масиву за допомогою описаної вище функції slice_array, і поміщаємо в допоміжну змінну; якщо ні, останній елемент витягується з першого масиву. Функція merge повертає результуючий масив, до якого за допомогою функції merge_array приєднується допоміжна змінна. p align="justify"> Функція MergeSort є основною функцією програми. Вона виконує сортування масиву. Як параметр у функцію передається введений користувачем масив. Після цього масив розбивається на два масиви розмірності розмір масиву/2, для кожного з яких рекурсивно викликається метод сортування злиттям. Отримані відсортовані масиви зливаються в єдиний масив із збереженням впорядкованості. У результаті виходить відсортований за зростанням масив. Функція MergeSort використовує описані вище функції slice_array і merge. p align="justify"> Після введення користувачем рядка, з неї видаляються зайві пробіли зліва і справа, за допомогою функції trim. Створюється мінлива flag, яка приймає значення true. Далі рядок перебирається за допомогою циклу, перевіряючи кожен символ, чи є він числом, за допомогою функції is_numeric. Якщо знаходиться символ, який не є числом, то виводиться повідомлення про помилку і мінлива flag приймає значення false. Далі перевіряється умова, якщо прапор дорівнює true, то рядок переписується в масив. Запис проводиться за допомогою функції explode, яка розділяє рядок по пробілам. Після цього до масиву застосовується функція MergeSort, і за допомогою рахункового циклу масив поелементно виводиться на екран оператором echo. br/>
2.5 Тестування та налагодження
Тестування програми - це випробування, перевірка правильності роботи програми в цілому, або її складових частин.
Налагодження програми - це процес пошуку і усунення помилок у програмі.
Тестування та налагодження програми проводилися за допомогою локального сервера Denwer і браузера Opera 12.
Тестування здійснювалося багаторазовим введенням різних вихідних даних, і подальшою перевіркою коректності виведення результату. При виявленні помилок, проводилася налагодження коду програми в текстовому редакторі. p align="justify"> В ході тестування було виявлено низку помилок:
некоректна передача даних з форми, через невідповідність імені форми в html файлі і php скрипті.
Для вирішення був здійснений правильне введення імені форми в скрипті.
неправильний висновок результату, при введенні некоректних даних, через відсутність перевірки даних. Для вирішення був розроблений алгоритм, перевіряючий тип введених даних, і в разі помилки виводить відповідне повідомлення. p align="justify"> неправильний висновок результату, при введенні зайвих пробілів. Для вирішення була додана функція, що видаляє з рядка прогалини зліва і ...