МУ_ЛР1_ОП (1079921)

Файл №1079921 МУ_ЛР1_ОП (Методические указания к лабораторным работам)МУ_ЛР1_ОП (1079921)2018-01-11СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла

14



Методические указания к лабораторной работе № 1 по курсу

ОСНОВЫ ПРОГРАММИРОВАНИЯ

ГУИМЦ

"Среда программирования MS VS. Программные проекты. Линейные программы"

( 4 часа)

Москва, МГТУ, СУЦ - 2014 год

_____________________________________________________________________________________________



СОДЕРЖАНИЕ

1. Цель лабораторной работы №1 по дисциплине ОП(Основы программирования) - СУЦ 3

2. Порядок выполнения лабораторной работы 3

3. Основные понятия 3

3.1. Линейные вычислительные процессы. 3

3.2. Пример простейшей программы на языке СИ. 4

3.3. Программные проекты в системах программирования на СИ. 4

3.4. Создание консольного программного проекта в СП на СИ. 4

3.5. Русификация проекта консольного ввода и вывода. 5

3.6. Программы и программирование 6

3.7. Переменные 7

3.8. Константы 7

3.9. Операторы и составные операторы 8

3.10. Форматированный ввод-вывод. 9

3.11. Отладка программ. 9

4. Пример программы линейного вычисления с вводом выводом данных. 10

5. Контрольное задание ЛР. 11

6. Варианты заданий для студентов СУЦ. 11

7. Дополнительные требования для студентов СУЦ (д.т.). 12

8. Демонстрация, защита ЛР и отчет по ЛР. 12

9. Контрольные вопросы по ЛР. 12

10. Литература. 13







1 Цель лабораторной работы №1 по дисциплине ОП(Основы программирования) - СУЦ



Целью данной ЛР по дисциплине ОП является получение начальных знаний и умений для программирования линейных программ на языке программирования СИ. Студенты осваивают технологию создания простого консольного проекта и отлаживают в среде программирования MS VS 2005/2008/2010 простую программу, содержащую вычисления и операции ввода и вывода данных средствами библиотеки RTL (Run Time Library). Они используют в системе программирования программный проект, создают и настраивают его для своей задачи. Студенты знакомятся с возможностями системы программирования, выполняют отладку программы и получают исполнимую программу, готовую к выполнению, оформляют отчет по ЛР.

2 Порядок выполнения лабораторной работы

  1. Познакомиться с методическими указаниями и основными понятиями ЛР

  2. Создать консольный проект

  3. Проверить работу проекта на простейшей программе (см. ниже)

  4. Проверить работу проекта на линейной программе вычислений (см. ниже)

  5. Написать программу по варианту, выданному преподавателем и отладить ее

  6. Продемонстрировать работу программы преподавателю

  7. Подготовить отчет по шаблону

  8. Защитить ЛР с предоставлением отчета и ответами на вопросы

  9. Для продвинутых студентов выполнить дополнительные, необязательные требования



3 Основные понятия

4 Линейные вычислительные процессы.

Линейные программы состоят из последовательности операторов ввода-вывода и операторов присваивания, которые выполняются в том порядке, в каком они записаны. Текст программы на СИ может быть разделен на несколько исходных файлов (в проекте), каждый из которых представляет собой текстовый файл, содержащий либо всю программу, либо ее часть. При компиляции исходной программы каждый из ее составляющих файлов компилируется отдельно, а затем связывается компоновщиком с другими файлами. Отдельные файлы можно объединить в один посредством директивы препроцессора include. Иногда удобно в одном файле размещать переменные, а в других файлах использовать эти переменные путем их объявления. Каждая программа содержит главную функцию main. Если программа аргументов командной строки не содержит, то функцию main можно объявить без параметров.

5 Пример простейшей программы на языке СИ.



