Знакомство с языком С++

Содержание

Слайд 2

ЗАДАЧА 1. Заданы длины двух катетов прямоугольного треугольника a, b. Вычислить

ЗАДАЧА 1. Заданы длины двух катетов прямоугольного треугольника a, b. Вычислить

длину гипотенузы c и величины двух его углов.

 

Слайд 3

#include #include using namespace std; int main() { double a,b,c,alf,bet,s; cout

#include
#include
using namespace std;
int main()
{
double a,b,c,alf,bet,s;
cout<<"A=";


cin>>a;
cout<<"B=";
cin>>b;
s=a*b/2;
c=pow(a*a+b*b,0.5);
alf=atan(a/b);
bet=3.14159/2-alf;
cout<<"\n A="<cout<<"\nS="<}
Слайд 4

Общая структура любой программы Директивы препроцессора Объявление глобальных переменных Тип_ результата

Общая структура любой программы

Директивы препроцессора
Объявление глобальных переменных
Тип_ результата main(Список_переменных)


{
Операторы
}
Тип_результата f1(Список_переменных)
{
Операторы
}
Тип_результата f2(Список_переменных)
{
Операторы
}
...
Тип_результата fn(Список_переменных)
{
Операторы
}
Слайд 5

Структура простейшей программы int main() { Операторы }

Структура простейшей программы
int main()
{
Операторы
}

Слайд 6

Трансляторы интерпретаторы - , трансляторы которые переводят каждый оператор программы в

Трансляторы

интерпретаторы - , трансляторы которые переводят каждый оператор программы в машинный

код и по мере перевода операторы выполняются процессором , ;

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

Слайд 7

Алфавит языка Программа на языке С++ может содержать следующие символы: •

Алфавит языка

Программа на языке С++ может содержать следующие символы:
• прописные

строчные латинские буквы , A, B, C, x, y, z ; и знак подчеркивания
• арабские цифры от до 0 9;
• специальные знаки : { } , |, [ ] ( ) + / % * . \ : ? < = > ! & # ~ ; ^
• символы пробела табуляции и перехода на новую строку
Слайд 8

Типы данных К основным типам данных языка относят: • char -

Типы данных

К основным типам данных языка относят:
• char - символьный


• int - целый
• float - с плавающей точкой
• double - двойной точности
• bool - логический
Слайд 9

Составные типы данных В С++ определены четыре спецификатора типов данных: •

Составные типы данных

В С++ определены четыре спецификатора типов данных:
• short

- короткий
• long - длинный
• signed - знаковый
• unsigned - беззнаковый
Слайд 10

Символьные типы

Символьные типы

Слайд 11

Целые типы

Целые типы

Слайд 12

