SlideShare a Scribd company logo
Алгоритмизация и
программирование
Программирование на С/С++
(ч.1 - основы)
Беркунский Е.Ю., кафедра ИУСТ, НУК
eugeny.berkunsky@gmail.com
http://www.berkut.mk.ua
Компьютеры – для чего?
Компьютер — это универсальный инструмент,
который есть у человечества.
Компьютеры:
• выполняют вычисления
• позволяют хранить огромное количество
информации
• позволяют обмениваться информацией,
независимо от местонахождения…
Программирование?
Programming today – is a race
between software engineers
striving to build bigger and better
idiot-proof programs, and the
Universe trying to produce bigger
and better idiots.
So far, the Universe is winning
Программирование
• Чтобы автоматизировать даже самый
простой процесс, необходимо компьютеру
сказать чётко и недвусмысленно, что
именно он должен делать.
• К сожалению наш язык и язык компьютера
совершенно не похожи.
Языки программирования
• Между машиной и человеком есть
серьёзный языковой барьер, который
необходимо как-то преодолеть, иначе
компьютер нас не поймёт.
• Поскольку компьютеры нас не понимают,
они самостоятельно ничего делать не будут.
• Как средство общения между человеком и
компьютером, придумано огромное
количество языков программирования.
Языки программирования
• С помощью языков программирования, мы
создаём программы и компьютер уже
непосредственно работает с программами.
• Программы представляют собой наборы
инструкций, которые компьютер может
понимать и выполнять.
Типы программ
• Для эффективного общения с компьютером
существует широкий спектр языков
программирования (ЯП).
• В зависимости от типа проекта, существует
множество факторов, которые необходимо
учитывать при выборе ЯП.
Компиляция, интерпретация
и JIT-компиляция
• Процесс компиляции переводит код
написанный на языке программирования в
родной язык целевой машины. Программа,
выполняющая этот процесс называется
компилятором.
Компиляция, интерпретация
и JIT-компиляция
• Интерпретируемые языки
программирования читаются программой
под названием интерпретатор и
выполняются этой же программой.
Компиляция, интерпретация
и JIT-компиляция
• Компиляция на лету (или JIT-компиляция).
Такие языки быстро компилируются, в
момент запуска программы.
• Программы, написанные на JIT-языках, как
правило, сильно оптимизируются, тем самым
восстанавливается баланс между
производительностью и кроссплатформенностью.
Высокий или низкий уровни
программирования
• Низкоуровневые языки, в основном,
работают непосредственно с
оборудованием, и, следовательно, больше
всего подходят для написания драйверов
устройств.
• Низкоуровневые языки программирования
почти всегда компилируются.
Высокий или низкий уровни
программирования
• В языках высокого уровня все внимание
уделяется концепции языка.
• Язык высокого уровня обычно легче понять,
чем язык низкого уровня.
• Как правило, разработать программу на
языке высокого уровня намного проще и
быстрее, чем на языке низкого уровня.
Системы типов данных языков
программирования
• Сильная система вводит ограничения на
различные типы переменных, которые
могут быть преобразованы друг к другу без
явного преобразования.
• Идеальная система данных должна
запрещать неявное преобразование
«склейку» типов данных, в особенности,
если, это не имеет никакого смысла.
Системы типов данных языков
программирования
• Слабая система ввода не ставит никаких
ограничений, за этим должен следить
программист.
• Например, в таких языках можно
попытаться выполнить умножение числа на
строку или символ, хотя и результат
умножения теряет всякий смысл, так как
строку на число умножать нельзя.
Поддерживаемые парадигмы в
программировании
• Декларативная парадигма
• Функциональная парадигма
• Обобщённая парадигма
• Императивная парадигма
• Структурная парадигма
• Процедурная парадигма
• Объектно-ориентированная парадигма
Поддерживаемые парадигмы в
программировании
Язык программирования С++
• С++ является ISO-стандартизированным ЯП
– В течение некоторого времени, C++ не имел официального стандарта, однако с
1998 года, C++ был стандартизирован комитетом ISO
• С++ компилируемый язык
– C++ компилируется непосредственно в машинный код, что позволяет ему быть
одним из самых быстрых в мире языков
• С++ является строго типизированным ЯП
– C++ подразумевает, что программист знает, что делает, и позволяет невероятное
количество возможностей, ограниченных только лишь фантазией
• С++ поддерживает множество парадигм
– C++ поддерживает процедурную, обобщённую, и объектно-ориентированную
парадигмы программирования…
• С++ является полностью совместимым с
языком Си
– В C++ можно использовать Cи библиотеки и они будут исправно работать.
Компиляторы С++
Компилятор — программа, транслирующая
исходный (высокоуровневый) код программы в
конечный (низкоуровневый) код.
Компиляция — процесс преобразования
высокоуровневого исходного текста программы,
в эквивалентный текст программы, но уже на
низкоуровневом языке.
Компоновщик (Линкер) — программа, которая
генерирует исполнимый модуль путём
связывания объектных файлов проекта.
IDE
(Интегрированная среда разработки)
• IDE — сочетание текстового редактора и
компилятора.
• Разработка, компиляция и запуск своих программы
осуществляется непосредственно в IDE.
• Интегрированные среды разработки упрощают
процесс составления программ, так как написание
кода компиляция и запуск программ выполняются в
одной программе — IDE.
• Ещё одной важной особенностью IDE является то,
что IDE помогает быстро найти и исправить ошибки
компиляции.
IDE
(Интегрированная среда разработки)
• CLion компании JetBrains – рекомендуемая,
новая, перспективная IDE (вообще-то она -
платная, но для студентов НУК – бесплатно)
• Code::Blocks с Mingw - рекомендуемая,
абсолютно бесплатная IDE
– CLion и Code::Blocks также доступны на Linux и MacOS.
• Microsoft Visual Studio — это хорошая среда
разработки приложений под ОС Windows.
Введение в язык C++
• Язык C++ представляет собой набор
команд, которые говорят компьютеру, что
необходимо сделать.
• Этот набор команд, обычно называется
исходный код или просто код.
• Командами являются или «функции» или
«ключевые слова».
Введение в язык C++
• Ключевые слова С/С++ являются
основными строительными блоками языка.
• Функции являются сложными
строительными блоками, так как записаны
они в терминах более простых функций.
• Такая структура функций напоминает
содержание книги.
Введение в язык C++
• Каждая программа в C++ имеет одну функцию, её
называют главная или
main-функция, выполнение программы начинается
именно с этой функции.
• Из главной функции, вы также можете вызывать
любые другие функции, неважно, являются ли они
написанными нами, или, как упоминалось ранее,
предоставляются компилятором.
• Чтобы получить доступ к стандартным функциям,
которые поставляются с компилятором,
необходимо подключить заголовочный файл
используя препроцессорную директиву -
#include.
Первая программа на C++
#include <iostream>
using namespace std;
int main()
{
cout << "Моя первая программа на С++n";
}
Демонстрация
Первая программа на C++
#include <iostream>
using namespace std;
int main()
{
setlocale(LC_ALL, "Russian");
cout << "Моя первая программа на С++n";
}
Комментарии
• Добавляйте комментарии к коду, чтобы
сделать его понятнее не только для себя но
и для других.
• Однострочный комментарий
// - сообщает компилятору, что остальная
часть строки является комментарием
• Многострочный комментарий
/* и затем */
Объявление переменных в C++
Чтобы объявить переменную используется
синтаксис тип <имя>;
Допустимо объявление нескольких
переменных одного и того же типа в одной
строке
int num;
char character;
float num_float;
int x, y, z, d;
Распространенные ошибки при
объявлении переменных в C++
• Если вы попытаетесь использовать
переменную, которую не объявили, ваша
программа не будет скомпилирована, и вы
получите сообщение об ошибке.
• В C++, все ключевые слова языка, все
функции и все переменные чувствительны
к регистру.
Использование переменных
#include <iostream>
using namespace std;
int main()
{
int number;
cout << "Введите число: ";
cin >> number;
cout << "Вы ввели: " << number << "n";
}
Типы данных в C++
Тип Размер Диапазон значений
целочисленный (логический) тип данных
bool 1 0 / 255
целочисленный (символьный) тип данных
char 1 0 / 255
целочисленные типы данных
short int 2 -32 768 / 32 767
unsigned short int 2 0 / 65 535
int 4 -2 147 483 648 / 2 147 483 647
unsigned int 4 0 / 4 294 967 295
long int 4 -2 147 483 648 / 2 147 483 647
unsigned long int 4 0 / 4 294 967 295
типы данных с плавающей точкой
float 4 ±3. 4е-038.. 3. 4е+038
long float 8 ±1. 7е-308.. 1. 7е+308
double 8 ±1. 7е-308.. 1. 7е+308
Изменение и сравнение величин
Независимо от того, какой тип данных вы
используете, переменные не представляют особого
интереса без возможности изменения их значения
Операция Описание Операция Описание
+ Сложение == Равенство
- Вычитание > Больше
* Умножение < Меньше
/ Деление != Не равно
% Остаток >= Больше или равно
= Присваивание <= Меньше или равно
Изменение и сравнение величин
a = 4 * 6; // a равно 24
a = a + 5; // равно сумме исходного значения и пяти
a == 5 // не присваивается 5, выполняется проверка, а равно 5 или нет
a < 5 // Проверка, a менее пяти?
a > 5 // Проверка, a больше пяти?
a == 5 // Проверка, a равно пяти?
a != 5 // Проверка, а неравно пяти?
a >= 5 // Проверка, a больше или равно пяти?
a <= 5 // Проверка, a меньше или равно пяти?
Арифметические операции С++
#include <iostream>
using namespace std;
int main()
{
double sum, razn, prod, div; // объявление переменных через запятую
double a1; // отдельное объявление переменной a1
double a2; // отдельное объявление переменной a2
cout << "Vvedite pervoe chislo: ";
cin >> a1;
cout << "Vvedite vtoroe chislo: ";
cin >> a2;
sum = a1 + a2; // операция сложения
razn = a1 - a2; // операция вычитания
prod = a1 * a2; // операция умножения
div = a1 / a2; // операция деления
cout << a1 << "+" << a2 << "=" << sum << endl;
cout << a1 << "-" << a2 << "=" << razn << endl;
cout << a1 << "*" << a2 << "=" << prod << endl;
cout << a1 << "/" << a2 << "=" << div << endl;
return 0;
}
Демонстрация
Математические функции
Заголовочный файл
<cmath>
Функция Описание Пример
abs( a ) модуль или абсолютное значение от а abs(-3.0)= 3.0
abs(5.0)= 5.0
sqrt(a) корень квадратный из а, причём а не
отрицательно
sqrt(9.0)=3.0
pow(a, b) возведение а в степень b pow(2,3)=8
ceil( a ) округление а до наименьшего целого,
но не меньше чем а
ceil(2.3)=3.0
ceil(-2.3)=-2.0
floor(a) округление а до наибольшего целого,
но не больше чем а
floor(12.4)=12
floor(-2.9)=-3
fmod(a, b) вычисление остатка от a/b fmod(4.4, 7.5) = 4.4
fmod( 7.5, 4.4) = 3.1
exp(a) вычисление экспоненты е
а
exp(0)=1
sin(a) a задаётся в радианах
cos(a) a задаётся в радианах
log(a) натуральный логарифм a(основанием
является экспонента)
log(1.0)=0.0
log10(a) десятичный логарифм а Log10(10)=1
asin(a) арксинус a, где -1.0 < а < 1.0 asin(1)=1.
Математические функции
#include <iostream>
#include <cmath>
using namespace std;
int main() {
cout << "log10(10) = " << log10(10.0) << endl;
cout << "log10(1) = " << log10(1.0) << endl;
cout << "log(2.718281) = " << log(2.718281) << endl;
cout << "sqrt(9) = " << sqrt(9.0) << endl;
cout << "pow(2,3) = " << pow(2.0,3.0) << endl;
cout << "abs(0) = " << abs(0.0) << endl;
cout << "abs(-5) = " << abs(-5.0) << endl;
cout << "ceil(3.14) = " << ceil(3.14) << endl;
cout << "ceil(-2.4) = " << ceil(-2.4) << endl;
cout << "floor(3.14) = " << floor(3.14) << endl;
cout << "floor(-2.4) = " << floor(-2.4) << endl;
cout << "fmod(2.4/2.0) = " << fmod(2.4,2.0) << endl;
return 0;
}
Демонстрация
Операции присваивания в С++
• Для сокращённой записи выражений в языке
программирования С++ есть специальные
операции, которые называются операциями
присваивания.
• Рассмотрим фрагмент кода, с использованием
операции присваивания.
int value = 256;
value = value + 256;
// обычное выражение с использованием двух операций: = и +
value += 256;
// сокращённое эквивалентное выражение
Операции присваивания в С++
В С++ существует пять операций присваивания,
не считая основную операцию присваивания ”=“
• += операция присваивания-сложения;
• -= операция присваивания-вычитания;
• *= операция присваивания-умножения;
• /= операция присваивания-деления;
• %= операция присваивания-остатка от деления
Операция Обозначение Пример Экв.пример
операция присваивания-сложения += var += 16 var = var + 16
операция присваивания-вычитания -= var -= 16 var = var — 16
операция присваивания-умножения *= var *= 16 var = var * 16
операция присваивания-деления /= var /= 16 var = var / 16
операция присваивания-остатка
от деления
%= var %= 16 var = var % 16
Операции присваивания в С++
Вопросы?
Алгоритмизация и
программирование
Программирование на С/С++
(ч.1 - основы)
Беркунский Е.Ю., кафедра ИУСТ, НУК
eugeny.berkunsky@gmail.com
http://www.berkut.mk.ua

