Федеральное государственное бюджетное образовательное учреждение высшего образования
Тамбовский государственный технический университет
Кафедра «Информационные системы и защита информации» Институт автоматики и информационных технологий
ЛАБОРАТОРНАЯ РАБОТА № 3
по дисциплине «Языки программирования» группы СИБ 222
на тему «Изучение стандартных типов данных, унарных и бинарных операций языка программирования С++.
Студент группы СИБ 222
Незнанов Роман Валерьевич
«11» марта 2022
Балл ______ Подпись ____________
Тамбов, 2023
Лабораторная работа №2
Изучение стандартных типов данных, унарных и бинарных операций языка программирования С++.
Цель лабораторной работы
Целью лабораторной работы является изучение стандартных возможностей языка программирования С++ при работе с переменными.
Задание 1. Написать программу, которая на основе введённых пользователем логических значений x, y и вещественных a и b вычисляет значение выражения в соответствии с вариантом.
Решение: #include using namespace std;
int main() {
bool x, y;
double a, b;
cout << "Enter values in the order x, y, a, b without commas separated by spaces" << endl;
cin >> x >> y >> a >> b;
cout << ((!y) || (!x && y) || (a == b));
return 0;
}
Задание 2. Напишите программу, которая выводит таблицу истинности логического выражения, относительно логических переменных x, y, z и t, соответствующего варианту.
#include using namespace std;
int main() {
bool x, y, z, t;
cout << "Enter values in the order x, y, z, t without commas separated by spaces" << endl;
cin >> x >> y >> z >> t;
cout << (!(z && t) || (x && y) || (!(z && (!t))));
return 0;
}
}
Задание 3. Напишите программу, в которой объявляется четыре переменных: целочисленная переменная q и три указателя: pq, ppq, pppq. В первый указатель записывается адрес переменной q, во второй – адрес первого указателя, а в третий – адрес второго указателя. Вывести адрес первого указателя через первый указатель.
#include using namespace std;
int main() {
int q;
int *pq = &q;
int **ppq = &pq;
int ***pppq = &ppq;
cout << &pq;
return 0;
}
Задание 4. Напишите программу, которая, используя только унарные, бинарные операторы и sizeof() выводит осуществляет целочисленное деление введённого пользователем целого числа на 2n , где n - целое число и вводится от пользователя.
Решение: #include using namespace std;
int main() {
int a, n;
cin >> a >> n;
cout << (a >> n);
return 0;
}
Задание 5.
Напишите программу, которая проверяет, принадлежит ли точка заданной области. Если область задана системой неравенств, то изобразите область самостоятельно. Реализуйте ветвление с помощью оператора if.
Решение: #include #include using namespace std;
int main() {
double x, y;
cin >> x >> y;
if ((abs(x) + abs(y) <= 4) and (1.5*x-y-1<0) and ((-1.5)*x-y-1<0)) cout << "YES";
else cout << "NO";
}
Задание 6. Напишите программу, в которой ветвление реализовано с помощью тернарного оператора и/или оператора switch.