
- •Компьютерная и микропроцессорная техника в электрооборудовании
- •Тема № 1 Разработка и отладка программ линейного вычислительного процесса
- •Управления вводом/выводом
- •Варианты заданий
- •Тема № 2 Разработка и отладка программ разветвляющегося вычислительного процесса. Логический условный оператор
- •Разработка и отладка программ циклического вычислительного процесса. Оператор цикла с параметром
- •Основные управляющие структуры - повторения
- •Варианты заданий
- •Тема № 6 Разработка и отладка программ с использованием структурированных типов данных – одномерных массивов
Управления вводом/выводом
Отличия от используемых в языке С средств ввода/вывода данных в языке С++ связаны с применением предопределенных потоков и встроенных наборов классов для управления вводом/ выводом.
Отличия потокового ввода/вывода от традиционного:
- функции printf() и scanf() не предусматривают проверки типа данного, т.е. компилятор не сигнализирует о несоответствии спецификаций формата передаваемым аргументам;
- классы в С++ позволяют одним и тем же процедурам работать с потоками различных типов (стандартными, файловыми, резидентными и пользовательскими);
- единообразный интерфейс ввода/вывода.
Для работы с потоками и классами управления ввода/выводом необходимо подключение следующих библиотечных файлов: iostream.h (стандартный ввод/ вывод), fstream.h (файловый ввод/вывод), iomanip.h (манипулятры), strstream.h (резидентные потоки).
Библиотека iostream.h имеет четыре предопределенных объекта-потока, ассоциированных со стандартными устройствами ввода/вывода, а именно:
- cin ассоциируется со стандартным вводом (клавиатурой);
- cout ассоциируется со стандартным выводом (экраном);
- cerr ассоциируется со стандартным устройством ошибок (экраном) с небуферизованным выводом;
- clog ассоциируется со стандартным устройством ошибок (экраном) с буферизованным выводом.
Для ввода и вывода в библиотеке iostream.h определены два основных класса: istream и ostream соответственно. Класс ostream использует для вывода операцию левого сдвига (<<), и если данная операция применяется к объектам-потокам, то ее называют операцией помещения в поток. Класс istream использует для ввода операцию правого сдвига (>>), и если данная операция применяется к объектам-потокам, то ее называют операцией извлечения из потока. Классы istream и ostream перегружают операции извлечения и помещения для всех встроенных типов данных. Таким образом, для ввода/вывода символов, строк, целых и вещественных чисел существует единый синтаксис. Допускается при вводе/выводе последовательное сцепление нескольких операций << и >>.
Пример 1
#include <iostream.h>
#include <math.h>
void main()
{ int a=1; float b=-5.3, x; char c='d';
cout << "Введите х ";
cin >> x; ; cout << "sin(x)="<<sin(x)<<'\n';
cout <<a<<' '<<b<<' '<< c;}
Библиотека потоков iostream.h предусматривает три способа управления форматом выходных данных: с помощью форматирующих функций-элементов, использованием флагов или манипуляторов [1].
Варианты заданий
Составьте программу вычислений по следующим формулам.
,
где
;
= 0, 345; y
= 3,43.
, где
х = 1/
sin ;
= 1,3; y
= 1,8.
, где
; x = 3,723; y = 25,3.
, где
; а = 2,08.
, где a = sin(B) + cos(2B) + 1;
B = 1,75.
, где
, a = 0,87; x = 2,18.
, где
, = 3,18, = 25,1.
, где
;
y = 2,17; y = 0,23.
, где
; b = 0,315.
; где
; = 1,5; z = 1,21.
, где
;
= 0,5; y = 0,425.
, где
; = 0,5; x = 0,25.
, где
, Z = 5;
y = -7.
,
где
;
Z
=
1,5;
= 3,14.
, где
; x = 1,5;
G = 2,2.
, где
; x = 1,2; y = 2,2.
, где
; y = 1,25.
, где
; y = 1,43.
, где
; y = 1,34.
, где
; x = 1,21.
, где
; y = -0,5.
b = ln | (y -
(x – y/z + x2/4), где
; x = 1,5; y = -1.
, где
; y = 0,5.
, где
; x = 52,8.
, где
; x = 1,426.