Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Потоковый ввод данных числового типа




Операторы ввода исходных данных с клавиатуры

Операторы ввода-вывода

Инкремент и декремент

Странные операторы присваивания

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

i = i + 1;

Если считать это уравнением, то оно бессмысленно с точки зрения математики. Однако с точки зрения информатики этот оператор служит для увеличения значения переменной i на единицу.

Буквально это означает: взять старое значение переменной i, прибавить к нему единицу и записать результат в ту же переменную i.

В языке С++ определены специальные операторы быстрого увеличения на единицу

(инкремента)

i ++; (постфиксная форма) или ++ i; (префиксная форма)

что равносильно оператору присваивания

i = i + 1;

и быстрого уменьшения на единицу (декремента)

i--; или --i;

что равносильно оператору присваивания

i=i-1;

Между первой и второй формами этих операторов есть существенная разница, но только тогда, когда они входят в состав более сложных операторов или условий (разберемся позже).

Операторы ввода-вывода данных служат для обмена инфор­мацией между внутренней памятью компьютера и внешними уст­ройствами (монитор, клавиатура, принтер, накопители на жестких и гибких магнитных дисках и др.).

Информация, представленная на внешних устройствах, орга­низуется в файлы. Файлы, предназначенные для хранения исход­ных данных, называются входными. Результаты вычислений (вы­ходные данные) записываются в выходные файлы (они же могут стать потом входными).

Работа оператора ввода

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

Для начинающих программистов проще всего организовать в программе ввод числовой информации из буфера потока, связанного с так называемым стандартным устройством ввода (stdin). Данные в этом буфере оказываются в тот момент, когда программа обращается к пользователю и ждет окончания набора затребованных числовых значений с клавиатуры. Программа может запросить одно или несколько значений:

cin >> d;........... cin >> x1 >> x2 >> x3;

Первая строка соответствует запросу на ввод значения единственной переменной d. Следующая строка программы представляет запрос на ввод трех числовых значений, первое из которых будет присвоено переменной x1, второе значение будет предназначаться для переменной x2, третье значение - для переменной x3. В ответ на запрос программы пользователь должен набрать на клавиатуре затребованные числа, разделяя их, по крайней мере, одним пробелом. Набор данных завершается нажатием клавиши Enter. Количество числовых значений, набираемых пользователем в пределах строки, может оказаться как меньше, так и больше, чем требуется программе. В первом случае продолжение программы задержится до тех пор, пока пользователь не введет дополнительные строки с недостающими значениями. Если пользователь наберет слишком много значений во вводимой строке, то лишние числовые данные сохранятся в буфере ввода и будут переданы программе при выполнении следующего оператора cin.

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

Для обеспечения потокового ввода к программе следует подключить заголовочный файл iostream и применить директиву using namespace.

using namespace std позволяет использовать имена из пространства имен std.

std - это имя стандартной библиотеки C++.

#include <iostream>using namespace std; int main(){ int i; float f; double d;.......... cin >> i >> f >> d;..........return 0;}

В переменные типа char или unsigned char из потока числовые значения ввести невозможно, т.к. они в данном случае воспринимаются системой не как числовые данные, а как символьные. В такие переменные попадет только первый символ набранного значения.

Если в последнем примере убрать строку подключения пространства имен using namespace std, то надо будет указывать наименование пространства имен явно:

std::cin >> i >> f >> d;Тема «Пространство имен» не входит в круг вопросов, освещаемых в данном пособии. Для самостоятельного изучения данного вопроса рекомендуем воспользоваться источником [3].



Поделиться с друзьями:


Дата добавления: 2014-12-26; Просмотров: 338; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.009 сек.