2 Схемы алгоритмов
Прежде всего, на рисунке 1 представлена схема алгоритма функции ExchangeForm_Load, которая при загрузке формы определяет десятичный разделитель из региональных настроек системы.
Рисунок 1 – Схема алгоритма функции обработчика загрузки формы
Далее – схема алгоритма обработчика нажатия на кнопку закрытия программы btnClose_Click, который выполняет закрытие (рисунок 2).
Рисунок 2 – Схема алгоритма функции обработчика нажатия на кнопку «Закрыть»
Затем, на рисунках 3 и 4 представлена схема алгоритма функции txt_KeyPress, не даёт ввести запрещённые символы в поля ввода txtMin и txtMax, определяя некорректный ввод пользователя минимального и максимального значения для генерации.
Рисунок 3 – Схема алгоритма функции обработки ввода txt_KeyPress
Рисунок 4 – Схема алгоритма функции обработки ввода txt_KeyPress, продолжение
Для запрета некорректного ввода в поле txtNum (Количество элементов массива) реализован алгоритм функции txtNum_KeyPress, его схема представлена на рисунке 5.
Рисунок 5 – Схема алгоритма функции обработки ввода txtNum_KeyPress
Для очистки полей для генерации и результата при вводе в поле ввода исходного массива используется алгоритм txtArray_KeyPress, схема которого представлена на рисунке 6.
Рисунок 6 – Схема алгоритма функции обработки ввода txtArray_KeyPress
При нажатии на кнопку генерации, срабатывает алгоритм генерации случайных элементов GenerateBtn_Click, представленный на рисунках 7 – 8.
Рисунок 7 – Схема алгоритма функции генерации чисел GenerateBtn_Click
Рисунок 8 – Схема алгоритма функции генерации чисел GenerateBtn_Click, продолжение
При вводе (из файла или в поле ввода) необходимо исправлять введённую пользователем строку в формат массива целых чисел. Для этого реализованы три функции: FixString, которая непосредственно переводит введённую строку в массив, обращаясь к функции ToArr, которая записывает каждый символ считанной строки в отдельный элемент массива и затем сама обращается к третьей функции – ArrConcat, которая в свою очередь «склеивает» элементы массива (по правилам, указанным в задании) переводя массив символов в массив целых чисел. Схемы алгоритмов названных функций представлены на рисунках 9, 10 и 11 – 14 соответственно.
Рисунок 9 – Схема алгоритма функции FixString()
Рисунок 10 – Схема алгоритма функции ToArr()
Рисунок 11 – Схема алгоритма функции ArrConcat()
Рисунок 12 – Схема алгоритма функции ArrConcat(), продолжение
Рисунок 13 – Схема алгоритма функции ArrConcat(), продолжение
Рисунок 14 – Схема алгоритма функции ArrConcat(), продолжение
На рисунке 15 представлена схема алгоритма функции обработчика нажатия на кнопку "Ввод из файла". Программа открывает файл на чтение и записывает прочитанные символы в строку, которая затем приводится к виду массива функцией FixString().
Рисунок 15 – Схема алгоритма функции обработчика нажатия на кнопку «Ввод из файла»
Далее, на рисунках 16 – 23 представлены 8 функций (ArrSum(), ArrAvg(), ArrMin(), ArrMax(), ArrEven(), ArrOdd(), ArrSortUp(), ArrSortDown()) которые непосредственно производят соответствующие операции над массивом (сумма элементов, среднее значение, минимальный и максимальный элемент, чётные и нечётные элементы, сортировка по возрастанию и убыванию), возвращая строку с ответом.
Рисунок 16 – Схема алгоритма функции ArrSum()
Рисунок 17 – Схема алгоритма функции ArrAvg()
Рисунок 18 – Схема алгоритма функции ArrMin()
Рисунок 19 – Схема алгоритма функции ArrMax()
Рисунок 20 – Схема алгоритма функции ArrEven()
Рисунок 21 – Схема алгоритма функции ArrOdd()
Рисунок 22 – Схема алгоритма функции ArrSortUp()
Рисунок 23 – Схема алгоритма функции ArrSortDown()
При покидании поля ввода исходного массива введённая строка должна так же приводиться к корректному виду массива, в этом случае срабатывает алгоритм функции txtArray_Leave, схема которого представлена на рисунке 24.
Рисунок 24 – Схема алгоритма функции обработки покидания поля ввода исходного массива txtArray_Leave
При нажатии на кнопки выбора операции срабатывает обработчик, схема алгоритма которого представлена на рисунке 25.
Рисунок 25 – Схема алгоритма функции обработки покидания поля ввода исходного массива txtArray_Leave
При нажатии на кнопку «Выполнить» алгоритм, представленный на рисунке 26, переводит введённую строку в тип массива, выполняет выбранную операцию и выводит результат в поле результата.
Рисунок 26 – Схема алгоритма функции обработки нажатия на кнопку «Выполнить» RunBtn_Click
Наконец, при нажатии на кнопку «Сохранить в файл» алгоритм, схема которого представлена на рисунках 27-29, выполняет сохранение исходного массива и результата операции в файл методом дозаписи.
Рисунок 27 – Схема алгоритма функции обработки нажатия на кнопку «Сохранить в файл» FileOutputBtn_Click
Рисунок 28 – Схема алгоритма функции обработки нажатия на кнопку «Сохранить в файл» FileOutputBtn_Click, продолжение
Рисунок 29 – Схема алгоритма функции обработки нажатия на кнопку «Сохранить в файл» FileOutputBtn_Click, продолжение
