Скачиваний:
0
Добавлен:
31.05.2025
Размер:
1.27 Mб
Скачать

МИНОБРНАУКИ РОССИИ

Санкт-Петербургский государственный

электротехнический университет

«ЛЭТИ» им. В.И. Ульянова (Ленина)

Кафедра ИИСТ

отчет

по практической работе №5

по дисциплине «Информационные технологии»

Тема: Работа с объектами.Перегрузка операций.

Студентка гр. номер

ФИО

Преподаватель

Куракина Н.И

Санкт-Петербург

20__

Цель работы.

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

Задание.

1.Написать программу, читающую с клавиатуры десятичное целое число и выводящую битовое (двоичное) представление данного числа.

            Возможный алгоритм:

вводимое число 32 раза делится на 2 и определяется остаток от деления 0 или 1. Данный остаток и будет представлять один разряд в двоичном представлении.

В отчете число, заданное преподавателем перевести вручную.

 2. Написать программу сложения векторов в трехмерном пространстве, используя перегрузку стандартных операций.

 В обоих заданиях использовать классы!

Основные теоретические положения.

  • Как реализовать возможный алгоритм?

Для этого необходимо использовать цикл while() для переменной q, которой присваивается значение переменной n. Также следует объявить переменную i=0, которая указывает на количество операций. Каждый элемент делится с остатком на 2, остаток записывается, а само число уменьшаем вдвое и повторяем те же операции с новым числом. Переменной l присваивается значение i, что определяется как длина числа в двоичной системе счисления.

  • Как вывести полученное число?

При такой реализации программа переводит число в двоичную систему без его записи в обратном порядке, поэтому необходимо перевернуть полученное число при выводе. Это делается с помощью цикла for(). В синтаксисе цикла переменная i принимает значение l-1 (так как последней операцией при делении на 2 является операция деления числа 1 на 2, результат которой всегда будет равняться 0, следовательно, длина числа всегда будет больше на 1 элемент с учетом этого нуля). Далее пока длина числа больше нуля, число записывается справа налево.

Результаты работы.

Общий вид 1 программы:

Запускаем программу на выполнение.

В результате выполнения программа требует ввести число в десятичной системе. Вводим 127:

Далее программа выводит число в двоичной системе счисления:

Осуществим проверку результата ручным способом:

Программа сработала верно!

Проверим число 455:

Проверка ручным способом:

Программа сработала верно!

Общий вид 2 программы:

Запускаем программу на выполнение.

В результате выполнения программа сразу выводит координаты всех векторов, так как они заданы заранее:

В первой строчке выводятся координаты вектора с после сложения a и b.

Во второй строчке выводятся координаты вектора с после сложения a, b, а также полученного вектора с.

В третьей и четвертой строчках выводятся координаты векторов после присваивания значения вектора b, а затем вектора а.

Выводы.

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

Соседние файлы в папке Пратика 5