Пример простейшей программы на языке СИ приведен ниже. В строках – комментариях, помеченных слешами («//») даны пояснения для каждой строки программы. Для выполнения этой программы ее необходимо ставить в главный модуль проекта.

// Заголовочный файл библиотеки ввода и вывода.(это комментарий)

#include <stdio.h>

// Название главной прогрвммы на СИ

void main(void)

{

// Вызов функции вывода данных на экран

printf("HELLO!!!\n");

// Вызов функции ввода символа с клавиатуры

getchar();

//

}

Данная программа выводить на экран командной строки текст - "HELLO!!!", переводит строку и ожидает нажатия любой клавиши на клавиатуре. После этого она завершает работу.

6 Программные проекты в системах программирования на СИ.



Для профессионального программирования в системах программирования создается проект, содержащий исходные модули (текстовые файлы) программы. Модули могут быть двух видов: программные (файлы имеют расширения *.срр или *.с) и заголовочные (файлы имеют расширения *.hрр или *.h). При компиляции и компоновке проекта используются единые настройки для всех модулей (1). Компилируются только те модули, которые с предыдущей компиляции изменялись (2). Это позволяет экономить время на новое построение проекта (сборку -build). Важным свойством проектов является то, что настройки, сделанные один раз для этого проекта сохраняются для следующих запусков проекта(3). Цифрами в конце предложений помечены главные свойства и преимущества программных проектов. Кроме того, отмечу, что проекты могут быть разных типов: консольные проекты, проекты для Windows – приложений, WEB – проекты для Интернет, и многие другие. Мы будем использовать консольные проекты для изучения основ программирования.

7 Создание консольного программного проекта в СП на СИ.



Для создания консольного проекта необходимо:

  • Запустить систему программирования VS 2005/8/10/12;

  • В меню “File” выбрать пункт “New” и в подменю выбрать позицию “Project…”;

  • В списке “Project types” выбрать “Visual C++/Win32”, а в списке “Templates” выбрать “Win32 Console Application”;

  • В поле “Name” ввести: LAB1_XDD (где X – номер группы, а DD – номер варианта по журналу группы текущего семестра. Например, для студента группы ИУ5-31 с вариантом 5 – введем – LAB1_15). Далее нажать “OK”;

  • В новом окне мастера проектов нажать “Next”. Проверить настройки проекта: “Application Type” должно быть – “Console Application”, “Additional option” -> “Empty Project” должен быть включено. Осиальные галочки должны быть выключены.

  • Далее необходимо нажать кнопку “Finish”. Новый проект будет создан.

  • Необходимо убрать из главных моделей проекта (LAB1_XDD.CPP и LAB1_XDD.H) все лишнее. Этого: в файле LAB1_XDD.H (у нас в примере LAB1_15.H) уберем все, а в файле LAB1_XDD.CPP (LAB1_15.CPP) оставим только следующий текст:

#include "lab1_15.h"

#include <process.h>

#include <stdio.h>

void main(void)

{ … }

  • Для контроля правильности создания пустого проекта, нажмем клавишу “F7” для проверки создания программы (build) и “F5” для проверки ее выполнения (run/debug). Все перечисленные действия должны быть выполнены безошибочно.



8 Русификация проекта консольного ввода и вывода.



Для корректного отображения текстов на русском языке и его ввода в окне командной строки (после первого запуска программы) нужно сделать настройки шрифта этого окна. Переключаем шрифт в тип - Lucida Console. Выбираем настройки (после вывода консольного окна на экран, правой кнопкой вызываем системное меню): СВОЙСВА->ШРИФТ -> Lucida Console). После переключения шрифта, на запрос в отдельном окошке нужно выбрать режим – “Для всех окон с данным именем!”. Для правильной русификации окна консоли, кроме этого, в самом начале главной программы нужно переключить кодовую страницу для вывода:

system(" chcp 1251 > nul");

Для приостановки завершения программы в консольном окне в конце ее работы можно вызвать паузу следующим образом (например, в конце текста программы):

system(" PAUSE");

На экране появиться следующая строка (смотри ниже) и программа будет ожидать нажатия клавиши:

Для продолжения нажмите любую клавишу . . .

Обратите внимание на то, что при другом способе локализации (setlocale(0,"rus");) не все работает правильно. Вывод на консоль и ввод с консоли выполняется правильно, но после этого введенные в консольном окне данные (например, строка) имеют другую кодировку и выводятся неверно! Можете сами это проверить. Поэтому предпочтительно использовать предложенный выше способ с переключением кодовой страницы.

Примечание. Если вы затрудняетесь выполнить заданный пункт ЛР, обратитесь к разделу “Основные понятия”, где приведены примеры для иллюстрации данного пункта.

Примечание. Все описания классов и шаблонов выполнять в заголовочном файле LAB1_XDD.H (у нас в примере LAB1_15.H). Описания объектов и вызов методов в основном файле: LAB1_XDD.CPP (LAB1_15.CPP).

Далее будет представлено несколько разделов, понятия которых будут разъяснены на лекции, но необходимы для выполнения первой ЛР.

9 Программы и программирование

Программа – это упорядоченная совокупность операторов языка (S), которые определяют действия (шаги) для реализации поставленной задачи на основе разработанного алгоритма. Программа в самом общем виде предназначена для преобразования информации (данных), поэтому при программировании значительную роль играют данные и их структуры.

Схематично любая программа может быть представлена так:

< S1 , S2 , S3 , …, Si ,… , Sk>

