701.88K
Category: programmingprogramming

Ввод и вывод. Занятие 1

1.

Ввод и вывод
Занятие 1

2.

Первая программа
/*Первая программа.
Выводит текст на экран.
*/
#include <iostream>
using namespace std;
int main()
{
cout<<"Hello World"; // комментарии
return 0;
}

3.

#include – для подключения стандартных и дополнительных библиотек
<iostream> - input-output stream – поток ввода-вывода
cout<<
(поток вывода)
cin>>
(поток ввода)
Может быть несколько << в одной команде
cout<<"Hello World";
cout<<"Hello"<<" World";

4.

Для перехода на новую строку используется команда endl
cout<<"Hello World"<<endl;
cout<<"Hello"<<endl<<"World";
Одиночные символы можно заключать в одиночные кавычки
cout<<"H"<<'e'<<'l'<<'l'<<'o '<<endl;

5.

using namespace std; - объявление пространство имён std
В области std описаны стандартные потоки ввода и вывода (cin/cout)
Можно так:
std::cout<<"Hello"<<std::endl;
Можно так:
#include <iostream>
using std::cin;
using std::cout;
int main()
{
cout<<"Hello World";
return 0;
}

6.

Диалоговые программы
В С++ переменные нужно объявлять:
int a,b,c; //Тип- имя
int a=2; //Тип –имя- значение – инициализация при объявлении
#include <iostream>
using namespace std;
int main()
{
int a,b;
cout<<"Введите целые числа? ";
cin>>a>>b; // значение вводит пользователь
cout<<a;
return 0;
}

7.

Имена переменных
МОЖНО использовать:
• латинские буквы (A-Z, a-z)
заглавные и строчные буквы различаются
• цифры
имя не может начинаться с цифры
• знак подчеркивания _
НЕЛЬЗЯ использовать
• русcкие буквы
• скобки
• знаки +, =, !, ? и др.

8.

Мы будем использовать следующие типы: целый, вещественный, строковый,
одиночный символ, логический
int a=1;
float b=1.1;
double c=1.1;
string d="sdf dfs";
char e='q';
bool f=true;
cout<<a<<" "<<b<<"c= "<<c<<" "<<d<<" "<<e<<" "<<f;

9.

При записи в переменную значения другого типа могут возникать ошибки!
int a=1.9; - пропадёт дробная часть
Но можно:
int a='A';
float b=1;
double c=1;
char e=78;

10.

Пример. Сложить два целых числа.
Вариант 1
Вариант 2
Вариант 3
Вариант 4
cout<<123+456;
int a=123, b=456;
cout<<a+b;
int a=123, b=456, c;
c=a+b;
cout<<c;
int a, b, c;
cout<<"Введите два числа: ";
cin>>a>>b;
c=a+b;
cout<<c;
Вариант 5
int a, b;
cout<<"Введите два числа: ";
cin>>a>>b;
cout<<a<<"+"<<b<<"="<<a+b;

11.

int (4 байта)
int a=1;
cout<<sizeof(a); // определение размера переменной в
байтах
Или
cout<<sizeof(int);

12.

Вывод данных целого типа
Манипуляторы
Библиотека iomanip
1) setw
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int a=32;
cout<<setw(3)<<a<<endl; // “_32”
return 0;
}
2) left/right
int a1=32, b1=12, c1=0;
int a2=-123, b2=13, c2=10;
cout<<a1<<" "<<b1<<" "<<c1<<endl;
cout<<a2<<" "<<b2<<" "<<c2<<endl;
cout<<endl;
cout<<setw(5)<<a1<<setw(5)<<b1<<setw(5)<<c1<<endl;
cout<<setw(5)<<a2<<setw(5)<<b2<<setw(5)<<c2<<endl;
cout<<endl;
cout<<left<<setw(5)<<a1<<setw(5)<<b1<<setw(5)<<c1<<endl;
cout<<setw(5)<<a2<<setw(5)<<b2<<setw(5)<<c2<<endl;

13.

float (4 байта) и double(8 байт)
float a=5.123;
Мантисса (значащая часть числа)
Научный формат:
float b=1.123123e-19;// 1.123123*10-19
float c=1.123123e19;// 1.123123*1019
float a=0.1,b,c;
b=a+a;//0.2
c=b-0.2;
cout<<c;
Порядок числа
Результат - 2.98023e-09, а не 0!

14.

Вывод данных вещественного типа
Манипуляторы
fixed (обычный,
не научный)
setprecision()
количество цифр в
дробной части
scientific (научный )
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
float a=0.1,b,c;
b=a+a; //0.2
c=b-0.2;
cout<<c<<endl;
cout<<fixed<<c<<endl;
cout<<setprecision(10)<<fixed<<c<<endl;
cout<<fixed<<setprecision(10)<<c<<endl;
cout<<scientific<<c<<endl;
cout<<setprecision(10)<<c<<endl;
}

15.

Вывод данных логического типа
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
bool a1=true, b1=false;
bool a2=1, b2=0;
cout<<"a1="<<a1<<" b1="<<b1<<endl;
cout<<"a2="<<a2<<" b2="<<b2<<endl;
cout<<endl;
cout<<boolalpha<<"a1="<<a1<<" b1="<<b1<<endl;
cout<<noboolalpha<<"a2="<<a2<<" b2="<<b2<<endl;
}
English     Русский Rules