Научный журнал
Международный журнал экспериментального образования

ISSN 2618–7159
ИФ РИНЦ = 0,431

С++ ДЛЯ ГЕОДЕЗИСТОВ И КАРТОГРАФОВ. УЧЕБНАЯ ПРОГРАММА «КОЛЛИМАЦИОННАЯ ПОГРЕШНОСТЬ» С УСЛОВНОЙ IF-ELSE ИНСТРУКЦИЕЙ

Заблоцкий В.Р. 1
1 Московский государственный университет геодезии и картографии
1. Заблоцкий В.Р. Программирование на языке С++ для картографов и геодезистов: учебная объектно-ориентированная программа «Нивелирная рейка» // Международный журнал экспериментального образования. – 2015. – № 5 (часть 1). – С. 89–91.
2. Заблоцкий В.Р. С++ для картографов и геодезистов: учебная объектно-ориентированная программа «Женевская линейка» // Международный журнал экспериментального образования. – 2015. – № 10 (часть 1). – С. 25–26.

Обсуждается учебная программа на языке С++ для студентов, обучающихся программированию в вузе геодезического профиля. Нашей целью является создание набора типовых учебных геодезических задач [1, 2], которые могут использоваться студентами геодезистами и картографами в качестве домашних заданий и при выполнении учебного практикума по информатике. Задача данной работы заключалась в разработке программы, использующей управляющую инструкцию if – else, для демонстрации выбора между двумя ветвями программы.

Рассмотрим содержательную постановку задачи. Известно, что коллимационная погрешность теодолита связана с неперпендикулярностью оси визирования и оси вращения трубы прибора в горизонтальной плоскости. Для вычисления коллимационной погрешности теодолита используется формула: 2c = КЛ – КП ± 180°, где 2c – удвоенная погрешность, КЛ – отсчет, взятый с микроскопа при круге лево, КП – отсчет с микроскопа при круге право. Формула включает в себя два возможных случая. Если разность отсчетов при КЛ и КП больше нуля, то из полученной разности вычитается 180 градусов. Если же разность отсчетов при КЛ и КП меньше нуля, то к полученной разности прибавляется 180 градусов. Данная формула позволяет применить условную инструкцию if – else, в которой ветвь if вычисляет коллимационную погрешность со сложением 180°, а ветвь else с вычитанием 180°.

В программе «КОЛЛИМАЦИОННАЯ ОШИБКА» иллюстрируется последовательность действий для вычисления погрешности по результатам отсчетов КЛ и КП, полученных при визировании на некоторую точку.

pc_1.wmf

Предположим, что были введены следующие данные: отсчет при КЛ равен 0°0.5′ и отсчет при КП равен 180°2′. Программа на экране дисплея напечатает следующее: «Коллимационная погрешность: 45″. Погрешность трубы теодолита 2Т30 в допуске. Переходите к следующей поверке». Если были введены другие данные, например: отсчет при КЛ равен 23°18.5′ и отсчет при КП равен 203°16′, тогда программа на экране напечатает следующее: «Коллимационная погрешность: 75″. Погрешность не должна превышать двойной точности инструмента. Требуется юстировка теодолита 2Т30».

Обращаем внимание, что некоторые строки в коде программы, имеют одинаковую нумерацию, поскольку длинная строка кода из-за недостатка места была искусственно разбита на две отдельные части. В строках 06–07 объявлены переменные: отсчет в градусах при КЛ readingInDegreesWithCL и в минутах readingInMinutesWithCL, отсчет в градусах при КП readingInDegreesWithCR и в минутах readingInMinutesWithCR. Объявлены также переменные для хранения отсчетов при КЛ и КП в угловых секундах totalSecondsCL и totalSecondsCR, а также переменная для разности отсчетов при КЛ и КП differenceOfReadings и коллимационная погрешность collimationError. Ввод данных выполняется в строках 12 и 15, затем величина отсчета пересчитывается в угловые секунды, для этого используются переменные totalSecondsCL и totalSecondsCR, соответственно для КЛ и КП. Далее вычисляется коллимационная погрешность трубы теодолита по формуле, представленной в строке 24, если differenceOfReadings > 0, в противном случае по формуле в строке 26. В строках 23–26 используется условная инструкция в полном формате, то есть имеющем две ветви альтернативного выбора. Получившаяся коллимационная погрешность может иметь знак минус, поэтому используется дополнительная условная инструкция if в строках 28 и 29, чтобы погрешность, выводимая на экран, была положительной величиной. Данная условная инструкция записана в сокращенном формате (без ветки else) и если условие, стоящее в круглых скобках истинно, то эта инструкция не выполняется вовсе. Затем используется еще одна условная инструкция if-else в строках 34–43, резюмирующая полученный пользователем результат. Если коллимационная погрешность теодолита 2Т30 превышает 60 угловых секунд, на экране печатается текст о том, что требуется юстировка прибора.

Выводы. Разработана учебная программа на языке С++ для студентов, обучающихся программированию в вузе геодезического профиля. В программе демонстрируется применение управляющей инструкции if – else в задаче вычисления коллимационной погрешности теодолита. Данная программа подчеркивает особенности использования условной инструкции в полной и сокращенной форме для осуществления выбора действий на основе истинности или ложности некоторых условий.


Библиографическая ссылка

Заблоцкий В.Р. С++ ДЛЯ ГЕОДЕЗИСТОВ И КАРТОГРАФОВ. УЧЕБНАЯ ПРОГРАММА «КОЛЛИМАЦИОННАЯ ПОГРЕШНОСТЬ» С УСЛОВНОЙ IF-ELSE ИНСТРУКЦИЕЙ // Международный журнал экспериментального образования. – 2015. – № 12-1. – С. 31-33;
URL: http://expeducation.ru/ru/article/view?id=8676 (дата обращения: 23.09.2019).

Предлагаем вашему вниманию журналы, издающиеся в издательстве «Академия Естествознания»
(Высокий импакт-фактор РИНЦ, тематика журналов охватывает все научные направления)

«Фундаментальные исследования» список ВАК ИФ РИНЦ = 1.074