More Related Content

PPSX
Programming history. Algorithm
PPSX
378 васильев куницын
PPT
языки программирования
PDF
терминология vol.2
PDF
C++ Базовый. Занятие 01.
PDF
Встраивание Python в мобильные приложения – нюансы interoperation, новые подх...
PDF
основы ооп на языке C#. часть 1. введение в программирование
PDF
"Девопс - это не только для программистов. Практические примеры из жизни одно...
Programming history. Algorithm
378 васильев куницын
языки программирования
терминология vol.2
C++ Базовый. Занятие 01.
Встраивание Python в мобильные приложения – нюансы interoperation, новые подх...
основы ооп на языке C#. часть 1. введение в программирование
"Девопс - это не только для программистов. Практические примеры из жизни одно...

Similar to Algorithms and programming lecture in ru (20)

PDF
Терминология как основной способ поиска разработчиков или как не опозорится п...
PDF
Характеристики языка С++
PDF
Юрий Василевский «Автоматизация в XCode»
PDF
Юрий Василевский "Автоматизация в XCode"
PPTX
Читабельные отчеты для автоматизации на C# / Gallio / BDDfy
DOCX
C++ теория
DOCX
C++ теория
DOCX
C++ теория
ODT
TAP
ODP
игровая логика, проблемы и решения
PDF
Компьютерная графика. Введение в Processing
PDF
Построение систем автоматического протоколирования Си/Си++ кода
ODP
Выступление: инструменты и методы эффективной удалённой работы
PDF
Programming Concepts
PPTX
Программирование как способ выражения мыслей.
PPT
CodeFest 2011. Андреев C. — Эффективные методики автоматизированного тестиров...
PPTX
Разработка веб-приложений с помощью TypeScript
PPTX
эволюция языков программирования
POTX
Как жить в согласии с SOLID?
PPTX
Интегрированная среда разработки
Терминология как основной способ поиска разработчиков или как не опозорится п...
Характеристики языка С++
Юрий Василевский «Автоматизация в XCode»
Юрий Василевский "Автоматизация в XCode"
Читабельные отчеты для автоматизации на C# / Gallio / BDDfy
C++ теория
C++ теория
C++ теория
TAP
игровая логика, проблемы и решения
Компьютерная графика. Введение в Processing
Построение систем автоматического протоколирования Си/Си++ кода
Выступление: инструменты и методы эффективной удалённой работы
Programming Concepts
Программирование как способ выражения мыслей.
CodeFest 2011. Андреев C. — Эффективные методики автоматизированного тестиров...
Разработка веб-приложений с помощью TypeScript
эволюция языков программирования
Как жить в согласии с SOLID?
Интегрированная среда разработки
Ad

