Проектирование информационной системы Отдел кадров
Проектирование информационной системы Отдел кадров
Использование диаграммы Use Case – это возможность увидеть систему с ее функциями и подфункциям с точки зрения пользователя – кадровика.
Рассмотрим каждую функцию:
Заполнение анкеты работником предполагает, что работник организации сам лично вводит свои персональные данные. Заполнение анкеты происходит каждый раз при появлении нового работника (при приеме на работу).
Создание личного дела включает в себя проверку пакета документов, который приносит работник; ввод анкеты работника, которая была до этого им заполнена; создание карточки с табельным номером работника.
Входной информацией, таким образом, является:
Пакет документов (паспорт, военный билет, медицинские справки, свидетельство ИНН, страховое пенсионное свидетельство, свидетельство о рождении (детей))
Выходной информацией является Личная карточка работника (форма Т-2).
Частота создания личного дела зависит от частоты появления новых работников, а корректировка производится при необходимости (например, при переводе сотрудника на новую должность, новое место работы).
Создание БД работников
Данные трудовой книжки
Создание Базы Данных происходит один раз, а затем осуществляется ее наполнение и обновление.
Вся необходимая информация по работникам организации
Формирование отчетов – происходит по выполнению кадровых функций, а также по запросам.
Сведения о работниках из БД работников
Список сотрудников по отделам
Список вакантных мест
Список детей сотрудников
Осуществление поиска по указанным параметрам – производится в случае возникновения такой необходимости (по собственной инициативе или по просьбе сотрудников).
Осуществление нужных кадровых операций:
Оформить прием на работу – осуществляется при приходе человека, который устраивается на вакантное место.
Приказ (распоряжение) о приеме работника на работу (Форма Т-1)
Страховой медицинский полис обязательного гражданского страхования
Оформить увольнение – осуществляется на основании распоряжений руководящих органов или по собственному желанию сотрудника.
Приказ об увольнении (расторжении трудового договора) с работником (форма Т-8)
Записка-расчет при расторжении трудового договора (увольнении) (форма Т-61)
Приказ об увольнении (расторжении трудовых договоров) с работниками (форма Т-8а)
Осуществить перевод – выполняется на основании распоряжений руководителей.
Приказ (распоряжение) о переводе работника на другую работу (форма Т-5)
Приказ (распоряжение) о переводе работников на другую работу (форма Т-5а)
Измененное личное дело (в нем указывается новое место работы)
Оформить командировку – осуществляется на основании распоряжения от руководителя, но иногда сотрудник может проявить инициативу и попросить направить его на семинар, курсы повышения квалификации.
приказ о направлении работника в командировку (форма Т-9)
приказ о направлении работников в командировку (форма Т-9а)
командировочное удостоверение (форма Т-10)
Служебное задание для направления в командировку и отчет о его выполнении (форма Т-10а)
Оформление пенсии сотрудникам – выполняется при достижении сотрудником пенсионного возраста.
пакет документов для ПФРФ
11.1 Оформление отпусков. Сотрудник может взять отпуск один или несколько раз в году, что зависит от возможностей организации по предоставлению материального обеспечения, а также от количества недель, которые сотрудник желает использовать. Отпуск предусматривает 1 календарный месяц, который может быть разбит на несколько частей, но с тем условием, что нельзя брать отпуск подряд, то есть, если взять отпуск один раз осенью, то в другой раз можно будет взять весной или лучше летом.
Приказ (распоряжение) о предоставлении отпуска работнику(форма Т-6)
Приказ (распоряжение) о предоставлении отпуска работникам
Записка-расчет о предоставлении отпуска работнику (форма Т-60)
11.2 Оформление больничных — у каждого сотрудника в табеле проставляется восьмерка (восьмичасовой рабочий день). Если сотрудник на больничном, то ему все равно ставится восьмерка, так как в зависимости от времени, которое сотрудник проработал на данном предприятии ему будут компенсированы эти дни материально. Поэтому делается отметка о непрерывном стаже.
12. Расчет стажа – ведется с использованием трудовой книжки сотрудника, из которой входными данными будут:
Дата принятия на работу
Дата увольнения или перевода
Ниже на диаграмме Use Case (рис 2.3) хорошо видны все функции, которые выполняет кадровик. Эта диаграмма является как бы «наглядным пособием» для специалиста, так как позволяет быть на сто процентов уверенным в тех действиях, которые он выполняет.
2.6 Требования к программе
Разрабатываемая автоматизированная информационная система «отдел кадров» должна отвечать современным требованиям, предъявляемые к современным программным продуктам.
2.6.1 Общие требования
К проектируемой информационной автоматизированной системе предъявляются следующие общие требования:
1. Разрабатываемая автоматизированная информационная система должна обладать достаточным набором функций для обработки информации по кадровому учету.
2. Разрабатываемая автоматизированная информационная система должна обладать достаточным набором возможностей для занесения и обработки информации по кадровому учету.
3. Разрабатываемая автоматизированная информационная система должна обладать достаточным набором видов отчетностей по кадровому учету.
4. Разрабатываемая автоматизированная информационная система должна иметь простой и доступный интерфейс пользователя.
5. Разрабатываемая автоматизированная информационная система должна иметь возможность поднастройки, в связи с изменением законодательства.
6. Разрабатываемая автоматизированная информационная система должна обладать максимум возможностей, которыми обладают современные конкурентные программные продукты.
7. Разрабатываемая автоматизированная информационная система должна иметь минимальные системные требования, для работы с ней на компьютерах старой модификации.
2.6.2 Требования к документации
Разрабатываемая автоматизированная информационная система должна иметь возможность обрабатывать достаточное количество входной и выходной информации, необходимой для кадрового учета работников организации. Должна генерировать соответствующие типы отчетностей и необходимых форм для последующего вывода их на печать [25].
2.6.3 Системные требования
Разрабатывая данную автоматизированную информационную систему, я руководствовался анализом программного обеспечения, установленного на персональных компьютерах различных организаций. Как показывает анализ, практически на каждом компьютере установлен пакет Microsoft Office. Так как разрабатываемая мной автоматизированная информационная система ориентирована на установленный пакет Office, то данный программный продукт будет работать на персональном компьютере, который может поддерживать работу Microsoft Office. Разумеется, что необходимо осознавать, что чем выше продуктивность персонального компьютера, тем выше работоспособность программного продукта, в том числе и разрабатываемой информационной автоматизированной системы «отдел кадров».
Для работы с разрабатываемой автоматизированной системой «отдел кадров» необходимы следующие минимальные системные требования:
Разбор задания №27 ЕГЭ-2019 по информатике и ИКТ
В предстоящем ЕГЭ не появилось никаких изменений по сравнению с прошлым годом.
Возможно, вам также будут интересны демоверсии ЕГЭ по математике и физике.
О нововведениях в экзаменационных вариантах по другим предметам читайте в наших новостях.
Демоверсия КИМ ЕГЭ-2019 по информатике не претерпел никаких изменений по своей структуре по сравнению с 2018 годом. Это значимо упрощает работу педагога и, конечно, уже выстроенный (хочется на это рассчитывать) план подготовки к экзамену обучающегося.
Мы рассмотрим решение предлагаемого проекта (на момент написания статьи – пока еще ПРОЕКТА) КИМ ЕГЭ по информатике.
Часть 2
Для записи ответов на задания этой части (24–27) используйте БЛАНК ОТВЕТОВ № 2. Запишите сначала номер задания (24, 25 и т. д.), а затем полное решение. Ответы записывайте чётко и разборчиво.
Далее не видим необходимости придумывать что-то отличное от официального содержания КИМа демоверсии. Этот документ уже несет в себе «содержание верного ответа и указания по оцениванию», а также «указания для оценивания» и некоторые «примечания для эксперта».
Задание 27
На вход программы поступает последовательность из N целых положительных чисел, все числа в последовательности различны. Рассматриваются все пары различных элементов последовательности, находящихся на расстоянии не меньше чем 4 (разница в индексах элементов пары должна быть 4 или более, порядок элементов в паре неважен). Необходимо определить количество таких пар, для которых произведение элементов делится на 29.
Описание входных и выходных данных
В первой строке входных данных задаётся количество чисел N (4 ≤ N ≤ 1000). В каждой из последующих N строк записано одно целое положительное число, не превышающее 10 000.
В качестве результата программа должна вывести одно число: количество пар элементов, находящихся в последовательности на расстоянии не меньше чем 4, в которых произведение элементов кратно 29.
Пример входных данных:
Пример выходных данных для приведённого выше примера входных данных:
Пояснение. Из 7 заданных элементов с учётом допустимых расстояний между ними можно составить 6 произведений: 58·4, 58·1, 58·29, 2·1, 2·29, 3·29. Из них на 29 делятся 5 произведений.
Требуется написать эффективную по времени и памяти программу для решения описанной задачи.
Программа считается эффективной по времени, если при увеличении количества исходных чисел N в k раз время работы программы увеличивается не более чем в k раз.
Программа считается эффективной по памяти, если память, необходимая для хранения всех переменных программы, не превышает 1 килобайта и не увеличивается с ростом N.
Максимальная оценка за правильную (не содержащую синтаксических ошибок и дающую правильный ответ при любых допустимых входных данных) программу, эффективную по времени и памяти, – 4 балла.
Максимальная оценка за правильную программу, эффективную только по времени, – 3 балла.
Максимальная оценка за правильную программу, не удовлетворяющую требованиям эффективности, – 2 балла.
Вы можете сдать одну программу или две программы решения задачи (например, одна из программ может быть менее эффективна). Если Вы сдадите две программы, то каждая из них будет оцениваться независимо от другой, итоговой станет бо́льшая из двух оценок.
Перед текстом программы обязательно кратко опишите алгоритм решения. Укажите использованный язык программирования и его версию.
Содержание верного ответа
(допускаются иные формулировки ответа, не искажающие его смысла)
Произведение двух чисел делится на 29, если хотя бы один из сомножителей делится на 29.
При вводе чисел можно подсчитывать количество чисел, кратных 29, не считая четырёх последних. Обозначим их n29.
Примечание для проверяющего. Сами числа, кроме четырёх последних, при этом можно не хранить.
Очередное считанное число будем рассматривать как возможный правый элемент искомой пары.
Если очередное считанное число делится на 29, то к ответу следует прибавить количество чисел до него, не считая четырёх последних (включая считанное).
Если очередное считанное число на 29 не делится, то к ответу следует прибавить n29.
Чтобы построить программу, эффективную по памяти, заметим, что, поскольку при обработке очередного элемента входных данных используются значения, находящиеся на четыре элемента ранее, достаточно хранить только четыре последних элемента или информацию о них.
Ниже приведена реализующая описанный алгоритм программа на языке Паскаль (использована версия PascalABC)
Пример 1. Программа на языке Паскаль. Программа эффективна по времени и памяти
a: array[1..s] of longint;
for i:=1 to s do readln(a[i]);
for i := s + 1 to n do
if a[1] mod 29 = 0 then n29 := n29 + 1;
if a_ mod 29 = 0 then cnt := cnt + i — s
for j := 1 to s — 1 do a[j] := a[j + 1];
Комментарии для проверяющего
1. При таком решении хранятся только последние 4 прочитанных элемента. Таким образом, используемая память не зависит от длины последовательности. Время обработки очередного числа фиксировано, т.е. не зависит от длины последовательности. Поэтому при увеличении длины последовательности в k раз время работы программы увеличивается не более чем в k раз. Таким образом, приведённая выше программа эффективна как по времени, так и по используемой памяти. Это решение оценивается в 4 балла.
В такой версии Паскаля, как PascalABC или Delphi, тип longint может быть заменён на тип integer. В большинстве версий языков CC++ также можно использовать тип int.
Программа может быть и ещё более эффективной, если на каждом шаге не сдвигать элементы вспомогательного массива, а записывать i-й считанный элемент в элемент с индексом i mod 4 (Паскаль) или i % 4 (Python), ведя нумерацию обоих индексов с нуля. Учёту подлежит элемент с этим же индексом (именно он находится на расстоянии s от i-го и будет заменён на него). Кроме того, при нумерации индексов элементов с нуля меняется одна из формул для подсчёта.
Такая программа на языке Python приведена ниже (пример 2).
Все подобные программы оцениваются, исходя из максимального балла – 4 (см. критерии).
Вместо последних 4 элементов можно хранить и 4 счётчика: количество делящихся на 29 среди всех считанных чисел, всех считанных чисел без последнего, всех считанных чисел без 2 последних, всех считанных чисел без 3 последних, – и также сдвигать их после очередного шага. Такая программа приведена на языке С++ (пример 3). В этом же примере вместо вспомогательного массива длиной 4 используются 4 переменные.
2. Возможно решение, основанное на описанных идеях, однако предварительно сохраняющее элементы последовательности в массив. Такое решение эффективно по времени, но неэффективно по памяти. Оно оценивается, исходя из максимального балла – 3 (см. критерии).
3. Решение, неэффективное ни по времени, ни по памяти, запоминает входную последовательность в массиве, после чего явно перебирает все возможные пары. Такое решение оценивается, исходя из максимального балла – 2 (см. критерии).
Пример 2. Программа на языке Python. Программа эффективна по времени и памяти
Контроль входной и выходной информации
Для обеспечения надежного функционирования автоматизированной системы должны быть реализованы два уровня контроля входной информации – синтаксический и семантический.
Синтаксический уровень предполагает контроль входных данных по их соответствие допустимому алфавиту (цифра или не цифра), шаблону ввода и др.
Синтаксический контроль должен осуществляться средствами приложения.
Семантический уровень должен проверять выполнение смысловых ограничений вводимых данных (например, диапазон допустимых значений реквизитов) и их непротиворечивость.
Семантический контроль должно осуществлять разработанное приложение на этапе заполнения данных.
1.3.4 Логические требования базы данных
Логическая структура БД представлена на рисунке 1.5 в виде диаграммы сущностных классов в методологии UML.
Рисунок 1.5- Логическая структура БД
Проектирование базы данных должно быть выполнено с использованием UML и SQL Server. Проектирование приложения должно быть выполнено с использованием UML и объектно-ориентированного подхода. Реализация должна быть выполнена на PowerBuilder. Она будет разработана таким образом, чтобы было относительно легко изменять правила и другие разработчики имели возможность настраивать игру.
Атрибуты программной системы
Надежность
Контроль входной и выходной информации. Для обеспечения надежного функционирования автоматизированной системы должны быть реализованы два уровня контроля входной информации – синтаксический и семантический.
Синтаксический уровень предполагает контроль входных данных по их соответствие допустимому алфавиту (цифра или не цифра), шаблону ввода и др.
Синтаксический контроль должен осуществляться средствами приложения.
Семантический уровень должен проверять выполнение смысловых ограничений вводимых данных (например, диапазон допустимых значений реквизитов) и их непротиворечивость.
Семантический контроль должно осуществлять разработанное приложение на этапе заполнения данных.
Обеспечение устойчивого функционирования. Устойчивость работы разрабатываемого бизнес портала должна быть обеспечена как на стадии разработки путем неоднократного тестирования компонент, тщательным всесторонним тестированием, на стадиях разработки и сопровождения, а также путем систематического отслеживания всех отказов, анализа причин их возникновения и своевременных исправлений.
Целостность. В каждый момент времени существования БД сведения, содержащиеся в ней, должны быть непротиворечивы. Целостность БД достигается вследствие введения ограничений целостности, в частности, к ним относятся ограничения, связанные с нормализацией БД. Желательно отслеживать диапазон допустимых значений, соотношения между значениями в полях, особенности написания формата. Существуют ограничения, работающие только при удалении записей. Например, нельзя удалять запись, связанную с другой не удаляемой записью.
Восстанавливаемость. Данное свойство предполагает возможность восстановления БД после сбоя системы или отдельных видов порчи системы. Сюда относится проверка наличия файлов, составляющих приложение. В основном свойство восстанавливаемости обеспечивается дублированием БД и использованием техники повышенной надежности.
Эффективность. Свойство эффективности обычно понимается как:
· минимальное время реакции на запрос пользователя;
· минимальные потребности в памяти;
· сочетание этих параметров.
Доступность
Приложение доступно для работы на компьютере только с установленной СУБД SQL Server или другой аналогичной СУБД.
Защита
Безопасность. Безопасность БД предполагает защиту данных от преднамеренного и непреднамеренного доступа, модификации или разрушения. Применяется запрещение несанкционированного доступа, защита от копирования и криптографическая защита. Также необходимы и чисто административные меры, например ограничение доступа к носителям информации.
Требования к информационной и программной совместимости
Для обеспечения нормальной работы с порталом необходима установка операционной системы Windows NT/2000/XP и интернет браузер Internet Explorer, Firefox или Opera.
Требования к программной документации
Предварительный состав документации:
− описание главного окна программы;
− описание главного меню программы;
− способы заполнения входных данных;
− способы получения выходных данных;
− описание горячих клавиш;
Документация программы должна подробно излагать все принципы работы с программой. В ней должны быть описаны все пункты и подпункты главного меню программы, а так же подробным образом рассмотрена вся сопроводительная документации.
1.3.5.6 Специальные требования
Автоматизированная система может быть разработана с применением любой языковой платформы по усмотрению разработчика. Первичное заполнение базы данных содержит базовый список контрагентов, товаров и услуг. Дальнейшее наполнение осуществляется заказчиком.
Исследовательская работа
В промышленности материальные затраты в среднем составляют до 50% всех расходов; в отдельных отраслях они достигают 80-90% [1]. Поэтому финансовая сторона материально-технического обеспечения на основе его рационализации играет очень важную роль. Издержки, связанные с хранением материалов на складах (аренда, налоги, потери при хранении, порча, страховка и пр.), составляют также немалую статью в бюджете промышленного предприятия. В ряде случаев они достигают в условиях западного уровня развития экономики 10-15% к сумме расходов на приобретение материалов [1].
В силу всего этого проблемы наиболее экономичного регулирования запасов и организации материально-складского хозяйства являются преобладающими в производственно-коммерческой деятельности фирм.
Статистика свидетельствует, что в условиях индустриальной экономики Запада процесс собственно производства товаров составляет лишь 2% от общего времени цикла процессов производственно-коммерческой деятельности, завершающейся доставкой товара потребителю. Остальные 98% времени приходятся на различные виды перемещения и хранения материалов, т. е. на процессы материально-технического обеспечения.
Стоимость всех видов материально-технического обеспечения составляет более 15% от стоимости валового национального продукта или более 30% от общей суммы производственных издержек. При этом на перемещение (все виды транспортирования и перегрузки) расходуется более 40% указанных затрат, на хранение — более 20%, на материальные запасы — порядка 25%, на административные расходы — 15%.[1]. Отсюда очевидна важность, направленность и возможность сокращения указанных расходов на основе организационных технологических новшеств и научных методов оптимизации всех потоковых процессов предпринимательского цикла. Таким организационно-технологическим новшеством, как уже известно, стал логистический подход, а научной методологией — теория логистики.
2.1 Общие требования
При внедрении компьютерных информационных технологий в организацию преследуется две взаимосвязанные основные цели:
− сокращение затрат в организации;
− увеличение отдачи, повышение производительности.
Эти эффекты, как правило, достигаются за счет многих показателей.
Повышения производительности труда. Она имеет отношение к скорости, стоимости и качеству выполнения рутинных задач. Для повышения производительности труда в организациях применяют компьютерные системы справочно-нормативной информации, документооборота, CRM, BI, ERP – позволяющие менеджерам и служащих осуществлять за несколько минут те действия, на которые ещё несколько десятилетий назад требовались дни и недели.
Увеличения конкурентоспособности. Например, в 70-х гг. один крупный дистрибьютор журналов и газет начал фиксировать информацию о еженедельных поставках и возврате печатной продукции от каждого продавца. После этого он использовал программу, которая определяла доход от единицы площади каждого издания для каждого продавца, затем – сравнивал полученные результаты, группируя их по экономически и этнически подобным районам. После этого дистрибьютор сообщал каждому из продавцов оптимальный для его района ассортимент изданий. Это позволило увеличить доход дистрибьюторам и розничным торговцам.
Интегрирования финансовой информации. Когда руководитель пытается оценить работу компании, он может увидеть много разных “версий правды”. Финансовый отдел предоставляет одну версию отчёта о доходах, отдел продаж – другую. Остальные подразделения могут показывать свои варианты того, каков их вклад в бизнес. Единая система создает один окончательный вариант правды, который не может никем оспариваться, поскольку все используют одну систему.
Быстрого обслуживания заказов. В системе ERP заказ проживает всю свою жизнь – от момента появления, до той минуты, когда товар отгружается клиенту, а бухгалтерия выписывает ему счет. Имея информацию в одной системе, а не “размазанной” по множеству различных приложений, компании легче отслеживать заказ и координировать производство, складирование и отгрузку по всем подразделениям одновременно.
Стандартизации и ускорения процесса производства. Крупные производственные компании, особенно обладающие аппетитом приобретать и сливаться, часто обнаруживают, что многочисленные подразделения компании делают одно и то же, используя разные методы и разные компьютерные системы. ERP-системы приходят со стандартными методами автоматизации определенных шагов производственного процесса. Стандартизация этих процессов и использование единой интегрированной системы экономит время, увеличивает производительность и уменьшает головную боль.
Уменьшения складских запасов. ERP-системы способствуют тому, что производственный процесс протекает более гладко, улучшается процесс исполнения заказа внутри компании. Компания теперь может запасать меньше сырья, необходимого для производства продукта, и хранить меньше готовой продукции на складах. Для того чтобы радикально улучшить всю цепочку поставок, может использоваться специальный модуль SCM (Supply Chain Management – управление цепочками поставок), который сегодня входит в стандартную конфигурацию большинства ERP-систем.
Стандартизации информации по персоналу. В компаниях с большим количеством различных бизнес — единиц отделы кадров часто не имеют единой унифицированной методики отслеживания рабочего времени персонала и работы с ним. Это положение может исправить HR модуль ERP.
Исходя из этих преимуществ и выгод, которые автоматизированные информационные системы приносят иностранным компаниям, которые уже не мыслимы без систем ИТ, отечественные организации начинают проявлять значительный интерес к этим системам.
Причем динамика спроса постоянно увеличивается. Многие эксперты в области ИТ. прогнозируют минимальный рост рынка на 15%-20% в год, причём наиболее вероятным среди них считается прогноз в 25%-30%. Этот рост, может быть, достигнут, за счет:
− низкого уровня автоматизации отечественных производств в настоящее время. В наши дни только 20% всех промышленных организаций имеют хоть какую то ИТ. систему, причём большинству установленных систем требуется модернизация;
− сокращения стоимости внедрения системы. Сегодня норма прибыли для компаний занимающихся внедрением АСУ составляет в среднем 30%. В виду увеличения конкуренции на рынке, особенно с приходом очень крупного игрока – корпорацию Microsoft, которая сразу предложила высокое качество по низкой цене, конечные цены на автоматизацию поползут вниз;
− совершенствования технологий. В самом ближайшем будущем готовиться к приходу на рынок новая технология RFID. Это будет означать замену штрих — кодов на радиочастотные датчики. В настоящее время эта технология уже создана, но дорога, чтобы сейчас же её применить на практике. Когда же она дойдет до потребителя, это скажется не только на работе супермаркетов, но и на управлении ресурсами организации, что потребует внедрение или модернизацию систем.
Анализ входного файла программы и вывод результатов в выходной файл
На стандартном .поле 8*8 задано одна белая шашка и произвольное количество черных шашек.
Нужно найти самый длинный путь рубки белой шашки, то есть, максимальное количество ходов белой шашки при которых она бьет черные шашки.
1. Постановка задачи
Задача ставилась таким образом, чтобы проанализировать входной файл и вывести результат в выходной, изобразив при этом всё графически.
1.1 Формат входного файла
В первой строке входного файла записано число N- количество черных шашек (1 < N < 8).
Введём систему координат таким образом, чтобы оси координат были параллельны сторонам стола. Все координаты- целые числа, по модулю не превосходящие 8.
1.2 Формат выходного файла
Если возможные ходы есть для белой шашки, результат выводится на экран и указываются координаты, по которым был совершен бой, и которые черные шашки были побиты.
В случае нескольких решений вывести любое из них.
В случае невозможности или отсутствия ходов, вывести сообщение об этом.
2. Метод решения
Для реализации поставленной задачи была использована среда разработки Borland Delphi 6.0 update 1.
Внутри этой среды было использовано такие методы:
для создания удобного та наглядного интерфейса было использовано такие основные элементы:
компонент главного меню(TMainMenu);
компоненты TMemo для отображения, редактирования и программной работы с текстами входных і выходных файлов;
компонент TImage для вывода графических изображений;
для реализации технической работы программы было использовано:
функции и методы работы со строчными величчинами;
функции переобразования типов данных;
функции создания у уничтожения визуальных обьектов;
функции компонента TMemo для открытия и сохранения текста;
для создания текстовых входных файлов – тестовый редактор Notepad.
3. Алгоритм решения задачи
Рис.1. Блок-схема основной программы
Рис. 2. Блок-схема функции проверки входных данных
4. Описание программы и ее составляющих
Основой проверки входных данных программы являет собой компонент Form Create, который вмещает в себе все функции, которые написаны непосредственно в программе. Он является контейнером для таких действий: N2Click, N4Click, N5Click, Memo.Lines.LoadFromFile . А основой расчёта и вывода выходных данных программы являет собой компонент TForm1.Button1Click , который вмещает в себе все функции, которые написаны непосредственно в программе. Он является контейнером для таких действий
Memo.Lines.LoadFromFile – загружает входной файл в текстовый контейнер Memo1;
N2Click – выход из программы;
Button1Click – выводит выходные данные в текстовый контейнер Memo2;
N4Click – вывести информацию о программе;
N5Click – очистить переменные программы(используется перед открытием входного файла);
FormCreate – собственно обработка данных;
Первые пять действий имеют визуальное отображение в главном меню программы, первые четыре – и в главном меню. Последний – используется для внутренней работы и пользователю не показывается.
4.1 Функция обработки данных
Расчет результата происходит в такой последовательности:
Загрузка входных данных с файла.
Заполнение TMemo1 входными данными.
Отображение веденных осколков на Image1 с помощью графического рисунка.
Вывод координат первого осколка без изменений на TMemo2.
Нахождение точки удара и расчёт разницы координат для параллельного переноса.
Вывод выходных данных на TMemo2.
Отображение выходных осколков на Image2 с помощью графического рисунка
4.2 Защита от ошибок
Защитой от ошибок в программе происходит в такой последовательности:
Проверка количества введенных осколков.
Проверка на наличие осколков с нулевой площадью.
Создание координатных осей и проверка сторон осколков на параллельность.
Нахождение длин сторон треугольников, параллельных координатным осям.
Нахождение суммы площадей всех введенных осколков.
Нахождение площади образовавшегося прямоугольника, и проверка его на равенство с суммой площадей всех входных осколков.
5. Руководство пользователя
Для начала работы Вам необходим входной файл. С целью сделать программу максимально универсальной, входные данные в ней можно ввести и вручную.
Откройте входной файл (input.txt и TOSHONADO.txt).
Вызовите процедуру расчета (команда «Меню->Выполнить» в главном меню или кнопка на панели инструментов).
Выход из программы реализуется командой «Меню->Выход» в главном меню или кнопка на панели задач.