Приложение к главе 1
Сайт: | Профильное обучение |
Курс: | Информатика. 10 класс (Повышенный уровень) |
Книга: | Приложение к главе 1 |
Напечатано:: | Гость |
Дата: | Вторник, 8 Апрель 2025, 14:43 |
Некоторые математические функции (из библиотеки cmath)
Математическая запись |
Запись в С++ |
Комментарии |
|
abs(x) |
Находит модуль числа x |
|
sqrt(x) |
Находит корень квадратный из числа x. Результат — всегда число типа double |
|
>cbrt(x) |
Находит корень кубический из числа x. Результат — всегда число вещественного типа |
|
pow(x, y) |
Возводит вещественное число x в вещественную степень y. Результат — всегда число вещественного типа |
|
exp2(x) |
Возводит число 2 в степень x. Результат — число вещественного типа |
ex |
exp(x) |
Вычисляет е (число Эйлера, 2.7182818…), возведенное в степень x. Результат — число вещественного типа |
lnx |
log(x) |
Вычисляет натуральный (по основанию e) логарифм числа |
lgx |
log10(x) |
Вычисляет десятичный (по основанию 10) логарифм числа |
log2x |
log2(x) |
Вычисляет двоичные (по основанию 2) логарифм числа |
|
ceil(x) |
Находит ближайшее целое число не меньше, чем заданное вещественное значение x. Результат — вещественное число, соответствующее аргументу |
|
floor(x) |
Находит ближайшее целое число, которое не больше, чем x. Результат — вещественное число, соответствующее аргументу |
sinx |
sin(x) |
Вычисляет синус числа x. Число x задается в радианах |
cosx |
cos(x) |
Вычисляет косинус числа x. Число x задается в радианах |
tgx |
tan(x) |
Вычисляет тангенс числа x. Число x задается в радианах |
arcsinx |
asin(x) |
Вычисляет арксинус числа x. Результат — в радианах в диапазоне от |
arccosx |
acos(x) |
Вычисляет косинус числа x. Результат — в радианах в диапазоне от |
arctgx |
atan(x) |
Вычисляет арктангенс числа x. Результат — в радианах в диапазоне от |
arctgx |
atan2(y, x) |
Вычисляет арктангенс угла наклона отрезка, с концами в точках (0; 0), (x, y) к оси OX. Результат — в радианах в диапазоне от |
Команды, управляющие выводом
Для работы большинства команд, приведенных ниже, требуется подключение библиотеки iomanip.
Флаги форматирования в С++
Флаг |
Назначение |
Пример |
Результат |
boolalpha |
Вывод логических величин в текстовом виде (true, false) |
cout.setf(ios::boolalpha); bool log_false = 0, log_true = 1; cout << log_false << endl; cout << log_true << endl; |
false true |
showpos |
Вывод знака плюс (+) для положительных чисел |
cout.setf(ios::showpos); int value = 15; cout << value << endl; |
+15 |
scientific |
Вывод вещественных чисел в экспоненциальной форме |
cout.setf(ios::scientific); double value = 1024.165; cout << value << endl; |
1.024165e+003 |
fixed |
Вывод вещественных чисел в фиксированной форме (6 цифр после запятой) |
cout.setf(ios:: fixed); double value = 1024.165; cout << value << endl; |
1024.165000 |
right |
Выравнивание по правой границе (по умолчанию). Сначала необходимо установить ширину поля, которая должна быть заведомо большей, чем длина выводимой строки |
cout.width(20); cout << "Hello world"; |
|
left |
Выравнивание по левой границе. Сначала необходимо установить ширину поля, которая должна быть заведомо большей, чем длина выводимой строки |
cout.setf(ios::left); cout.width(20); cout << "Hello" << "world"; |
Манипуляторы форматирования в С++
Флаг |
Назначение |
Пример |
Результат |
endl |
Переход на новую строку при выводе |
cout << "Hello" << endl << "world"; |
Hello |
boolalpha |
Вывод логических величин в текстовом виде (true, false) |
bool b = 1; |
true |
noboolalpha |
Вывод логических величин в числовом виде (true, false) |
bool b = 1; |
1 |
showpos |
Вывод знака плюс (+) для положительных чисел |
int value = 255; |
+255 |
noshowpos |
Не выводить знак плюс (+) для положительных чисел (по умолчанию) |
int value = 255; |
255 |
scientific |
Вывод чисел с плавающей точкой в экспоненциальной форме |
double value = 1024.165; |
1.024165e+003 |
fixed |
Вывод чисел с плавающей точкой в фиксированной форме (6 цифр после запятой) |
double value = 1024.165; |
1024.165000 |
setw(int number) |
Установить ширину поля, где number — количество позиций, символов (выравнивание по умолчанию по правой границе) |
cout << setw(20) << "Hello world"; |
![]() |
right |
Выравнивание по правой границе (по умолчанию). Сначала необходимо установить ширину поля (ширина поля должна быть заведомо большей, чем длина выводимой строки) |
cout << setw(20) << right; |
![]() |
left |
Выравнивание по левой границе. Сначала необходимо установить ширину поля (ширина поля должна быть заведомо большей, чем длина выводимой строки) |
cout << setw(20) << left; |
|
setprecision (int count) |
Задает количество знаков после запятой, где count — количество знаков после десятичной точки |
cout << fixed; |
6.750 |
setfill (char symbol) |
Установить символ-заполнитель. Если ширина поля больше, чем выводимая величина, то свободные места поля будут наполняться символом symbol |
cout << setfill('0'); |
0015 |
Команды отладки в среде Code::Blocks
Команда |
Функция |
Клавиша |
Run |
Выполняет откомпилированную программу |
Ctrl+F10 |
Build and Run |
Выполняет программу. Если необходимо, сначала ее перекомпилирует |
F9 |
Debug®Stop Debugger |
Завершает сеанс отладки |
Shift+F8 |
Run to cursor |
Выполняет программу до строки, на которой установлен курсор, и переходит в режим отладки |
F4 |
Next line |
Выполняет строку программы. При наличии вызова функции в этой строке перехода к трассировке функции не происходит |
F7 |
Step into |
Выполняет строку программы. При наличии вызова функции в этой строке переходит к трассировке функции |
Shift+F7 |
Step out |
Выполняет функцию до конца и передает управление на команду, следующую за вызовом данной функции |
Ctrl+F7 |
Вывод управляющих символов
Название |
Символ |
Значение |
Предупреждение (alert) |
\a |
Предупреждение (звуковой сигнал) |
Backspace |
\b |
Перемещение курсора на одну позицию назад |
formfeed |
\f |
Перемещение курсора к следующей логической странице |
Символ новой строки (newline) |
\n |
Перемещение курсора на следующую строку |
Возврат каретки (carriage return) |
\r |
Перемещение курсора в начало строки |
Горизонтальный таб (horizontal tab) |
\t |
Вставка горизонтального TAB-а |
Вертикальный таб (vertical tab) |
\v |
Вставка вертикального TAB-а |
Одинарная кавычка |
\' |
Вставка одинарной кавычки (или апострофа) |
Двойная кавычка |
\" |
Вставка двойной кавычки |
Бэкслеш |
\\ |
Вставка обратной косой черты (бэкслэша) |
Вопросительный знак |
\? |
Вставка знака вопроса |
Функции для обработки строк
Функция |
Действие |
S.size() |
Возвращает длину строки |
S.length() |
Возвращает длину строки |
S.resize(n) |
Изменяет длину строки, новая длина строки становится равна n. При этом строка может как уменьшиться, так и увеличиться. Если вызвать в виде S.resize(n, c), где c — символ, то при увеличении длины строки добавляемые символы будут равны c. |
S.clear() |
Очищает строчку, строка становится пустой |
S.empty() |
Возвращает true, если строка пуста, false — если не пуста |
S.push_back(c) |
Добавляет в конец строки символ c, вызывается с одним параметром типа char |
S.append(n, c)
S.append(T) S.append(T, pos, count) |
Добавляет в конец строки n одинаковых символов, равных с. n имеет целочисленный тип, c — char; добавляет в конец строки S содержимое строки T; добавляет в конец строки S символы строки T начиная с символа с индексом pos количеством count |
S.erase(pos). S.erase(pos, count) |
Удаляет из строки S с символа с индексом pos и до конца строки; удаляет из строки S с символа с индексом pos количеством count или до конца строки если |
S.insert(i, n, c)
S.insert(i, T) S.insert(i, T, pos, count) |
Вставить n одинаковых символов, равных с. n имеет целочисленный тип, c — char; вставить содержимое строки T; вставить символы строки T начиная с символа с индексом pos количеством count |
S.substr(pos)
S.substr(pos, count) |
Возвращает подстроку данной строки начиная с символа с индексом pos и до конца строки. Возвращает подстроку данной строки начиная с символа с индексом pos количеством count или до конца строки, если pos + count > S.size() |
S.replace(pos, count, n, c)
S.replace(pos, count, T) S.replace(pos, count, T, pos2, count2) |
Вставить n одинаковых символов, равных с. n имеет целочисленный тип, c — char; вставить содержимое строки T; вставить символы строки T начиная с символа с индексом pos количеством count |
S.find(str, pos)
S.find(str, pos, n) |
Искать первое вхождение строки str начиная с позиции pos. Если pos не задано, то начиная с начала строки S искать в данной строке подстроку, равную первым n символам строки str. Значение pos должно быть задано |
S.rfind |
Ищет последнее вхождение подстроки («правый» поиск). Способы вызова аналогичны способам вызова метода find |
S.find_first_of(str, pos ) |
Ищет в данной строке первое появление любого из символов данной строки str. Возвращается номер этого символа или значение string::npos. Если задано значение pos, то поиск начинается с позиции pos, то есть возвращаемое значение будет не меньше, чем pos. Если значение pos не указано, то считается, что оно равно 0 — поиск осуществляется с начала строки |
S.find_last_of |
Ищет в данной строке последнее появление любого из символов данной строки str. Способы вызова и возвращаемое значение аналогичны методу find_first_of. |
S.find_first_not_of |
Ищет в данной строке первое появление символа, отличного от символов строки str. Способы вызова и возвращаемое значение аналогичны методу find_first_of |
S.find_last_not_of |
Ищет в данной строке последнее появление символа, отличного от символов строки str. Способы вызова и возвращаемое значение аналогичны методу find_first_of |