Вещественные типы mE±p, где m мантисса (целое или дробное число с

Вещественные типы

mE±p,
где m мантисса (целое или дробное число с десятичной

точкой ),
p порядок (целое число).
Например,
-6.42Е+2 = -6.42.102 = -642,
3.2E-6 = 3.2.10-6 =0.0000032
Слайд 13

Логический тип bool true ( ) истина или false ( )

Логический тип bool true ( ) истина или false ( )

ложь

Тип void
Множество значений этого типа пусто.

Слайд 14

Переменные в языке С++ тип список_переменных ; Например, int a, bc,

Переменные в языке С++

тип список_переменных ;
Например,
int a, bc,

f;
float g, u, h12;
локальные глобальные формальные
Слайд 15

Локальные переменные int main() { float s; //В функции main определена

Локальные переменные

int main()
{
float s; //В функции main определена вещественная

переменная s,
s=4.5; //и ей присвоено значение 4.5.
}
int f1()
{ int s; //В функции f1 описана другая переменная s (типа int),
s=6; //ей присвоено значение 6.
}
int f2()
{
long int s; //В функции f2 определена еще одна переменная s
s=25; //(типа long int) и ей присвоено значение 25.
}
Слайд 16

Глобальные переменные float s; //Определена глобальная переменная s (типа float). int

Глобальные переменные

float s; //Определена глобальная переменная s (типа float).
int main()


{
s=4.5; //В функции main переменной s присваивается значение 4.5.
}
int f1()
{
s=6; //В функции f1 переменной s присваивается значение 6.
}
int f2()
{
s=25; //В функции f2 переменной s присваивается значение 25.
}
Слайд 17

Константы в языке С++ Описание константы имеет вид: сonst тип имя=значение; Пример: const double pi=3.141592653589793

Константы в языке С++

Описание константы имеет вид:
сonst тип имя=значение;
Пример:
const double pi=3.141592653589793

Слайд 18

Основные операции языка С++

Основные операции языка С++

Слайд 19

Слайд 20

Операции присваивания Общий вид: имя_переменной=значение; операция множественным присваиванием : имя_переменной1= имя_переменной2=..= имя_переменнойN=значение; Пример a=b=c=3.14159/6;

Операции присваивания

Общий вид:
имя_переменной=значение;
операция множественным присваиванием :
имя_переменной1= имя_переменной2=..= имя_переменнойN=значение;
Пример a=b=c=3.14159/6;

Слайд 21

Составное присваивание Операции +=, =, *=, /= называют составным присваиванием пример:

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

Операции +=, =, *=, /= называют составным присваиванием
пример:
x+=p; //Увеличение x

на p, то же что и x=x+p.
x-=p; //Уменьшения x на p, то же что и x=x-p.
x*=p; //Умножение x на p, то же что и x=x*p.
x/=p; //Деление x на p, то же что и x=x/p.
Слайд 22

Стандартные математические функции

Стандартные математические функции

Слайд 23

Структура программы тип_результата имя_функции (параметры) { оператор1; оператор2; .. операторN; }

Структура программы

тип_результата имя_функции (параметры)
{
оператор1;
оператор2;
..
операторN;
}

Слайд 24

Ввод и вывод данных с помощью функций ввода-вывода в стиле С с использованием библиотеки классов С++

Ввод и вывод данных

с помощью функций ввода-вывода в стиле С

с использованием

библиотеки классов С++
Слайд 25

Функции ввода- вывода printf(строка форматов, список выводимых переменных) функция выполняет форматированный

Функции ввода- вывода

printf(строка форматов, список выводимых переменных)
функция выполняет форматированный вывод переменных,

указанных в списке, в соответствии со строкой форматов.
scanf(строка форматов, список адресов вводимых переменных)
функция выполняет ввод переменных, адреса которых указаны в списке, в соответствии со строкой форматов.
Слайд 26

Спецификации % флаг ширина . точность модификатор тип

Спецификации

% флаг ширина . точность модификатор тип

Слайд 27

Символы управления

Символы управления

Слайд 28

Слайд 29

Специальные символы

Специальные символы

Слайд 30

#include Заголовочный файл stdio.h содержит описание функций ввода-вывода.

#include
Заголовочный файл stdio.h содержит описание функций ввода-вывода.

Слайд 31

Задача. Зная a, b, c длины сторон треугольника , вычислить площадь

Задача. Зная a, b, c длины сторон треугольника , вычислить площадь

S и периметр P этого треугольника. Входные данные: a, b, c. Выходные данные: S, P. Для вычисления площади применим формулу Герона.
Слайд 32

#include #include int main() { float a,b,c,S,r; //Описание переменных. //В операторах

#include
#include
int main()
{
float a,b,c,S,r; //Описание переменных.
//В операторах scanf для вычисления

адреса переменной применяется операция &.
printf("a="); //Вывод на экран символов a=
scanf("%f",&a); //Запись в переменную а значения введенного с клавиатуры.
printf("b="); //Вывод на экран символов b=.
scanf("%f",&b); //Запись в переменную b значения введенного с клавиатуры.
printf("c="); //Вывод на экран символов c=
scanf("%f",&c); //Запись в переменную c значения введенного с клавиатуры.
r=(a+b+c)/2; //Вычисление полупериметра.
S=sqrt(r*(r-a)*(r-b)*(r-c)); //Вычисление площади треугольника.
//Вывод символов S=, значения S и символа табуляции \t.
//Спецификация %5.2f означает, что будет выведено вещественное число,
//под которое отводится 5 знаков, причем 2 из них после точки.
printf("S=%5.2f \t",S);
//Вывод символов p=, значения выражения 2*r
//и символа окончания строки \n.
printf("p=%5.2f \n",2*r);
//Оператор printf("S=%5.2f \t p=%5.2f \n",S,2*r);
//выдаст тот же результат.
return 0;}
Слайд 33

Вариант второй #include #include int main() { float a,b,c,S,r; printf("Vvedite a,

Вариант второй

#include
#include
int main()
{
float a,b,c,S,r;
printf("Vvedite a, b, c \n"); //Вывод

на экран строки символов.
scanf("%f%f%f",&a,&b,&c); //Ввод значений.
r=(a+b+c)/2;
S=sqrt(r*(r-a)*(r-b)*(r-c));
printf("S=%5.2f \t p=%5.2f \n",S,2*r); //Вывод на экран результатов.
return 0;
}
Слайд 34

Объектно-ориентированные средства ввода-вывода заголовочный файл iostream.h. директивы #include в программе автоматически

Объектно-ориентированные средства ввода-вывода

заголовочный файл iostream.h.
директивы #include в
программе автоматически создаются объекты-потоки

cin для ввода с клавиатуры и cout для
вывода на экран, а так же операции помещения в поток << и чтения из потока >>.
Итак, с помощью объекта cin и операции >> можно присвоить значение любой переменной
Например, если переменная i описана как целочисленная, то команда cin>> i; означает, что в
переменную i будет записано некое целое число, введенное с клавиатуры. Если нужно ввести
несколько переменных, следует написать cin>>x>>y>>z;.
Объект cout и операция << позволяют вывести на экран значение любой переменной или
текст. Текст необходимо заключать в двойные кавычки, кроме того, допустимо применение
специальных символов \t и \n. Запись cout<i. А команда cout<символом табуляции.
Слайд 35

Известны плотность r, высота h и радиус основания R цилиндрического слитка,

Известны плотность r, высота h и радиус основания R цилиндрического слитка,

полученного в металлургической лаборатории. Найти объем V, массу m и площадь S основания слитка. Входные данные: r, h, R. Выходные данные: S, V, m. Учитывая, что S=2pR, V=pR2h и m=rV
Слайд 36

#include "stdafx.h" #include using namespace std; #define pi 3.14159 //Определение константы.

#include "stdafx.h"
#include
using namespace std;
#define pi 3.14159 //Определение константы.
int main()
{double R,h,r,S,V,m;

//Описание переменных.
cout<<"R="; //Вывод на экран символов R=.
cin>>R; //Ввод значения переменной R.
cout<<"h="; //Вывод на экран символов h=.
cin>>h; //Ввод значения переменной h.
cout<<"r="; //Вывод на экран символов r=.
cin>>r; //Ввод значения переменной r.
S=2*pi*R; //Расчет площади.
V=pi*R*R*h; //Вычисление объема.
m=r*V; //Определение массы.
cout<<"S="<cout<<"\n V="<cout<<"\n m="<return 0;
}
Слайд 37

Структура программы в C++ 1 Блок заголовков программы. С помощью инструкции

Структура программы в C++

1 Блок заголовков программы.
С помощью инструкции #include подключаются

внешние модули
2 Блок с объявлением классов
(базовых и производных), прототипами и объявлениями функции.
3 Главный метод программы: каждая программа имеет такой метод. У метода стандартное название main ()
4 Блок с описанием функций
(прототип которых указан во втором блоке)
Слайд 38

Пример 1 Программа для отображения приветствия #include using namespace std; int

Пример 1 Программа для отображения приветствия

#include
using namespace std;
int main()
{
//

Выводится сообщение
cout <<“Hello \n”;
return 0;
}
(#include “имя файла” или #include <имя файла>)

#include <имя файла> или #include <имя файла>

Слайд 39

Использование переменных Под переменной подразумевают именованную область памяти, к которой можно обратиться в процессе выполнения программы

Использование переменных

Под переменной подразумевают именованную область памяти, к которой можно обратиться

в процессе выполнения программы
Слайд 40

Пример 2. Пользователь на запрос программы вводит свой возраст, после чего

Пример 2. Пользователь на запрос программы вводит свой возраст, после чего

программ выводить сообщение о возрасте пользователя.

#include
using namespace std;
int main() {
int age; //Переменная для записи возраста
cout << “Сколько Вам лет? \n”; //Вывод сообщения
cin >>age; //Ввод возраста в переменную
cout <<“Вам” << age << “лет \n”; //Вывод результата
return 0;
}

Слайд 41

Команды cin (console input) – оператор ввода cout (console output) –оператор вывода

Команды

cin (console input) – оператор ввода
cout (console output) –оператор вывода

Слайд 42

Объявление и инициализация переменных //Объявление 3-х целочисленных переменных int m, n,

Объявление и инициализация переменных
//Объявление 3-х целочисленных переменных
int m, n, k;
//Объявление с

одновременной инициализацией нескольких переменных
int one=1, two=2, three, four=4, five;
Слайд 43

Пример 3. Рассчитать высоту, на которую за указанное время поднимается брошенное

Пример 3. Рассчитать высоту, на которую за указанное время поднимается брошенное

вверх тело.

#include
using namespace std;
int main() {
double v; //Объявление переменной – скорость тела
double t=1.2; //Время полета
double g=9.8; //Ускорение свободного падения
v=12.3; //инициализация переменной – скорость
Double s=v*t-g*t*t/2; //Высота – динамическая инициализация переменной
cout <<“Высота=” << s << “\n”; //Вывод результата
return 0;
}

Слайд 44

Задача 1. Дана гипотенуза и катет прямоугольного треуголь­ника. Найти второй катет

Задача 1. Дана гипотенуза и катет прямоугольного треуголь­ника. Найти второй катет

и радиус вписанной в этот треугольник окружности.
Слайд 45

Код программы на языке Pascal Код программы на языке C++ var

Код программы на языке Pascal Код программы на языке C++
var a,

b, c, s, r:real;
begin
write('Введите длину катета: ');
readln(a);
write('Введите длину гипотенузы: ');
readln(c);
b:=Sqrt(c*c-a*a);
s:=0.5*a*b;
r:=(4*s)/(a+b+c);
writeln('Второй катет треугольника равен ', b:5:2);
writeln('Радиус вписанной в треугольник окружности равен ', r:5:2);
readln;
end.

#include
#include
float a, b, c, s, r;
void main(){
printf(“Введите длину катета: ”);
scanf(“%f”,&a);
printf(“Введите длину гипотенузы: ”);
scanf(“%f”,&c);
b=sqrt(c*c-a*a);
s=0.5*a*b;
r=(4*s)/(a+b+c);
printf(“Второй катет треугольника равен %.2f\n”, b);
printf(“Радиус вписанной в треугольник окружности равен %.2f\n”, r);
getchar();
}

Слайд 46

Задача 2. Составить программу решения квадратного уравнения ax2+bx+c=0, заданного своими коэффициентами (a≠0).

Задача 2. Составить программу решения квадратного уравнения ax2+bx+c=0, заданного своими коэффициентами

(a≠0).
Слайд 47

Код программы на языке Pascal Код программы на языке C++ var

Код программы на языке Pascal Код программы на языке C++
var

a, b, c, d:integer;
x1, x2:real;
begin
write('Введите коэффициент перед старшей степенью x: ');
readln(a);
write('Введите коэффициент перед x: ');
readln(b);
write('Введите свободный член уравнения: ');
readln(c);
d:=sqr(b)-4*a*c;
if d<0 then
writeln('Действительных корней нет')
else
begin
x1:=(-b+sqrt(d))/(2*a);
x2:=(-b-sqrt(d))/(2*a);
writeln('Первый корень равен ', x1:5:2);
writeln('Второй корень равен ', x2:5:2);
end;
readln;
end.

#include
#include
int a, b, c, d;
float x1, x2;
void main(){
printf(“Введите коэффициент перед старшей степенью x: ”);
scanf(“%d”,&a);
printf(“Введите коэффициент перед x: ”);
scanf(“%d”,&b);
printf(“Введите свободный член уравнения: ”);
scanf(“%d”,&c);
d=pow(b,2)-4*a*c;
if (d<0)
printf(“Действительных корней нет\n”);
else
{
x1=(-b+sqrt(d))/(2*a);
x2=(-b-sqrt(d))/(2*a);
printf(“Первый корень равен %.2f\n”, x1);
printf(“Второй корень равен %.2f\n”, x2);
}
getchar();
}