МУ_ЛР1_ОП (1079921), страница 2

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

Текст из файла (страница 2)

/// Простые переменные разных типов

int j = 5; // переменная целого типа

unsigned char c = 'А'; // переменная символьного типа

long l; // переменная целого типа длинная

float f = 5.5f; // переменная вещественного типа

double d = 10.00; // переменная вещественного типа длинная

bool b = true; // переменная логического типа

string s; // переменная типа строка из библиотеки STL

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

11 Константы

Кроме переменных, в операторах и операциях можно использовать константы. Константы не могут изменяться и в большинстве случаев не хранятся в оперативной памяти. Они заменяются в исходном тексте программы. Константы записываются на основе правил, определенных в языке и бывают двух основных типов: числовые и символьные. Для группового описания констант используются перечисления (enum). Примеры использования констант показаны ниже.

int i = 5; // константа целого типа,

double d = 5.2; // вещественная константа, используемая для инициализации

d = d*5 + 11.7; // константы в выражении

string Str1 = "Пример строки 1 "; // строковая константа в " … "

В языке С++ можно использовать также переменные константного типа. Для этого используется специальное ключевое слово const. Для таких переменных также выделяется оперативная память, но в программе их изменять нельзя. Константные переменные должны быть обязательно инициализированы. Примеры:

const int i = 3; // константа целого типа,

const double d = 3.3; // вещественная константа, используемая для инициализации

12 Операторы и составные операторы

Для работы с константами и переменными используются операторы программы (Si). Операторы подразделяются на две группы: операторы изменения переменных и операторы управления. Основным оператором изменения переменных, является оператор присваивания, который имеет вид:

<левая часть выражения присваивания> = <правая часть выражения присваивания>;

В левой части оператора присваивания (в общем случае выражения) чаще записывается конкретная переменная, а в правой части выражение аналогичного типа. Например:

a = b + c; // a, b, c - переменные одного типа

Str3 = Str1 + Str2; // переменные Str1, Str2, Str3 имеют тип string

Операторы управления рассмотрим ниже. В языках структурного программирования используется понятие составного оператора. Составной оператор – это любая совокупность операторов заключенная в специальные операторные скобки. В С++ операторными скобками являются фигурные скобки (“{”, “}”). В других языках программирования могут быть и другие операторные скобки (например, begin и end). В принципе, существуют языки, в которых не применяются операторные скобки и для объединения операторов используется специальное структурное текстовое представление программы (например, OUTLINE как в WORD). Составной оператор можно записать так:

{ S1 , S2 , S3 , …, Si ,… , Sk } ;

Где Si - любые операторы и директивы описания языка С++.

Примеры составного оператора:

{ i = 5 ; c = (a>b) ? a : b; fun(a , 15); };

{

if ( a > b)

{ int i =5; a = 0; b = 15 + i;}

else

{

a = 15; b = 0;};

};

В данном примере использованы также операторы ветвления (if – else и условный оператор () ? :).

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



Функция printf (вывод по формату), является функцией вывода в языке СИ. Первый аргумент функции - строка в двойных кавычках, которая печатается в том виде, в котором указана в функции. Пример:

printf("Пример сообщения"); выведет на печать текст:

Пример сообщения

Однако функция printf("Длина равна %4dсм",1); выведет на печать уже следующее сообщение:

Длина равна 1см

Таким образом, запись "%4d" означает: впечатать заданную вторым аргументом величину в десятичной (d) форме в следующие 4 позиции. Кроме десятичного спецификатора формата вывода могут быть использованы следующие:

o-преобразование в восьмеричный формат;

x-преобразование в шестнадцатеричный формат;

n-преобразование в беззнаковый десятичный формат;

s-печать в строковом формате;

с-печать в символьном виде.

Пусть p-указатель на строку "Первое значение", а переменная x- содержит число5.813, тогда оператор printf("%s%6.3f",p,x);выведет на печать

Первое значение 5.813.

Под число с плавающей точкой отведено 6 позиций, три из которых - под дробнуючасть. Это справедливо для всех типов данных. Спецификатор f используется для вывода данных типа float (число с плавающей точкой).Строковая переменная в функции printf может содержать управляющие символы:

\n-новая строка;

\f-новая страница;

\t-табуляция;

\b-стереть предыдущий символ и т.д.