Здесь Si это – либо директива описания переменных, либо оператор вычисления значений, либо оператор управления, либо оператор вызова функций. Так как операторы и директивы записаны в определенном порядке, то они выполняются, последовательно. Специальные операторы (ветвления, циклов, вызова функций) могут изменить последовательность выполнения операторов. Правила записи операторов определяются конкретным языком программирования (точнее его синтаксисом), которые формально и точно определяют способы записи операторов и описаний данных. В нашем курсе мы используем язык С++, хотя многие понятия являются общими и для других языков программирования.

Программирование – это процесс создания программ для компьютера. Для этой работы применяются специальные программные комплексы – системы программирования. Системы программирования включают в себя много разных сервисных программ (например, компиляторов, отладчиков и т.д.), которые упрощают работу и делают ее более производительной. Кроме этого в системы программирования включаются специальные библиотеки, значительно упрощающие процесс написания сложных программ и их отладку. Наличие в библиотеках различных программ, готовых к использованию, и которые можно подключить во вновь разрабатываемые программы, делает процесс программирования более эффективным. Библиотечные программы называют подпрограммами или функциями.

Процесс программирования включает следующие этапы:

  • Осмысливание задачи, которую нужно решить путем создания программы;

  • Разработка алгоритма решения задачи

  • Выбор подходящего языка программирования

  • Разработка формализованных описаний алгоритма и логического проекта (блок-схемы и диаграммы классов, диаграммы объектов).

  • Написание программы на языке программирование

  • Отладка программы, включающая шаги (компиляции, редактирования связей, создание исполнимого модуля, пошагового исполнения программы с контролем результатов).

  • Оформление документации на программный продукт.

Эти этапы могут быть простыми для простых задач и трудоемкими для сложных проектов, они могут занимать продолжительные периоды времени.

10 Переменные

При написании (создании) программ, как было сказано выше, большое значение имеют данные, которые могут для разных целей представляться в разной форме. Форма (или формат) представления данных называется типом данных. Для работы с данными в программе им присваиваются специальные имена, которые иногда называются идентификаторами данных. Данные в программе могут быть постоянными и изменяемыми. Постоянные данные называются константами (см. ниже). Изменяемые данные называются переменными. Таким образом, переменной называется элемент программы, который имеет уникальное имя в программе и специальный тип. Программа работает с именами переменных, которые программист может задавать сам. Отметим, что переменным соответствуют области оперативной памяти компьютера, в которых запоминаются их текущие значения во время выполнения программы. Тип переменным необходим для указания операторам программы того, какие действия над конкретными переменными можно выполнять и сколько оперативной памяти нужно выделить для них размещения. В языке С++ используется простая форма для описания переменных:

<тип переменной > <имя/название/идентификатор переменной >;

В язык заложен набор стандартных типов переменных (int, long, char и т.д.) и специальные механизмы описания новых типов. Для описания новых типов переменных используются классы. Стандартные библиотеки языка также предлагают большой набор новых типов и операций над ними. С классами мы познакомимся в других ЛР. Переменные в программе описываются по следующему правилу:

<тип переменной > <имя переменной> = < значение для инициализации>;

Примеры описания простых переменных стандартных типов С++ показаны ниже:

Характеристики

Тип файла
Документ
Размер
197 Kb
Тип материала
Высшее учебное заведение

Тип файла документ

Документы такого типа открываются такими программами, как Microsoft Office Word на компьютерах Windows, Apple Pages на компьютерах Mac, Open Office - бесплатная альтернатива на различных платформах, в том числе Linux. Наиболее простым и современным решением будут Google документы, так как открываются онлайн без скачивания прямо в браузере на любой платформе. Существуют российские качественные аналоги, например от Яндекса.

Будьте внимательны на мобильных устройствах, так как там используются упрощённый функционал даже в официальном приложении от Microsoft, поэтому для просмотра скачивайте PDF-версию. А если нужно редактировать файл, то используйте оригинальный файл.

Файлы такого типа обычно разбиты на страницы, а текст может быть форматированным (жирный, курсив, выбор шрифта, таблицы и т.п.), а также в него можно добавлять изображения. Формат идеально подходит для рефератов, докладов и РПЗ курсовых проектов, которые необходимо распечатать. Кстати перед печатью также сохраняйте файл в PDF, так как принтер может начудить со шрифтами.

Список файлов книги

Методические указания к лабораторным работам
ЛР9_ПКШ
ЛР10_ПКШ
ЛР11_ПКШ
ЛР_12_КЛР_ПКШ
ЛР_13_КЛР_ПКШ
ЛР_14_КЛР_ПКШ
Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
7028
Авторов
на СтудИзбе
260
Средний доход
с одного платного файла
Обучение Подробнее