Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лабораторная работа №9

.docx
Скачиваний:
1
Добавлен:
19.10.2022
Размер:
1.13 Mб
Скачать

Федеральное агентство связи

Ордена Трудового Красного Знамени федеральное государственное бюджетное образовательное учреждение высшего образования

«Московский технический университет связи и информатики»

Кафедра «Информатики»

Лабораторная работа №9

по дисциплине: «Информатика»

по теме: «Основные средства языка программирования VС++.

Типы данных и их преобразование»

Выполнила Студентка 1 курса

Группа ЗРС 2001

Баланюк Е.С.

Вариант №3

Проверил :

Старший преподаватель

Юсков И.А.

Москва

2020

Лабораторная работа №9 по теме «Основные средства языка программирования VС++.

Типы данных и их преобразование.»

Цель выполнения лабораторной работы состоит в изучении алфавита языка, типов данных и правил записи арифметических выражений, содержащих константы, переменные, различные арифметические действия и математические функции, ознакомлении с основными правилами преобразования типов и средствами ввода и вывода данных в С++.

1.  Вопросы, подлежащие изучению

  1. Алфавит  и лексемы языка VС++.

  2. Основные понятия: программа, операторы, комментарий. 

  3. Данные, типы данных в С++.

  4. Константы и литералы. 

  5. Переменные и их инициализация.

  6. Арифметические операции над данными.

  7. Выражения. Последовательность выполнения действий в арифметических выражениях. Понятие приоритета.

  8. Оператор присваивания. Понятие Lvalue.

  9. Явные и неявные преобразования типов. Основные правила преобразования.

  10. Ввод и вывода данных в С++. Директивы.

2.  Общее задание на разработку проекта

  1. Изучите основные средства языка программирования VС++ и типы данных

  2. Выберите индивидуальный вариант задания из табл. 1. 

  3. Решите задачу вычисления арифметического выражения. Для этого, формализуйте   арифметическое выражение, т.е. запишите выражение по правилам языка программирования с учетом приоритета операций.

  4. Изучите различные возможности преобразования вещественного числа в целое:  с усечением (явное и неявное), с округлением в большую сторону, с округлением в меньшую сторону. Запишите для них четыре выражения  по правилам языка программирования для оператора присваивания в любые дополнительные  переменные целого типа. Кроме того, изучите работу операции постфиксного и префиксного инкремента и декремента.

  5. Нарисуйте схему алгоритма решения задачи средствами MS Visio.

  6. Составьте программу решения задачи на С++, добавив в программный код операции префиксного и постфиксного инкремента или декремента для переменных, получивших свои значения усечением в результате неявного и явного преобразования вещественного числа в целый тип.

  7. Получите результаты и проанализируйте их.

  8. Докажите правильность результата.

1)Тема «Основные средства языка программирования VС++.

Типы данных и их преобразование.»

2) Баланюк Екатерина, ЗРС 2001, вариант

3) Задание на разработку проекта и вариант задания:

Решите задачу вычисления арифметического выражения при значениях исходных данных x=32,01  и  y= -0,4917 (рисунок 1):

Рисунок 1.Задание

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

4) Формализация и уточнение задания:

Для формализации и уточнения задания определим, что исходные данные x, y - вещественного типа double.  Результаты вычислений - переменная  h – также вещественного типа double. Для изучения различных возможностей преобразования вещественного числа в целое определим четыре целые переменные, например,  k, m, n, p  – переменные целого типа int. Этим переменным будем присваивать значения, полученные разными способами преобразования вещественного числа в целое:  с усечением (явное и неявное преобразования типа), с округлением в большую сторону с помощью функции ceil, с округлением в меньшую сторону посредством функции floor. Заданные вычисления на языке программирования будут записываться следующими операторами С++

setlocale(0, "");

double h, x, y;

int k, m, n, p;

cin >> x;

cin >> y;

h = (x * y + sin(x)) / (abs(1 - y) * log(x));

k = h;

m = floor(h);

n = ceil(h);

p = static_cast<int>(h);

cout << "результат h= " << h << endl;

cout << "округление в большую сторону n= " << n << endl;

5) Схема алгоритма решения задачи (рисунок 2):

Рисунок 2 – Схема алгоритма решения задачи

6) Программный код проекта

Программный код проекта приведен на рис.3. Поскольку при вычислении h используется математические функции sin, abs, log то  требуется подключить  системную  библиотеку cmath. Также в программный код включены операции префиксного и постфиксного инкремента.

Рисунок 3 – Программный код решения задачи

7) Результаты выполнения программы 

Результаты выполнения программы при заданных значениях исходных данных приведены на рисунке 4.

Рисунок 4 – Результат выполнения проекта

8) Доказательство правильности работы программы (рисунок 5,6).

Рисунок 5.Расчет арифметического выражения

Рисунок 6. Правильность результата