Скачать 382.32 Kb.
|
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ВОЗДУШНОГО ТРАНСПОРТА ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙТЕХНИЧЕСКИЙ УНИВЕРСИТЕТГРАЖДАНСКОЙ АВИАЦИИ»Кафедра вычислительных машин, комплексов, систем и сетей Е.Г. Мурачев СРЕДСТВА И МЕТОДЫ ПРОГРАММИРОВАНИЯ НА АЛГОРИТМИЧЕСКОМ ЯЗЫКЕ С++ ПОСОБИЕ по выполнению лабораторных работ для студентов I курса специальности 090106 дневного обучения Москва - 2007ББК 518М91Рецензент д-р техн. наук, проф. Н.Н. Горнец Мурачев Е.Г. М91 Средства и методы программирования на алгоритмическом языке С++: Пособие по выполнению лабораторных работ. – М.: МГТУ ГА, 2007. – 32 с. Данное пособие издается в соответствии с рабочей программой учебной дисциплины «Средства и методы программирования» по Учебному плану специальности 090106 для студентов I курса дневного обучения, утвержденному в 2001 г. Рассмотрено и одобрено на заседаниях кафедры 22.05.07г. и методического совета 22.05.07г. Редактор И.В. Вилкова Подписано в печать 20.09.07 г. Печать офсетная Формат 60х84/16 1,64 уч.-изд. л. 1,86 усл.печ.л. Заказ № 382/ Тираж 150 экз. Московский государственный технический университет ГА125993 Москва, Кронштадтский бульвар, д. 20Редакционно-издательский отдел125493 Москва, ул. Пулковская, д.6а © Московский государственный технический университет ГА, 2007 С О Д Е Р Ж А Н И Е
Лабораторная работа №1 Построение программ с разветвленной структурой Цель работы 1. Знакомство со структурой языка С++ . 2. Составление программного кода. 3. Изучение алгоритмов с линейной структурой. 4. Изучение алгоритмов с разветвленной структурой.
ОБЩИЕ СВЕДЕНИЯ Структура программы на Си++ Процесс разработки программы предполагает разбиение процесса решения сложной задачи на ряд этапов, выполняющих функционально законченную обработку данных, из которых формируются функции. В результате обработка данных на языке Си++ представляется в виде ряда функций. Все функции внешние. Программа на Си++ состоит из директив препроцессора, объявлений глобальных переменных, одной главной функции (main) и ряда неглавных функций. Программа на С++ схематично выглядит следующим образом: /* Заголовки и комментарии, описывающие программу '/ /* Директивы препроцессора: #include */ #include имя-файла_1 ……… #include имя-файла_n /" Макроопределения - директивы препроцессора #define */ #define макро_1 значение_1 ……… ' Idefine макро_п значение_n /* Объявление~глобальных~переменных */ Тип_данных глобальная-переменная_1; Тип_данных глобальная-переменная_m; // Главная функция' main () /* - заголовок функции */ /* Тело функции main: */ { /* Объявления extern, обеспечивающие ссылки на функции, используемые в теле функции main */ /* Объявления локальных переменных */ Тип_данных локальная-переменная_1; ……… Тип_данных локальная-переменная__n; Операторы функции main. } //--------Функции, вызываемые из функции main:------ /* Заголовок функции: */ Тип_данных имя_функции_1 (список формальных параметров) /* Тело функции_1: */ { /* объявления extern, обеспечивающие ссылки на функции, используемые в теле данной функции */ /* Описания локальных переменных: */ Тип_данных локальная-переменная__1; ……… Тип_данных локальная-переменная_k; Операторы функции__1. } Структура каждой функции совпадает со структурой главной функции main: она содержит заголовок функции и тело функции. В заголовке функции в круглых скобках после имени функции может быть список формальных параметров. Но даже если функция не имеет параметров, круглые скобки остаются. Тело функции - это блок. Он заключен в фигурные скобки и содержит объявления данных и операторы обработки данных. Объявление переменных Cледует помнить, что: - каждая переменная программы должна быть объявлена; - объявления переменных обычно помещают в начале функции, сразу за заголовком. Следует обратить внимание, что хотя язык C++ допускает объявление переменных практически в любом месте функции, объявлять переменные лучше все-таки в начале функции, снабжая инструкцию объявления кратким комментарием о назначении переменной; - инструкция объявления переменной выглядит так: Тип ИмяПеременной; - инструкцию объявления переменной можно использовать для инициализации переменной. В этом случае объявление переменной записывают следующим образом: Тип ИмяПеременной = НачалъноеЗначение; - в имени переменной можно использовать буквы латинского алфавита и цифры (первым символом должна быть буква); - компилятор C++ различает прописные и строчные буквы, поэтому, например, имена Summa и summa обозначают разные переменные; - основными числовыми типами языка C++ являются: int (целый) и float (дробный); - после инструкции объявления переменной рекомендуется указывать назначение переменной. Инструкция присваивания При записи инструкции присваивания необходимо иметь в виду, что: - инструкция присваивания предназначена для изменения значений переменных, в том числе и для вычислений "по формуле"; - в C++ инструкция присваивания, выполняющая некоторое действие, может быть записана несколькими способами, например, вместо x=x+dx можно записать x+=dx, а вместо i=i+l воспользоваться оператором инкремента и записать i++; - значение выражения в левой части инструкции присваивания зависит от типа операндов и операции, выполняемой над операндами. Целочисленное сложение и вычитание выполняется без учета переполнения. Например, если переменная n, объявленная как int, имеет значение 32767, то в результате выполнения инструкции n=n+1 значение переменной n будет равно - 32768; - результатом выполнения операции деления над целыми операндами является целое, которое получается отбрасыванием дробной части результата деления. Вывод При организации вывода информации следует помнить, что: - функция printf обеспечивает вывод на экран монитора сообщений и значений переменных; - первым параметром функции printf является строка вывода, определяющая выводимый текст и формат вывода значений переменных, имена которых указаны в качестве остальных параметров функции; - формат вывода значений переменных задается при помощи спецификатора преобразования - последовательности символов, начинающейся с символа %; - при выводе числовых значений наиболее часто используются следующие спецификаторы: %i — для вывода целых со знаком, %u — для вывода беззнаковых целых, %f — для вывода дробных, в виде числа с плавающей точкой, %n.mf — для вывода дробных в формате с фиксированной точкой, где n — количество цифр целой части, m — дробной; - некоторые символы могут быть помещены в строку вывода только как последовательность других, обычных символов: \n — новая строка, \t - табуляция, \" - двойная кавычка, \\ — символ \; - наряду с функцией printf, для вывода на экран сообщений можно использовать функцию puts, которая после вывода текста автоматически переводит курсор в начало следующей строки; - чтобы сразу после окончания работы программы окно, в котором программа работала, не было автоматически перекрытo другим окном, например, окном редактора текста среды разработки или панелями Norton Commander, в конец программы нужно вставить следующие две инструкции: printf("Для завершения нажмите клавишу - чтобы иметь возможность выводить на экран текст разным цветом, надо использовать функции cprintf и cputs. Следует обратить внимание на то, что переход к новой строке в функциях cprintf и cputs задается последовательностью \n\r; - цвет символов, выводимых функциями cprintf и cputs, устанавливает функция textcolor (Цвет); - цвет фона устанавливает функция textbackground (Цвет); - цвет можно задать при помощи целой или именованной константы; - чтобы использовать функции clrscr, textcolor и textbackground, в текст программы нужно включить директиву #include Ввод При вводе информации следует иметь в виду, что: - для ввода исходных данных с клавиатуры предназначена функция scanf; - первым параметром функции scanf является управляющая строка, остальные параметры — адреса переменных, значения которых должны быть введены; - управляющая строка представляет собой заключенный в двойные кавычки список спецификаторов: %i — для ввода целых чисел со знаком, %u — для ввода целых беззнаковых чисел, %f — для ввода дробных чисел, %с — для ввода символа, %s — для ввода строки; - использование имени переменной, а не ее адреса в качестве параметра функции scanf является типичной ошибкой начинающих программистов. Кстати, компилятор эту ошибку не обнаруживает, поэтому перед именем переменной необходимо ставить знак &. Программы с линейной структурой При записи программ с линейной структурой необходимо помнить, что: - программы с линейной структурой являются простейшими и используются, как правило, для реализации простых вычислений по формулам; - в программах с линейной структурой инструкции выполняются последовательно, одна за другой. Пример решения задачи: Написать программу пересчета величины временного интервала, заданного в минутах, в величину, выраженную в часах и минутах. Решение: // Преобразование величины, выраженной в минутах, //в значение, выраженное в часах и минутах #include #include void main () { int min; // интервал в минутах int h; // количество часов int m; // количество минут printf("Введите временной интервал (в минутах) -> "); scanf("%i",&min); h = (int)min / 60; m = min % 60; printf("%i мин. - это %i чac.%i мин.\п", min, h, m); printf("ХпДля завершения нажмите Разветвления вычислений реализуются условным оператором if, условным выражением и оператором switch выбора варианта. Операторы if и switch позволяют выбрать для выполнения один из простых или составных операторов или не выбрать ни одного, в зависимости от условия разветвления. Разветвление вычислений осуществляется на основе анализа условия разветвления. If — условный оператор Условный оператор if позволяет выбрать для выполнения одну из двух альтернатив вычисления. Он имеет сокращенную (без else) или полную форму (с else). С помощью сокращенной формы оператора if можно выполнить или не выполнить оператор, стоящий после условия, в зависимости от истинности или ложности анализируемого условия. Формат сокращенной формы условного оператора if ( В ) S ; где В - условие принятия решения, выражение любого типа; S - один выполняемый оператор, простой или составной; круглые скобки вокруг В обязательны. Простым выполняемым оператором может быть, например, оператор присваивания, условный оператор, оператор выбора варианта, оператор цикла, ввода-вывода и др. Составной оператор используют, если надо выполнить более одного оператора в результате анализа условия. Если В истинно, т.е. не равно нулю, то оператор S выполняется, если ложно - пропускается. Например, if ( а >b ) х = у ; Полная форма условного оператора if позволяет выбрать для выполнения один из двух возможных операторов, соответствующих одной из двух возможных альтернатив процесса вычислений. Формат полной формы условного оператора, if ( В ) SI; else S2 ; где В - выражение любого типа; SI, S2 - один выполняемый оператор - простой или составной. Если В истинно, выполняется оператор S1, а оператор S2 пропускается, а если В ложно, то выполняется оператор S2, a S1 пропускается. Перед ключевым словом else точка с запятой ставится, если S1 - простой оператор, и не ставится, если S1 - составной оператор. Примеры условных операторов полной формы l) if (x>0) y = l; - полная форма; else у = 2 .; ' и простые операторы; 2) if ( а b ) { х = 0;N у = 1; } - полная форма; else { х = 1; у = 0; } , и составные операторы . Если S1 или S2 также являются операторами if, их называют вложенными условными операторами. При этом ключевое слово else связывается с ближайшим предшествующим ему ключевым словом if, которое еще не связано ни с одним else. Например if ( n >0 ) if ( а > b ) z = а; // - это вложенный оператор if else z = b. Если вложенный оператор if должен быть в сокращенной форме, можно использовать фигурные скобки, чтобы не использовать пустой оператор после ключевого слова else. Например, 1) можно использовать оператор if с пустым else if ( n >0 ) if (а >b ) z = а; - полная форма if else ; // пустой оператор после else else z = b; 2) но лучше в этом случае использовать фигурные скобки if ( n >0 ) ( if { а >b ) z = а; } - // сокращенная форма if else z = b. |
«Разработка алгоритмов и программирование на языке Pascal» Лабораторный практикум содержит методические указания к выполнению лабораторных работ по алгоритмизации и программированию на языке... | Конспект урока на тему Развивать навыки программирования на алгоритмическом языке высокого уровня на примере языка Паскаль | ||
Конспект урока по русскому языку Развивать навыки программирования на алгоритмическом языке высокого уровня на примере языка Паскаль | Урок речеведения в 6 классе №144-145 «Соединение в тексте разных типов речи» Развивать навыки программирования на алгоритмическом языке высокого уровня на примере языка Паскаль | ||
Использование электронных образовательных ресурсов в процессе обучения... Развивать навыки программирования на алгоритмическом языке высокого уровня на примере языка Паскаль | Программа по формированию навыков безопасного поведения на дорогах... Н 73 Физика. Пособие к выполнению лабораторных работ м-3, м-4, м-10. Часть 13. М.: Мгту га, 2005. 28 с | ||
Сборник методических указаний для студентов по выполнению лабораторных работ дисциплина «химия» Методические указания для выполнения лабораторных работ являются частью основной профессиональной образовательной программы Государственного... | Конспект урока по информатике Тема урока: «Язык програмирования Паскаль.... Развивать навыки программирования на алгоритмическом языке высокого уровня на примере языка Паскаль | ||
Ветвление на языке Паскаль Вести понятие условного оператора на языке программирования Паскаль, обучить приемам построения простых вычислительных алгоритмов... | Учебно-методическое пособие к выполнению выпускных квалификационных работ Смирнова И. В., Кашенцева Н. П. Финансы и кредит: Учебно-методическое пособие к выполнению выпускных квалификационных работ. 2-е... | ||
Практикум по физической химии на видео. Выполнение лабораторных работ... На её фоне текст: «Пособие разработано в рамках реализации Программы развития ниу-нгу». Затем название работы | Методические указания к выполнению лабораторных работ Ставрополь Учебное пособие предназначено для студентов высших учебных заведений, оно может быть использовано также преподавателями вузов, учителями... | ||
Рабочая программа по дисциплине с 3 «Технологии и методы программирования» Цель преподавания дисциплины: Целью изучения дисциплины «Технологии и методы программирования» является изучение современных технологий... | Методические указания по выполнению лабораторных работ Федеральное государственное образовательное учреждение высшего профессионального образования | ||
Методическое пособие по выполнению курсовой работы по курсу «К омпьютерная графика» Методические указания предназначены для обучающихся по специальности 031601 «Реклама» факультета специального профессионального образования.... | Тезисы доклада Черчаго А. Я., Ярошевский А. Н., Кравченко А. Б. Финаев В. И. 1 «скэнар-терапия» Календарный план отражает содержание лекций, лабораторных работ и индивидуальных работ. В соответствии с умк осуществляется подготовка... |