Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабы по Visual Studio C++ (Волков) - ОТЧЁТЫ с подробным кодом / Лабораторная работа №7 (Индивидуальные задания - ВАРИАНТ 28).docx
Скачиваний:
1
Добавлен:
04.09.2024
Размер:
4.58 Mб
Скачать

1.2 Схемы алгоритмов индивидуального задания №1

Прежде всего, на рисунке 1 представлена схема алгоритма обработчика нажатия на кнопку закрытия программы btnClose_Click, который выполняет закрытие программы.

Рисунок 1 – Схема алгоритма функции обработчика нажатия на кнопку «Закрыть» (btnClose_Click)

Для запрета некорректного ввода в поле txtNum (Количество элементов последовательности для генерации) реализован алгоритм функции txtNum_KeyPress, его схема представлена на рисунке 2.

Рисунок 2 – Схема алгоритма функции обработки ввода txtNum_KeyPress

Для очистки полей результата и запрета ввода всех символов кроме «0» и «1» при вводе в поле ввода исходной последовательности, используется алгоритм txt_KeyPress, схема которого представлена на рисунке 3.

Рисунок 3 – Схема алгоритма функции обработки ввода txt_KeyPress

При нажатии на кнопку генерации, срабатывает алгоритм генерации случайных элементов GenerateBtn_Click, представленный на рисунках 4 – 5.

Рисунок 4 – Схема алгоритма функции генерации чисел GenerateBtn_Click

Рисунок 5 – Схема алгоритма функции генерации чисел GenerateBtn_Click, продолжение

При вводе (из файла или в поле ввода) необходимо исправлять введённую пользователем строку в формат массива из нулей и единиц. Для этого реализованы три функции: FixString, которая непосредственно переводит введённую строку в массив, обращаясь к функции ToArr, которая записывает каждый символ считанной строки в отдельный элемент массива и затем сама обращается к третьей функции – FixArr, которая в свою очередь избавляется от лишних считанных символов (элементов массива) и возвращает массив только из нулей и единиц. Схемы алгоритмов названных функций представлены на рисунках 6, 7 и 8 соответственно.

Рисунок 6 – Схема алгоритма функции FixString()

Рисунок 7 – Схема алгоритма функции ToArr()

Рисунок 8 – Схема алгоритма функции FixArr ()

На рисунке 9 представлена схема алгоритма функции обработчика нажатия на кнопку "Ввод из файла". Программа открывает файл на чтение и записывает прочитанные символы в строку, которая затем приводится к виду массива функцией FixString().

Рисунок 9 – Схема алгоритма функции обработчика нажатия на кнопку «Ввод из файла»

При покидании поля ввода исходной последовательности, введённая строка должна так же приводиться к виду массива, в этом случае срабатывает алгоритм функции txtArray_Leave, схема которого представлена на рисунке 10.

Рисунок 10 – Схема алгоритма функции обработки покидания поля ввода исходной последовательности txtArray_Leave

При нажатии на кнопку «Выполнить» алгоритм, представленный на рисунке 11, переводит введённую строку в тип массива, выполняет операцию, подсчитывая число нулей и единиц, и выводит результат (сначала нули, потом – единицы) в поле результата.

Рисунок 11 – Схема алгоритма функции обработки нажатия на кнопку «Выполнить» RunBtn_Click

Наконец, при нажатии на кнопку «Сохранить в файл» алгоритм, схема которого представлена на рисунках 12 – 14, выполняет сохранение исходной последовательности и результата сортировки в файл методом дозаписи.

Рисунок 12 – Схема алгоритма функции обработки нажатия на кнопку «Сохранить в файл» FileOutputBtn_Click

Рисунок 13 – Схема алгоритма функции обработки нажатия на кнопку «Сохранить в файл» FileOutputBtn_Click, продолжение

Рисунок 14 – Схема алгоритма функции обработки нажатия на кнопку «Сохранить в файл» FileOutputBtn_Click, продолжение