
1 семестр ФИБС / Информатика / Лабораторные / ФИО_ЛР6_номер группы
.docxМИНОБРНАУКИ РОССИИ
Санкт-Петербургский государственный
электротехнический университет
«ЛЭТИ» им. В.И. Ульянова (Ленина)
Кафедра ИИСТ
отчет
по лабораторной работе №6
по дисциплине «Информатика»
Тема: Числа, символы, системы счисления. Операции языка С++.
Студентка гр. номер |
|
ФИО |
Преподаватель |
|
Куракина Н.И |
Санкт-Петербург
20__
Цель.
Написать программы с использованием языка С++.
Задание.
Написать программу, читающую две переменные целого типа – short (положительную и отрицательную, равные по модулю, например: (25 -25) и выводящую положительную в восьмеричном, шестнадцатеричном форматах и отрицательную в дополнительном коде. В качестве проверочного числа возьмите последние 3 цифры номера вашего студенческого билета.
Написать программу, читающую с клавиатуры один символ и выводящую численное значение символа.
Изменить программу задания 2 так, чтобы она читала с клавиатуры одно число больше 0 и меньше 256 и выводила соответствующий символ и символ, следующий по алфавиту.
Основные теоретические положения.
Как вводить в консоль русские буквы?
Для этого сначала нужно подключить библиотеку locale.h, а затем ввести в саму программу функцию setlocale (LC_ALL, "rus")
Функция printf - используется для печати символов, строк и чисел на экран. Функцию printf () используется со спецификатором формата %d для отображения целочисленного значения, %o для отображения числа в восьмеричной системе счисления, %x – для отображения числа в шестнадцатеричной системе счисления.
аналогично – %c используется для печати символов, %f – для чисел с плавающей точкой и так далее.
Функция scanf - это программа ввода общего назначения, выполняющая ввод с консоли. Она может читать данные всех встроенных типов и автоматически преобразовывать числа в соответствующий внутренний формат, scanf () во многом выглядит как обратная к printf (). Каждый спецификатор формата ввода начинается со знака %, причем спецификаторы формата ввода сообщают функции scanf () тип считываемых данных. Спецификаторам преобразования в порядке слева направо ставятся в соответствие элементы списка аргументов. %c - читает одиночный символ. %d - читает десятичное целое число.
Спецификаторы формата - это условные обозначения, позволяющие считать из входящего потока определенную конструкцию и сохранить ее. Последовательность, образованная начальным процентным знаком (%), который используется для указания типа и формата данных.
Модификаторы формата – пишутся после знака % перед спецификатором формата. Например, %-8.5f, %2d. «-» означает выравнивание чисел по левому краю, если минуса нет, то по правому. Дальше идёт цифра, обозначающая ширину поля на экране предназначенного для вывода этой переменной.
Тип char - Тип char может быть знаковым и беззнаковым. Обозначается, соответственно, как "signed char" (знаковый тип) и "unsigned char" (беззнаковый тип). Знаковый тип может хранить значения в диапазоне от -128 до +127. Беззнаковый - от 0 до 255. Под переменную типа char отводится 1 байт памяти (8 бит). Ключевые слова (модификаторы) signed и unsigned указывают, как интерпретируется нулевой бит объявляемой переменной, т.е., если указано ключевое слово unsigned, то нулевой бит интерпретируется как часть числа, в противном случае нулевой бит интерпретируется как знаковый.
Как вывести символ, следующий по алфавиту?
Для этого нужно использовать операцию увеличения на 1. Эта операция называется инкрементом. Чтобы вывести символ, следующий за данным, нужно поставить ++ перед операндом (т.е. для переменной с, следующая переменная будет ++с).
Операнд – величина, над которой выполняется операция.
Результаты работы.
Программа, читающая две переменные целого типа – short и выводящая положительную в восьмеричном, шестнадцатеричном форматах и отрицательную в дополнительном коде.
В результате выполнения получаем:
Переведём число в разные системы счисления без программы:
В восьмеричную:
В шестнадцатеричную:
Дополнительный код отрицательного числа:
Проверим программу с использованием другого проверочного числа (715 и -715)
В результате выполнения программы получаем следующее:
Переведём число в разные системы счисления без программы:
В восьмеричную:
В шестнадцатеричную:
Дополнительный код отрицательного числа:
Программа, читающая с клавиатуры один
символ и выводящую численное значение
символа.
В результате выполнения программы:
Изменить программу задания 2 так, чтобы она читала с клавиатуры одно число больше 0 и меньше 256 и выводила соответствующий символ и символ, следующий по алфавиту.
В результате выполнения получаем следующее:
Выводы.
В результате выполнения работы были написаны три программы, выполняющие различные задачи. Улучшена работа с функциями форматного ввода и вывода. Получен навык использования типа данных char в написании программ. Получен навык работы с операциями инкремента.