More from ssuser0562f1 (18)

PDF
Алгоритмы - перебор вариантов и простые задачи
PPTX
Jakarta Persistence (JPA) - Web Technologies
PDF
Algorithms and programming in Kotlin - 3
PDF
Algorithms and programming - lecture no 2
PDF
Алгоритмизация и программирование С/С++
PDF
Geometry algorithms and formulas calculation
PDF
Algorithms in number theory presentation
PDF
jpa_nus.pdf
PDF
0808.pdf
PDF
servlets1.pdf
PDF
servlets.pdf
PDF
Курсовая (1).pdf
PDF
springdatajpatwjug-120527215242-phpapp02.pdf
PDF
springdatajpa-up.pdf
PDF
08-170327133157.pdf
PDF
waits.pdf
PDF
waits.pdf
PDF
geometry.pdf
Алгоритмы - перебор вариантов и простые задачи
Jakarta Persistence (JPA) - Web Technologies
Algorithms and programming in Kotlin - 3
Algorithms and programming - lecture no 2
Алгоритмизация и программирование С/С++
Geometry algorithms and formulas calculation
Algorithms in number theory presentation
jpa_nus.pdf
0808.pdf
servlets1.pdf
servlets.pdf
Курсовая (1).pdf
springdatajpatwjug-120527215242-phpapp02.pdf
springdatajpa-up.pdf
08-170327133157.pdf
waits.pdf
waits.pdf
geometry.pdf
Ad

