Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> Язык C

Работа с числовыми типами в C++: практическое руководство

Обычно при работе с числами используются примитивные типы данных: int, short, long, float, double и др. Их возможные значения и диапазоны рассматривались при обсуждении типов данных C++.

Определение чисел в C++

Вы уже определяли числа в предыдущих примерах. Ещё один объединённый пример для определения различных типов чисел:

Live Demo
#include <iostream>
using namespace std;
int main() {
    // определение чисел:
    short s;
    int i;
    long l;
    float f;
    double d;
    // присваивание:
    s = 10;
    i = 1000;
    l = 1000000;
    f = 230.47;
    d = 30949.374;
    // вывод:
    cout << "short s :" << s << endl;
    cout << "int i :" << i << endl;
    cout << "long l :" << l << endl;
    cout << "float f :" << f << endl;
    cout << "double d :" << d << endl;
    return 0;
}

Результат компиляции и выполнения:

short s :10
int i :1000
long l :1000000
float f :230.47
double d :30949.4

Математические операции в C++

Помимо пользовательских функций, C++ включает полезные встроенные функции из стандартных библиотек C и C++. Для их использования нужно подключить заголовочный файл <cmath>.

C++ имеет богатый набор математических операций. Таблица некоторых полезных встроенных математических функций:

№Функция и назначение
1

double cos(double);

Принимает угол (double) и возвращает косинус.

2

double sin(double);

Принимает угол (double) и возвращает синус.

3

double tan(double);

Принимает угол (double) и возвращает тангенс.

4

double log(double);

Принимает число и возвращает натуральный логарифм.

5

double pow(double, double);

Первый аргумент — число, которое нужно возвести в степень, второй — степень.

6

double hypot(double, double);

Если передать длины двух катетов прямоугольного треугольника, вернёт длину гипотенузы.

7

double sqrt(double);

Принимает число и возвращает квадратный корень.

8

int abs(int);

Возвращает абсолютное значение целого числа.

9

double fabs(double);

Возвращает абсолютное значение любого десятичного числа.

10

double floor(double);

Находит целое число, меньшее или равное аргументу.

Простой пример математических операций:

Live Demo
#include <iostream>
#include <cmath>
using namespace std;
int main() {
    short s = 10;
    int i = -1000;
    long l = 100000;
    float f = 230.47;
    double d = 200.374;
    // математические операции:
    cout << "sin(d) :" << sin(d) << endl;
    cout << "abs(i) :" << abs(i) << endl;
    cout << "floor(d) :" << floor(d) << endl;
    cout << "sqrt(f) :" << sqrt(f) << endl;
    cout << "pow( d, 2) :" << pow(d, 2) << endl;
    return 0;
}

Результат:

sin(d) :-0.634939
abs(i) :1000
floor(d) :200
sqrt(f) :15.1812
pow( d, 2 ) :40149.7

Случайные числа в C++

Часто нужно генерировать случайные числа. Нужно знать две функции: rand() — возвращает псевдослучайное число; чтобы исправить это, сначала вызывают srand().

Пример генерации случайных чисел с использованием time() для инициализации генератора:

Live Demo
#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;
int main() {
    int i, j;
    // установка seed
    srand( (unsigned)time( NULL ) );
    /* генерация 10 случайных чисел */
    for( i = 0; i < 10; i++ ) {
        // генерация фактического случайного числа
        j = rand();
        cout << " Random Number : " << j << endl;
    }
    return 0;
}

Результат (пример):

Random Number : 1748144778
Random Number : 630873888
Random Number : 2134540646
Random Number : 219404170
Random Number : 902129458
Random Number : 920445370
Random Number : 1319072661
Random Number : 257938873
Random Number : 1256201101
Random Number : 580322989

Язык C

  1. Освоение операторов C++: полное руководство с практическими примерами
  2. Комментарии в C++: лучшие практики для читаемого и поддерживаемого кода
  3. Шаблоны классов в C++: практическое руководство
  4. Переменные и типы данных в C++: подробное руководство по int, double, char, string, bool
  5. Язык программирования C++: обзор и ключевые особенности
  6. Константы и литералы в C++: типы, синтаксис и лучшие практики
  7. Полное руководство по операторам C++: типы, использование и лучшие практики
  8. Работа с числовыми типами в C++: практическое руководство
  9. Ссылки в C++: ключевые концепции и отличия от указателей
  10. Шаблоны в C++: руководство по обобщённому программированию