- •1. Общие правила выполнения лабораторных работ
- •2. Программное обеспечение, используемое для выполнения лабораторных работ
- •3. Лабораторная работа № 1. Создание простейшего консольного приложения C
- •3.1. Задание
- •3.2. Методические указания по выполнению лабораторной работы
- •3.2.1. Создание проекта консольного приложения
- •3.2.2. Открытие существующего проекта
- •3.2.3. Редактирование функции main Вашего проекта
- •3.2.4. Компиляция и сборка проекта
- •3.2.5. Пробный запуск проекта из интегрированной среды CodeBlocks
- •3.2.6. Запуск откомпилированного исполнительного файла проекта непосредственно из операционной системы
- •4.1. Задание
- •4.2. Методические указания по выполнению лабораторной работы
- •4.2.1.1. Создание переменных
- •4.2.1.2. Ввод значения входной переменной с клавиатуры
- •4.2.1.3. Выполнение арифметических вычислений
- •4.2.1.4. Вывод результата вычисления
- •4.2.1.5. Пример исходного текста программы
- •4.2.2. Использование переменных с модификатором const в исходных текстах приложений
- •5. Лабораторная работа № 3. Использование оператора выбора и преобразования типов значений переменных
- •5.1. Задание
- •5.2. Методические указания по выполнению лабораторной работы
- •5.2.1. Создание проекта приложения
- •5.2.3. Преобразование сигнала АЦП из целочисленного формата в формат с плавающей десятичной точкой и его масштабирование
- •5.2.4. Вычисление значения физического параметра (температуры) по значению напряжения на выходе датчика
- •5.2.5. Вывод вычисленного значения физического параметра (температуры) на дисплей
- •6. Лабораторная работа № 4. Использование оператора переключателя switch
- •6.1. Задание
- •6.2. Методические указания по выполнению лабораторной работы
- •6.2.1. Создание проекта консольного приложения
- •6.2.2. Ввод с клавиатуры символа - шестнадцатеричной цифры, которую требуется преобразовать в числовой формат
- •6.2.3. Преобразование ASCII-символа шестнадцатеричной цифры в числовой формат
- •6.2.4. Вывод результата преобразования
- •6.2.5. Ввод с клавиатуры произвольного символа и завершение работы приложения
- •7. Лабораторная работа № 5. Создание и использование пользовательских функций
- •7.1. Задание
- •7.2. Методические указания по выполнению лабораторной работы
- •7.2.1. Создание проекта консольного приложения
- •7.2.2. Ввод с клавиатуры символа - шестнадцатеричной цифры, которую требуется преобразовать в числовой формат
- •7.2.3. Создание и вызов функции преобразования кода ASCII-символа в число
- •7.2.3.1. Общий порядок создания и вызова функции
- •7.2.3.2. Использование функции для получения числового значения шестнадцатеричной цифры
- •7.2.4. Вывод на дисплей результата вычисления
- •7.2.5. Ввод с клавиатуры произвольного символа и завершение работы приложения
- •8.1. Методические указания по выполнению лабораторной работы
- •8.1.1. Создание проекта консольного приложения
- •8.1.2. Ввод с клавиатуры символа - шестнадцатеричной цифры, которую требуется преобразовать в числовой формат
- •8.1.3. Создание и вызов функции, размещенной в отдельном файле исходного текста
- •8.1.3.1. Создание нового файла исходного текста и размещение в нем пользовательской функции
- •8.1.3.2. Создание нового файла заголовка и подключение его к проекту
- •8.1.4. Вывод на дисплей результата вычисления
- •8.1.5. Ввод с клавиатуры произвольного символа и завершение работы приложения
- •9. Лабораторная работа №7. Использование массивов, структур и указателей
- •9.1. Методические указания по выполнению лабораторной работы
- •9.1.1. Создание проекта приложения
- •9.1.3. Создание пользовательского типа данных - структуры
- •9.1.4. Подключение файла-заголовка к проекту
- •9.1.5. Создание файла исходного текста и подключение его к проекту
- •9.1.6. Создание функции, выполняющей вычисление значения линейной функции по значению ее аргумента
- •9.1.7. Создание функции, выполняющей поиск линейного отрезка, на котором находится аргумент линеаризуемой функции, и вычисление ее (линеаризуемой функции) значения
- •9.1.7.1. Оператор итерационного цикла for
- •9.1.7.2. Оператор цикла с предусловием while
- •9.1.7.3. Оператор цикла с постусловием do while
- •9.1.7.4. Передача функции вычисления значения линейной функции указателей на используемые элементы массива
- •9.1.8. Создание в файле заголовка прототипа функции
- •9.1.9. Создание константного одномерного массива, содержащего параметры граничных точек линейных отрезков линеаризуемой функции
- •9.1.10. Определение размера массива
- •9.1.11. Объявление объекта данных как глобального
- •9.1.12. Вызов функции MultyLinearFuncCalc из файла main.cpp
- •9.1.13. Вывод результата вычислений и завершение работы приложения
Рис. 26. Результат выполнения приложения
Откомпилируйте Ваше приложение, запустите его и убедитесь в его корректной работе. Продемонстрируйте работу Вашего приложения преподавателю.
2. Скорректируйте ваш исходный текст приложения так, чтобы числовая константа, использующаяся при вычислении вашего выражения из столбца 2 таблицы 3, содержалась бы не в самом выражении, а в переменной с модификатором const, которое будет подставлено в
выражение.
Например, для варианта 1 таблица |
3 содержит выражение sin( X +2.4) , в котором |
используется числовая константа 2.4 |
. В исходном тексте Вам необходимо: |
создать переменную типа float с модификатором const, в которую занести значение значение числовой константы (для варианта 1 - 2.4 );
заменить в строке исходного текста, в которой выполняется вычисление выражения, числовую константу на созданную Вами переменную.
Откомпилируйте Ваше приложение, запустите его и убедитесь в его корректной работе. Продемонстрируйте работу Вашего приложения преподавателю.
4.2. Методические указания по выполнению лабораторной работы
4.2.1.Создание консольного приложения, выполняющего арифметическое действие
слюбым числом
Создание нового консольного приложения описано в предыдущих лабораторных работах (см. раздел 3.2.1.).
Для реализации арифметической операции, выполняемой с числом, вводимым пользователем, Вам необходимо:
1.Создать 2 переменные, имеющие формат float:
переменная, содержащая входное значение;
переменная, содержащая результат вычисления.
2.Осуществить ввод значения входной переменной с клавиатуры.
3.Выполнить расчет, поместить результат в выходную переменную.
27
4. Вывести значение выходной переменной на экран.
4.2.1.1. Создание переменных
В C++ необходимо явно создавать переменные, указывая при создании их тип. Переменная создается строкой следующего вида:
тип_переменной имя_переменной;
или
тип_переменной имя_переменной = начальное_значение;
Здесь: |
|
|
тип_переменной |
Ключевое слово, определяющее тип переменной. C++ поддерживает |
|
два стандартных типа переменных с плавающей десятичной точкой: |
||
|
float |
32-битовый формат числа с плавающей десятичной точкой; |
|
double |
64-битовый формат числа с плавающей десятичной точкой. |
имя_переменной
начальное_значение
Например:
произвольное сочетание символов, создаваемое пользователем. Не должно совпадать с зарезервированными словами C++. ВНИМАНИЕ! Компилятор C++ чувствителен к регистру идентификаторов (в том числе - имен переменных). Большие и маленькие буквы в имени переменной при ее создании должны быть такими же при обращении к ней.
необязательный элемент, который можно использовать для присвоения переменной начального значения.
float MyVariable1; |
// Создание |
переменной типа float. |
|
double VarBufer = 7.5E-2; |
// Создание |
переменной типа double |
|
|
// |
и присваивание ему начального |
|
|
// |
значения. |
Единственным общим условием при создании переменной во всех компиляторах C является следующее: переменная должна быть создана или описана как внешняя до ее первого использования. Однако некоторые версии компиляторов C и C++ требуют, чтобы все переменные создавались до начала текста собственно программы (то есть до первой строки с операцией).
При создании переменной необходимо учитывать ее зону видимости. В данном случае переменная должна быть доступна в пределах функции main в единственном файле исходного
текста Вашего проекта main.cpp. Вследствие этого переменные могут быть созданы либо в начале исходного текста файла main.cpp (перед созданием функции main), либо в начале самой функции main. В рассматриваемых здесь примерах используется второй вариант.
4.2.1.2. Ввод значения входной переменной с клавиатуры
Для ввода значения входной переменной с клавиатуры в данной работе предполагается использовать стандартный поток ввода. Стандартный поток ввода осуществляет ввод данных с
28
клавиатуры и приведение из в формат переменной, в которую осуществляется этот ввод. Строка программы, использующая стандартный поток ввода, выглядит следующим образом:
cin >> имя_переменной;
где имя_переменной - идентификатор ранее созданной переменной. Пример создания переменной и ввода в нее значения с клавиатуры:
... |
|
#include <iostream.h> |
// Заголовок стандартной библиотеки |
|
// потоков ввода/вывода. |
... |
|
float InputBufer; |
// Создание переменной. |
... |
|
cin >> InputBufer; |
// Ввод значения с клавиатуры. |
...
Вданном случае входной поток работает следующим образом:
●накапливает с собственном входном буфере коды всех символов, вводимых пользователем с клавиатуры до тех пор, пока пользователь не нажмет клавишу Enter;
●после нажатия клавиши Enter пытается преобразовать всю накопленную последовательность символов в формат переменной, в которую выполняется ввод. В данном случае выполняется преобразование последовательности кодов цифр в формат числа с плавающей десятичной точкой.
Таим образом пользователь должен вводить с клавиатуры число в том же формате, в котором число с плавающей десятичной точкой записывается в исходном тексте программы.
4.2.1.3. Выполнение арифметических вычислений
Язык программирования C++ поддерживает четыре основных арифметических действия на числами в формате с плавающей десятичной точкой. Символы, используемые для обозначения этих действий в исходном тексте, приведены в таблице 4.
Таблица 4.Символы арифметических операций с числами с плавающей десятичной точкой
Символ операции |
Операция |
|
|
+ |
Сложение |
- |
Вычитание |
* |
Умножение |
/ |
Деление |
Например, если Вам требуется сложить переменную X с числом 2,3 и поместить результат в
29
переменную Y, в исходном тексте это будет выглядеть следующим образом:
...
float X; float Y;
...
cin >> X;
...
Y = X + 2.3;
...
Если результат выполнения арифметической операции должен быть помещен в переменную, являющуюся операндом выражения, C++ предлагает для обозначения такой операции символы "+=", "-=", "*=" и "/=". Например, если Вам требуется разделить переменную
X на число 2 и поместить результат снова в переменную X, эта операция может быть записана двумя способами:
X = X / 2;
или
X /= 2;
Помимо этого компиляторы C++ включают стандартную библиотеку math.h, содержащую функции вычисления различных арифметических функций. Список основных функций данной библиотеки для работы с числами с плавающей десятичной точкой приведен в таблице 5.
Таблица 5. Прототипы функций стандартной библиотеки math, используемые для операций с числами в формате с плавающей десятичной точкой
Функция |
Описание |
|
|
Операции вычисления модуля числа |
|
|
|
double fabs (double x) |
Функция возвращает модуль числа x |
Операции деления |
|
|
|
double fmod (double x, double y) |
Функция возвращает остаток от деления x на y. |
Операции со степенями |
|
|
|
double pow (double x, double y) |
Функция возвращает значение xy. |
double exp (double x) |
Функция возвращает значение ex. |
double pow10 (int p) |
Функция возвращает значение 10p. |
double sqrt (double x) |
Функция возвращает значение квадратного корня |
|
из значения x. |
Тригонометрические функции |
|
|
|
double sin (double x) |
Функция возвращает значение sin (x). Входная |
30