Практическая часть.
Поиск расстояний
В этой части сперва идет поиск в интервале известных расстояний между станциями, и если в интервале известны все значения расстояний кроме одного, то это одно неизвестное расстояние находится путем вычитаний суммы известных расстояний от значения длинны интервала. Строки 1, 2, 4 отображают вычисленное значение расстояний между перегонами 600, 1000, 1300 м соответственно. А в 3 строке текстового… Читать ещё >
Практическая часть. Поиск расстояний (реферат, курсовая, диплом, контрольная)
Согласно заданию курсового проекта, мною было разработано программное средство, производящее вычисление неизвестных расстояний между железнодорожными станциями.
Согласно техническому заданию, мною был реализован класс train, содержащий методы, позволяющие решить поставленную задачу.
Сразу же из условия ясно, что придется создавать 2 текстовых файла, в одном из них будут хранится исходные значение описания железной дороги, в другом будут хранится вычисленные значения между перегонами железной дороги.
Путем долгих размышлений на тему курсовой работы, был найден оптимальный и максимально удобный способ ввода исходных значений в текстовый файл. Оптимальным вариантом является текстовый файл состоящий из N строк типа:
- 3 4 1500
- 1 3 3000
- 4 2 1200
И т.д.
Первым числовым значением в строке является номер начальной станции перегона. Вторым числовым значением в строке является номер конечной станции перегона. Третьим числовым значением мы задаем известное расстояние между номером начальной станции перегона и номером конечной станции перегона.
Первое и второе числовое значение могут принимать только целочисленные значения. А третье числовое значение т. е. расстояние между начальной и конечной станцией перегона, может принимать как целочисленные, так и дробные значения.
Для считывания исходных данных с текстового файла была реализована функция ReadON (), которая считывает и преобразовывает исходные данные из текстового файла в динамический двумерный массив.
Наилучшей конечной формой выдачи значений вычисленных расстояний между перегонами, является следующая форма:
- 1−2: 600 м.
- 2−3: 1000 м.
- 3−4: Недостаточно данных
- 4−5: 1300 м.
И т.д.
Строки 1, 2, 4 отображают вычисленное значение расстояний между перегонами 600, 1000, 1300 м соответственно. А в 3 строке текстового файла содержащего конечные значения расстояний, отображается невозможность, из-за нехватки данных, вычисления расстояний между перегонами.
Строки в конечном текстовом файле будут расположены по возрастанию порядкового номера начальной станции вычисляемого перегона.
Для вывода конечных значений расстояний между железнодорожными станциями была реализована функция WriteOUT (), которая заполняет текстовый файл конечными значениями расстояний между станциями.
Все расчеты и анализ исходных данных происходят в функции SaveData (Indata). Числовые значение в данный модуль попадают через вызов функции SaveData (Indata), в данном случае мы передаем числовой массив который считали в втором модуле. Данная функция разделена на 4 части:
1. Анализ исходных данных.
Здесь известные значения расстояний меж станций записываются в конечный массив хранящий в себе значения расстояний между станциями упорядоченных по возрастанию. Так же параллельно записываются номера данных интервалов в другой массив, для следующих шагов обработки, а именно упорядочивания значений расстояний меж станциями по возрастанию в массиве «Data». Данный цикл в случае неизвестного значения неизвестного расстояний между станцией, заполоняет ячейки массива Data числовым значением 0.
2. Вычисление неизвестных расстояний между суммой известных расстояний.
Вычислений неизвестных значений расстояний между станций начинается с вычисление межинтервальных значений. Данная часть осуществляет поиск межинтервальных расстояний, и вычисляет значения неизвестных значений расстояний между станциями, вычисленные записываются в массив Data.
3. Первый цикл вычисления неизвестных расстояний.
В этой части сперва идет поиск в интервале известных расстояний между станциями, и если в интервале известны все значения расстояний кроме одного, то это одно неизвестное расстояние находится путем вычитаний суммы известных расстояний от значения длинны интервала.
4. Второй цикл вычисления неизвестных расстояний.
Вторая стадия обработки является фактической копией первой стадии обработки. Она осуществлена в курсовой работе для вычисления неизвестных расстояний между станциями, которые не смогла вычислить первая стадия обработки.