Цель работы: Изучить этапы обработки программы в среде программирования Visual Studio.
Изучить раздел учебного пособия «ОСНОВЫ ПРОГРАММИРОВАНИЯ НА С++», стр. 4-6.
Процесс обработки программы включает в себя следующие основные этапы: редактирование текста, компиляцию текста в машинный код, компоновку программы и ее выполнение.
Программа на языке С++ – это текст. С помощью произвольного текстового редактора программист записывает инструкцию, в соответствии с которой компьютер будет работать, выполняя данную программу.
Для того чтобы компьютер мог выполнить программу, написанную на языке С++, ее нужно перевести на язык машинных инструкций. Эту задачу решает компилятор. Компилятор читает файл с текстом программы, анализирует ее, проверяет на предмет возможных ошибок и, если таковых не обнаружено, создает исполняемый файл, т.е. файл с машинными инструкциями, который можно выполнять.
Откомпилировав программу один раз, ее можно выполнять многократно, с различными исходными данными.
Что такое компиляция, линковка? Что такое run time?
Visual Studio представляет собой интегрированную среду программирования, т.е. объединяет текстовый редактор, компилятор, отладчик и еще ряд дополнительных программ.
1. В среде Visual Studio прежде всего необходимо создать новый проект.
1.1 Для этого нужно выбрать в меню Файл атрибут Создать/Проект.
1.2 Появится новое диалоговое окно. Из списка Типы проектов для Visual C++ выберите Win32, а из шаблонов Консольное приложение Win32.
1.3 Затем следует набрать имя проекта в поле Имя (например, test), в котором будут храниться все файлы, относящиеся к данному проекту. После этого нажмите кнопку «ОК».
1.4 На экране появится пустой файл.
В окне редактирования наберите текст программы, выделенный тоном.
Источник: studopedia.su
Этапы компиляции и выполнения программы
Структура объектно-ориентированной программы на этапе выполнения часто имеет мало общего со структурой ее исходного кода. Последняя фиксируется на этапе компиляции; код состоит из классов, отношения наследования между которыми неизменны. На этапе же выполнения структура программы — быстро изменяющаяся сеть из взаимодействующих объектов. Две эти структуры почти независимы.
Рассмотрим различие между агрегированием и осведомленностью (acquaintance) объектов и его проявления на этапах компиляции и выполнения. Агрегирование подразумевает, что один объект владеет другим или несет за него ответственность. В общем случае мы говорим, что объект содержит другой объект или является его частью. Агрегирование означает, что агрегат и его составляющие имеют одинаковое время жизни.
Говоря же об осведомленности, мы имеем в виду, что объекту известно о другом объекте. Иногда осведомленность называют ассоциацией или отношением «использует». Осведомленные объекты могут запрашивать друг у друга операции, но они не несут никакой ответственности друг за друга. Осведомленность — это более слабое отношение, чем агрегирование; оно предполагает гораздо менее тесную связь между объектами.
C++ с нуля | 08 | Компиляция и линковка
На наших диаграммах осведомленность будет обозначаться сплошной линией со стрелкой. Линия со стрелкой и ромбиком вначале обозначает агрегирование.
Агрегирование и осведомленность легко спутать, поскольку они часто реализуются одинаково. В языке Smalltalk все переменные являются ссылками на объекты, здесь нет различия между агрегированием и осведомленностью. В C++ агрегирование можно реализовать путем определения переменных-членов, которые являются экземплярами, но чаще их определяют как указатели или ссылки. Осведомленность также реализуется с помощью указателей и ссылок.
Различие между осведомленностью и агрегированием определяется, скорее, предполагаемым использованием, а не языковыми механизмами. В структуре, существующей на этапе компиляции, увидеть различие нелегко, но тем не менее оно существенно. Обычно отношений агрегирования меньше, чем отношений осведомленности, и они более постоянны. Напротив, отношения осведомленности возникают и исчезают чаще и иногда длятся лишь во время исполнения некоторой операции. Отношения осведомленности, кроме того, более динамичны, что затрудняет их выявление в исходном тексте программы.
Коль скоро несоответствие между структурой программы на этапах компиляции и выполнения столь велико, ясно, что изучение исходного кода может сказать о работе системы совсем немного. Поведение системы во время выполнения должно определяться проектировщиком, а не языком. Соотношения между объектами и их типами нужно проектировать очень аккуратно, поскольку именно от них зависит, насколько удачной или неудачной окажется структура во время выполнения.
Многие паттерны проектирования (особенно уровня объектов) явно подчеркивают различие между структурами на этапах компиляции и выполнения. Паттерны компоновщик и декоратор полезны для построения сложных структур времени выполнения. Наблюдатель порождает структуры времени выполнения, которые часто трудно понять, не зная паттерна. Паттерн цепочка обязанностей также приводит к таким схемам взаимодействия, в которых наследование неочевидно. В общем можно утверждать, что разобраться в структурах времени выполнения невозможно, если не понимаешь специфики паттернов.
Источник: devtype.blogspot.com
Компилирование и выполнение программ в среде Visual Studio
В методических указаниях описан цикл лабораторных работ по дисциплине «Информатика» для специальностей 230100 и 210700 подготовки бакалавров, а также подготовки специалистов по направлению 090302 . Учебные материалы указаний будут полезны студентам и магистрантам соответствующих специальностей очного, заочного и дистанционного обучения для приобретения профессиональных навыков работы с современными языками программирования
Лабораторные работы ориентированы на работу в среде Visual Studio.
Кафедра телекоммуникационных средств и вычислительных систем
Таблиц — 6, литературы — 5.
Рецензент – к.т.н., доцент Е.В. Кокорева
Утверждено редакционно-издательским советом СибГУТИ в качестве методических указаний.
телекоммуникаций и информатики, 2012
Лабораторная работа №1 ЭТАПЫ СОЗДАНИЯ ПРОГРАММЫ В ИНТЕГРИРОВАННОЙ СРЕДЕ Visual Studio. 6
Лабораторная работа № 2 ПРОГРАММИРОВАНИЕ ЛИНЕЙНЫХ АЛГОРИТМОВ 9
Лабораторная работа № 3 ПРОГРАММИРОВАНИЕ ЦИКЛИЧЕСКИХ АЛГОРИТМОВ 12
ЛАБОРАТОРНАЯ РАБОТА №4 РАСЧЕТ ЗНАЧЕНИЙ ФУНКЦИИ ДВУХ ПЕРЕМЕННЫХ. 15
Лабораторная работа № 5 СОЗДАНИЕ ДИАЛОГОВЫХ ПРОГРАММ.. 18
Лабораторная работа №6 ФОРМИРОВАНИЕ И ОБРАБОТКА ОДНОМЕРНЫХ МАССИВОВ.. 20
Лабораторная работа №7 ОБРАБОТКА ДВУХМЕРНЫХ МАССИВОВ.. 26
Лабораторная работа № 8 ОБРАБОТКА СИМВОЛЬНОЙ ИНФОРМАЦИИ.. 30
Лабораторная работа № 9 ОБРАБОТКА СТРУКТУР. 33
Лабораторная Работа № 10 БЕЗТИПОВЫЕ ПОДПРОГРАММЫ – ФУНКЦИИ 36
Лабораторная Работа № 11 ТИПОВЫЕ ПОДПРОГРАММЫ — ФУНКЦИИ.. 38
Лабораторная работа № 12 РЕКУРСИВНЫЕ АЛГОРИТМЫ.
СОЗДАНИЕ РЕКУРСИВНОЙ ФУНКЦИЙ.. 40
Введение
Настоящие методические указания предназначены для использования в процессе лабораторного практикума по дисциплине «Информатика» студентами специальностей 230100 и 210700 подготовки бакалавров, а также подготовки специалистов по направлению 090302.
В ходе выполнения лабораторных работ студенты должны приобрести теоретические знания в области программирования и навыки разработки несложного программного обеспечения на конкретном алгоритмическом языке. В процессе решения задач студенты должны правильно выбирать и описывать типы данных, изучить синтаксис и правильно использовать операторы алгоритмического языка, освоить работу с такими структурами данных, как массивы, разрабатывать программы с использованием базовых вычислительных структур.
В данном руководстве предлагается 12 лабораторных работ, посвященных изучению базовых конструкций языка Си (условия, циклы и функции) и способов хранения и обработки данных (массивы, структуры, рекурсия).
Лабораторная работа №1
ЭТАПЫ СОЗДАНИЯ ПРОГРАММЫ В ИНТЕГРИРОВАННОЙ СРЕДЕ Visual Studio
Цель работы:Изучить этапы обработки программы в среде программирования Visual Studio.
Подготовка к лабораторной работе
Изучить раздел учебного пособия «ОСНОВЫ ПРОГРАММИРОВАНИЯ НА С++», стр. 4-6.
Методические указания к лабораторной работе
Процесс обработки программы включает в себя следующие основные этапы: редактирование текста, компиляцию текста в машинный код, компоновку программы и ее выполнение.
Программа на языке С++ – это текст. С помощью произвольного текстового редактора программист записывает инструкцию, в соответствии с которой компьютер будет работать, выполняя данную программу.
Для того чтобы компьютер мог выполнить программу, написанную на языке С++, ее нужно перевести на язык машинных инструкций. Эту задачу решает компилятор. Компилятор читает файл с текстом программы, анализирует ее, проверяет на предмет возможных ошибок и, если таковых не обнаружено, создает исполняемый файл, т.е. файл с машинными инструкциями, который можно выполнять.
Откомпилировав программу один раз, ее можно выполнять многократно, с различными исходными данными.
Компилирование и выполнение программ в среде Visual Studio
Visual Studio представляет собой интегрированную среду программирования, т.е. объединяет текстовый редактор, компилятор, отладчик и еще ряд дополнительных программ.
1. В среде Visual Studio прежде всего необходимо создать новый проект.
1.1 Для этого нужно выбрать в меню Файл атрибут Создать/Проект.
1.2 Появится новое диалоговое окно. Из спискаТипы проектов для Visual C++ выберите Win32, а из шаблонов Консольное приложение Win32.
1.3 Затем следует набрать имя проекта в поле Имя(например, test) ,в котором будут храниться все файлы, относящиеся к данному проекту. После этого нажмите кнопку «ОК».
1.4 На экране появится пустой файл.
В окне редактирования наберите текст программы, выделенный тоном.
int _tmain(int argc, _TCHAR* argv[])
2.Для компиляции выберите в меню Построение команду Построить решение.
В нижней части экрана появятся сообщения компиляции. Если Вы получили сообщение компилятора об ошибках, двойной щелчок мышью по строке-сообщении об ошибке переведет курсор в окне текстового редактора на соответствующую строку кода.
После исправления всех ошибок и повторной компиляции система выдаст сообщение об успешной компиляции и компоновке (пока мы не будем уточнять, просто вы увидите сообщение Linking).
3.В главном меню выбрать пункт Отладка -à Запустить без отладки
На экране монитора появится консольное окно, и в нем будет выведены результаты работы программы.
Программа выполнена и лишь ожидает нажатия произвольной клавиши, чтобы закрыть консольное окно.
Проанализируйте полученные в результате выполнения программы результаты и сделайте вывод о том, что рассчитывает данная программа.
4. В среде Visual Studio создайте еще новый проект
В окне редактора наберите текст программы, выделенный тоном.
int _tmain(int argc, _TCHAR* argv[])
float х, у, z; // описание переменных
printf(“Расчет значений функции двух переменныхn”); /*вывод заголовка */
x= -l; // начальное значение x — параметра внешнего цикла
printf(“x=%6.1f n”, x); //вывод значения x
z=sin(x) + cos(y); // вычисление функции
printf(“y= %6.1f z=%6.1fn”, y, z); // вывод результатов
x=x + 0.5; // изменение параметра х на шаг 0.5
return 0;
Получите результаты расчетов по данной программе.
Источник: megaobuchalka.ru