Algorithms and programming lecture in ru

  • 1. Алгоритмизация и программирование Программирование на С/С++ (ч.1 - основы) Беркунский Е.Ю., кафедра ИУСТ, НУК eugeny.berkunsky@gmail.com http://www.berkut.mk.ua
  • 2. Компьютеры – для чего? Компьютер — это универсальный инструмент, который есть у человечества. Компьютеры: • выполняют вычисления • позволяют хранить огромное количество информации • позволяют обмениваться информацией, независимо от местонахождения…
  • 3. Программирование? Programming today – is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning
  • 4. Программирование • Чтобы автоматизировать даже самый простой процесс, необходимо компьютеру сказать чётко и недвусмысленно, что именно он должен делать. • К сожалению наш язык и язык компьютера совершенно не похожи.
  • 5. Языки программирования • Между машиной и человеком есть серьёзный языковой барьер, который необходимо как-то преодолеть, иначе компьютер нас не поймёт. • Поскольку компьютеры нас не понимают, они самостоятельно ничего делать не будут. • Как средство общения между человеком и компьютером, придумано огромное количество языков программирования.
  • 6. Языки программирования • С помощью языков программирования, мы создаём программы и компьютер уже непосредственно работает с программами. • Программы представляют собой наборы инструкций, которые компьютер может понимать и выполнять.
  • 7. Типы программ • Для эффективного общения с компьютером существует широкий спектр языков программирования (ЯП). • В зависимости от типа проекта, существует множество факторов, которые необходимо учитывать при выборе ЯП.
  • 8. Компиляция, интерпретация и JIT-компиляция • Процесс компиляции переводит код написанный на языке программирования в родной язык целевой машины. Программа, выполняющая этот процесс называется компилятором.
  • 9. Компиляция, интерпретация и JIT-компиляция • Интерпретируемые языки программирования читаются программой под названием интерпретатор и выполняются этой же программой.
  • 10. Компиляция, интерпретация и JIT-компиляция • Компиляция на лету (или JIT-компиляция). Такие языки быстро компилируются, в момент запуска программы. • Программы, написанные на JIT-языках, как правило, сильно оптимизируются, тем самым восстанавливается баланс между производительностью и кроссплатформенностью.
  • 11. Высокий или низкий уровни программирования • Низкоуровневые языки, в основном, работают непосредственно с оборудованием, и, следовательно, больше всего подходят для написания драйверов устройств. • Низкоуровневые языки программирования почти всегда компилируются.
  • 12. Высокий или низкий уровни программирования • В языках высокого уровня все внимание уделяется концепции языка. • Язык высокого уровня обычно легче понять, чем язык низкого уровня. • Как правило, разработать программу на языке высокого уровня намного проще и быстрее, чем на языке низкого уровня.
  • 13. Системы типов данных языков программирования • Сильная система вводит ограничения на различные типы переменных, которые могут быть преобразованы друг к другу без явного преобразования. • Идеальная система данных должна запрещать неявное преобразование «склейку» типов данных, в особенности, если, это не имеет никакого смысла.
  • 14. Системы типов данных языков программирования • Слабая система ввода не ставит никаких ограничений, за этим должен следить программист. • Например, в таких языках можно попытаться выполнить умножение числа на строку или символ, хотя и результат умножения теряет всякий смысл, так как строку на число умножать нельзя.
  • 15. Поддерживаемые парадигмы в программировании • Декларативная парадигма • Функциональная парадигма • Обобщённая парадигма • Императивная парадигма • Структурная парадигма • Процедурная парадигма • Объектно-ориентированная парадигма
  • 17. Язык программирования С++ • С++ является ISO-стандартизированным ЯП – В течение некоторого времени, C++ не имел официального стандарта, однако с 1998 года, C++ был стандартизирован комитетом ISO • С++ компилируемый язык – C++ компилируется непосредственно в машинный код, что позволяет ему быть одним из самых быстрых в мире языков • С++ является строго типизированным ЯП – C++ подразумевает, что программист знает, что делает, и позволяет невероятное количество возможностей, ограниченных только лишь фантазией • С++ поддерживает множество парадигм – C++ поддерживает процедурную, обобщённую, и объектно-ориентированную парадигмы программирования… • С++ является полностью совместимым с языком Си – В C++ можно использовать Cи библиотеки и они будут исправно работать.
  • 18. Компиляторы С++ Компилятор — программа, транслирующая исходный (высокоуровневый) код программы в конечный (низкоуровневый) код. Компиляция — процесс преобразования высокоуровневого исходного текста программы, в эквивалентный текст программы, но уже на низкоуровневом языке. Компоновщик (Линкер) — программа, которая генерирует исполнимый модуль путём связывания объектных файлов проекта.
  • 19. IDE (Интегрированная среда разработки) • IDE — сочетание текстового редактора и компилятора. • Разработка, компиляция и запуск своих программы осуществляется непосредственно в IDE. • Интегрированные среды разработки упрощают процесс составления программ, так как написание кода компиляция и запуск программ выполняются в одной программе — IDE. • Ещё одной важной особенностью IDE является то, что IDE помогает быстро найти и исправить ошибки компиляции.
  • 20. IDE (Интегрированная среда разработки) • CLion компании JetBrains – рекомендуемая, новая, перспективная IDE (вообще-то она - платная, но для студентов НУК – бесплатно) • Code::Blocks с Mingw - рекомендуемая, абсолютно бесплатная IDE – CLion и Code::Blocks также доступны на Linux и MacOS. • Microsoft Visual Studio — это хорошая среда разработки приложений под ОС Windows.
  • 21. Введение в язык C++ • Язык C++ представляет собой набор команд, которые говорят компьютеру, что необходимо сделать. • Этот набор команд, обычно называется исходный код или просто код. • Командами являются или «функции» или «ключевые слова».
  • 22. Введение в язык C++ • Ключевые слова С/С++ являются основными строительными блоками языка. • Функции являются сложными строительными блоками, так как записаны они в терминах более простых функций. • Такая структура функций напоминает содержание книги.
  • 23. Введение в язык C++ • Каждая программа в C++ имеет одну функцию, её называют главная или main-функция, выполнение программы начинается именно с этой функции. • Из главной функции, вы также можете вызывать любые другие функции, неважно, являются ли они написанными нами, или, как упоминалось ранее, предоставляются компилятором. • Чтобы получить доступ к стандартным функциям, которые поставляются с компилятором, необходимо подключить заголовочный файл используя препроцессорную директиву - #include.
  • 24. Первая программа на C++ #include <iostream> using namespace std; int main() { cout << "Моя первая программа на С++n"; }
  • 26. Первая программа на C++ #include <iostream> using namespace std; int main() { setlocale(LC_ALL, "Russian"); cout << "Моя первая программа на С++n"; }
  • 27. Комментарии • Добавляйте комментарии к коду, чтобы сделать его понятнее не только для себя но и для других. • Однострочный комментарий // - сообщает компилятору, что остальная часть строки является комментарием • Многострочный комментарий /* и затем */
  • 28. Объявление переменных в C++ Чтобы объявить переменную используется синтаксис тип <имя>; Допустимо объявление нескольких переменных одного и того же типа в одной строке int num; char character; float num_float; int x, y, z, d;
  • 29. Распространенные ошибки при объявлении переменных в C++ • Если вы попытаетесь использовать переменную, которую не объявили, ваша программа не будет скомпилирована, и вы получите сообщение об ошибке. • В C++, все ключевые слова языка, все функции и все переменные чувствительны к регистру.
  • 30. Использование переменных #include <iostream> using namespace std; int main() { int number; cout << "Введите число: "; cin >> number; cout << "Вы ввели: " << number << "n"; }
  • 31. Типы данных в C++ Тип Размер Диапазон значений целочисленный (логический) тип данных bool 1 0 / 255 целочисленный (символьный) тип данных char 1 0 / 255 целочисленные типы данных short int 2 -32 768 / 32 767 unsigned short int 2 0 / 65 535 int 4 -2 147 483 648 / 2 147 483 647 unsigned int 4 0 / 4 294 967 295 long int 4 -2 147 483 648 / 2 147 483 647 unsigned long int 4 0 / 4 294 967 295 типы данных с плавающей точкой float 4 ±3. 4е-038.. 3. 4е+038 long float 8 ±1. 7е-308.. 1. 7е+308 double 8 ±1. 7е-308.. 1. 7е+308
  • 32. Изменение и сравнение величин Независимо от того, какой тип данных вы используете, переменные не представляют особого интереса без возможности изменения их значения Операция Описание Операция Описание + Сложение == Равенство - Вычитание > Больше * Умножение < Меньше / Деление != Не равно % Остаток >= Больше или равно = Присваивание <= Меньше или равно
  • 33. Изменение и сравнение величин a = 4 * 6; // a равно 24 a = a + 5; // равно сумме исходного значения и пяти a == 5 // не присваивается 5, выполняется проверка, а равно 5 или нет a < 5 // Проверка, a менее пяти? a > 5 // Проверка, a больше пяти? a == 5 // Проверка, a равно пяти? a != 5 // Проверка, а неравно пяти? a >= 5 // Проверка, a больше или равно пяти? a <= 5 // Проверка, a меньше или равно пяти?
  • 34. Арифметические операции С++ #include <iostream> using namespace std; int main() { double sum, razn, prod, div; // объявление переменных через запятую double a1; // отдельное объявление переменной a1 double a2; // отдельное объявление переменной a2 cout << "Vvedite pervoe chislo: "; cin >> a1; cout << "Vvedite vtoroe chislo: "; cin >> a2; sum = a1 + a2; // операция сложения razn = a1 - a2; // операция вычитания prod = a1 * a2; // операция умножения div = a1 / a2; // операция деления cout << a1 << "+" << a2 << "=" << sum << endl; cout << a1 << "-" << a2 << "=" << razn << endl; cout << a1 << "*" << a2 << "=" << prod << endl; cout << a1 << "/" << a2 << "=" << div << endl; return 0; }
  • 36. Математические функции Заголовочный файл <cmath> Функция Описание Пример abs( a ) модуль или абсолютное значение от а abs(-3.0)= 3.0 abs(5.0)= 5.0 sqrt(a) корень квадратный из а, причём а не отрицательно sqrt(9.0)=3.0 pow(a, b) возведение а в степень b pow(2,3)=8 ceil( a ) округление а до наименьшего целого, но не меньше чем а ceil(2.3)=3.0 ceil(-2.3)=-2.0 floor(a) округление а до наибольшего целого, но не больше чем а floor(12.4)=12 floor(-2.9)=-3 fmod(a, b) вычисление остатка от a/b fmod(4.4, 7.5) = 4.4 fmod( 7.5, 4.4) = 3.1 exp(a) вычисление экспоненты е а exp(0)=1 sin(a) a задаётся в радианах cos(a) a задаётся в радианах log(a) натуральный логарифм a(основанием является экспонента) log(1.0)=0.0 log10(a) десятичный логарифм а Log10(10)=1 asin(a) арксинус a, где -1.0 < а < 1.0 asin(1)=1.
  • 37. Математические функции #include <iostream> #include <cmath> using namespace std; int main() { cout << "log10(10) = " << log10(10.0) << endl; cout << "log10(1) = " << log10(1.0) << endl; cout << "log(2.718281) = " << log(2.718281) << endl; cout << "sqrt(9) = " << sqrt(9.0) << endl; cout << "pow(2,3) = " << pow(2.0,3.0) << endl; cout << "abs(0) = " << abs(0.0) << endl; cout << "abs(-5) = " << abs(-5.0) << endl; cout << "ceil(3.14) = " << ceil(3.14) << endl; cout << "ceil(-2.4) = " << ceil(-2.4) << endl; cout << "floor(3.14) = " << floor(3.14) << endl; cout << "floor(-2.4) = " << floor(-2.4) << endl; cout << "fmod(2.4/2.0) = " << fmod(2.4,2.0) << endl; return 0; }
  • 39. Операции присваивания в С++ • Для сокращённой записи выражений в языке программирования С++ есть специальные операции, которые называются операциями присваивания. • Рассмотрим фрагмент кода, с использованием операции присваивания. int value = 256; value = value + 256; // обычное выражение с использованием двух операций: = и + value += 256; // сокращённое эквивалентное выражение
  • 40. Операции присваивания в С++ В С++ существует пять операций присваивания, не считая основную операцию присваивания ”=“ • += операция присваивания-сложения; • -= операция присваивания-вычитания; • *= операция присваивания-умножения; • /= операция присваивания-деления; • %= операция присваивания-остатка от деления
  • 41. Операция Обозначение Пример Экв.пример операция присваивания-сложения += var += 16 var = var + 16 операция присваивания-вычитания -= var -= 16 var = var — 16 операция присваивания-умножения *= var *= 16 var = var * 16 операция присваивания-деления /= var /= 16 var = var / 16 операция присваивания-остатка от деления %= var %= 16 var = var % 16 Операции присваивания в С++
  • 43. Алгоритмизация и программирование Программирование на С/С++ (ч.1 - основы) Беркунский Е.Ю., кафедра ИУСТ, НУК eugeny.berkunsky@gmail.com http://www.berkut.mk.ua