В языке СИ для ввода данных используются различные функции, в том числе getch и scanf. c=getch(); Здесь с - переменная типа char или unsigned, ей будет присвоено значение, введенное с клавиатуры. Пусть переменные a, letter и n объявлены как int a,n; char letter; входная строка имеет вид

3162 y 47,

тогда функция scanf("%4d%c%2d",&a, &letter,&n); присвоит переменным значения a=3162, letter='y', n=47. (Знак & перед переменной, определяет использование указателя-адреса переменной, но об этом речь пойдет в других ЛР) Все аргументы представляют собой указатели. При вводе функция scanf рассматривает пробелы как разделители вводимых данных.

Примечание: Для систематических сведений о работе функций можно воспользоваться также: литературой по курсу, лекциями по курсу, MSDN и другими источниками информации.

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

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

  • Запустить программу в режиме отладки без трассировки по шагам (F5);

  • Выполнить программу по шагам (F10);

  • Выполнить программу по шагам с обращениями к вложенным функциям(F11);

  • Установить точку останова (BreakPointF9);

  • Выполнить программу до первой точки останова (F5);

  • Просмотреть любые данные в режиме отладки в специальном окне (locals);

  • Просмотреть любые данные в режиме отладки при помощи мышки;

  • Изменить любые данные в режиме отладки в специальном окне (locals и Watch);

  • Установить просмотр переменных в специальном окне (Watch);

  • Просмотреть последовательность и вложенность вызова функций.

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

Примечание. Подробное описание материала и понятий вы можете найти в литературе [1 - 6] или справочной системе MS VS. Кроме того, не пропускайте лекции по курсу. Не рекомендую безоговорочно верить материалам из сети Интернет (например, в Википедии), так как там в некоторых статьях есть ошибки!

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

П
усть необходимо создать программу для вычисления значения переменной F ( переменной с плавающей точкой) на основе следующей формулы:

Параметры вычисления a и b являются целыми переменными (тип - int), а переменная l является переменной с плавающей точкой (вещественной переменной). Параметры вычисления должны быть введены с клавиатуры (с консоли), а результат должен быть выведен в окно командной строки. Тогда можно создать программу, приведенную ниже и выполнить необходимые вычисления. Пояснения в тексте программы даны в виде комментариев(//).

#define _USE_MATH_DEFINES

// Подключение библиотеки математических функций

#include <math.h>

#include <stdio.h>

#include <process.h>

// описание константы для числа пи

#define PI 3.14f

// Начало программы – точка входа в программу

void main(void)

{

// Руссификация ввода и вывода в консольном окне

system(" chcp 1251 > nul");

// Описание исходных данных и вычисляемых переменных

int a , b; // переменные целого типа

float F , l ; // переменные вещественного типа

// Ввод данных а

printf("Введите a: ");

scanf_s("%d", &a);

// Ввод данных b

printf("Введите b: ");

scanf_s("%d", &b);

// Ввод данных l

printf("Введите l: ");

scanf_s("%f", &l);

// Вычисление по формуле

F = 2*a*b*sin(l+0.5f*PI);

// Вывод результата работы программы

printf("\nF = %7.2f для a = %d b = %d l = %5.2f \n" , F , a , b , l);

// Ожидание завершения работы программы

system(" PAUSE");

};

Нужно создать пустой проект в MS VS, как описано выше, скопировать через буфер обмена в него текст данного примера, отладить его и выполнить.

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

Написать программу на языке СИ для вычисления значения выражения по формуле варианта (см. ниже). Значения переменных a,b (целые переменные) и l (переменная с плавающей точкой) ввести с клавиатуры. При использовании математических функций необходимо использовать библиотеку #include <math.h>. Для ввода - вывода использовать библиотеку #include <stdio.h>. Вывести на консоль значения функции F и всех входных величин (a, b, l).

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

В









арианты заданий приведены ниже. Номер варианта должен соответсвовать номеру студента в групповом журнале.

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

Для продвинутых студентов, по желанию, можно построить программу с дополнительными требованиями:

1. Создать вывод нескольких значений функции F для разных аргументов. Для этого нужно организовать цикл по переменной l , изменяя ее значения с определенным шагом, размер шага (h - float) и число циклов (n - int) задает преподаватель после демонстрации студентом основного задания. Пример организации цикла (оператор for) расчета и вывода дан ниже. Вывод значений выполнить построчно для каждого значения функции и всех ее аргументов.

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

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

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

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