- •Карагандинский государственный технический университет
- •Исходные данные
- •2. Порядок выполнения работы
- •3. Методические указания
- •3.1. Разработка проекта.
- •3.2. Создание заготовки для консольного приложения.
- •3.3. Кодирование проекта
- •5)Описание функций, созданных программистом
- •3.4. Отладка и доказательство правильности работы программы
- •3.5. Типичные ошибки программирования
- •3.6. Хороший стиль программирования
- •4.Содержание отчета по выполнению лабораторных работ
- •5. Задания на самостоятельную работу при подготовке к лабораторным занятиям
- •6. Перечень используемой литературы
- •Лабораторная работа №2
- •1.Задание на выполнение лабораторной работы
- •2. Порядок выполнения работы
- •3 Методические указания
- •3.2. Создание заготовки для консольного приложения.
- •3.3. Кодирование проекта
- •6)Описание функций, созданных программистом
- •3.4. Отладка и доказательство правильности работы программы
- •3.5. Типичные ошибки программирования и хороший стиль программирования
- •4.Содержание отчета по выполнению лабораторных работ
- •5. Задания на самостоятельную работу при подготовке к лабораторным занятиям
- •6. Перечень используемой литературы
- •Лабораторная работа №3 Разработка диалогового Windows-приложения для проектирования цилиндрических деталей типа стакана
- •1.Задание на выполнение лабораторной работы
- •2.Порядок выполнения работы
- •3.2. Создание шаблона проекта с помощью мастера AppWizard.
- •3.3. Визуальное проектирование диалоговой панели созданного проекта
- •3.4. Установка и настройка элементов управления
- •3.5. Установка статических текстов
- •3.6. Установка и настройка окон редактирования
- •3.7. Установка и настройка элемента управления Picture(рисунок)
- •3.8. Установка и настройка элементов управления Botton(кнопка)
- •3.9. Кодирование проекта
- •3.9.1.Доработка заголовочного файла CapStDlg.H
- •3.9.2. Доработка исходного файла CupStDlg.Cpp.
- •3.10. Выполнение проекта
- •4.Содержание отчета по выполнению лабораторной работы
- •5.Задания на самостоятельную работу при подготовке к лабораторным занятиям
- •6. Перечень используемой литературы
- •Лабораторная работа №4 Разработка однооконного Windows-приложения для вывода графической информации.
- •1.Задание на выполнение лабораторной работы
- •2.Порядок выполнения работы
- •3. Методические указания
- •1.1 Объект cPen - карандаш
- •3. Пример простого графического вывода :
- •3.3 Выполнение проекта
- •4.Содержание отчета по выполнению лабораторной работы
- •5.Задания на самостоятельную работу при подготовке к лабораторным занятиям
- •6. Перечень используемой литературы
5)Описание функций, созданных программистом
Функции созданные программистом должны размещаться за пределами тела функции main(). Для данного проекта целесообразно разработать функцию, например с именемmenu(), реализующую функциональное символьное меню, в котором должно быть десять пронумерованных символьных строк с содержательным наименованием задач и содержательный вопрос к пользователю программы: Введите номер выбранной задачи? В ответ на этот вопрос пользователь вводит один из номеров задач из списка 1…10., которое присваивается целочисленной переменной, напримерL. Значение переменнойLиспользуется в оператореif….elseif() для управления переходами на решаемые задачи.
Начальная часть кода функции menu() может иметь, например такой вид:
int menu()
{ int L;
char fm0[]=” Функциональное меню для задач обработки одномерных массивов”;
AnsiToOem(fm0,fm0);
cout<<fm0<<endl<<endl;
char fm1[]=” 1. Задача 1. Формирование исходной числовой последовательности”;
AnsiToOem(fm1,fm1);
cout<<fm1<<endl<<endl;
………………………..
………………………..
char fm11[]=” Выберите и введите номер требуемого пункта меню”;
AnsiToOem(fm11,fm11);
cout<<fm11<<endl<<endl;
char fm12[]=” Для выхода из программы введите 0”;
AnsiToOem(fm12,fm12);
cout<<fm12<<endl<<endl;
getch();
cin>>L;
return L;
}// Конец меню
3.4. Отладка и доказательство правильности работы программы
Отладка программы сводиться к ее многократным запускам с целью обнаружения и исправления синтаксических и алгоритмических ошибок в исходном тексте программы, которые неизбежны даже в маленьких программах начинающих программистов. При этом выполняются следующие действия:
1)С помощью кнопки Compile(Ctrl+F7) или команды меню Build/Compile имя файла.cpp запускается программа Компилятор(Compiler), которая компилирует и выполняет полный синтаксический контроль исходного текста программы. Ошибки компиляции выводятся в окно сообщений(нижнее окно главной формы VC). Кроме текста сообщения с сущностью ошибки компилятор указывает, правда не всегда точно, местоположение ошибки на строках исходного текста. Для этого необходимо перевести курсор мыши на строку нужного сообщения и дважды щелкнуть левой клавишей мыши. При этом против строки с ошибкой в окне редактирования кода появляется стрелка-указатель голубого цвета. После исправления всех синтаксических ошибок(при этом в протоколе синтаксического контроля счетчики числа ошибок и замечаний будут показывать 0) можно перейти к следующему этапу обработки исходного текста программы– компоновке исполняемой программы.
2)Для этого необходимо с помощью кнопки Buield или команды главного меню Build/Rebuild All запустить программу Компоновщик(Linker). Если эта программа обработала откомпилированный текст программы(объектный код) без ошибок(при этом счетчики числа ошибок и замечаний будут показывать 0), то можно запускать полученную исполняемую программу на выполнение, в противном случае необходимо устранить ошибки и замечания Компоновщика. Для этого можно воспользоваться кнопкой Execute Program, клавишей F7 или пунктом меню Build/ Build имя файла. exe.
3)После исправления всех ошибок Компилятора и Компоновщика можно приступить к обнаружению и исправлению алгоритмических ошибок, присутствующих в коде программы, т.е. доказательству правильности работы программы.
Так как все числовые задачи проекта имеют один исходный файл и не имеют зависимостей по искомым результатом, то наиболее продуктивной методикой доказательства правильности работы программы является формирование контрольных точек по каждой из задач с помощью любых внешних средств и сопоставление их с получаемыми программой результатами. При совпадении результатов программа работает правильно. В противном случае следует искать алгоритмическую ошибку в коде задачи: сначала найти ее место в коде, а затем придумать как ее устранить и добиться совпадения контрольного и получаемого программой результирующего значения.