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 Алгоритмизация и программирование С/С++ (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
Algorithms and programming lecture in ru
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
Algorithms and programming lecture in ru
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

Алгоритмизация и программирование С/С++

  • 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