Загрузка данных


#include <iostream>     // Потоковый ввод и вывод
#include <clocale>      // Локализация для русского языка
#include <iomanip>      // Форматирование таблицы (setw, fixed)
#include "my_func.h"    // Подключение созданной библиотеки с функцией f(x)

using namespace std;

int main()
{
    setlocale(LC_ALL, "Russian"); // Поддержка русского языка в консоли

    double a, b, h; // границы отрезка [a, b] и шаг h
    double x, y;    // аргумент и значение функции

    cout << "Введите a: ";
    cin >> a; // ввод левой границы

    cout << "Введите b: ";
    cin >> b; // ввод правой границы

    cout << "Введите h: ";
    cin >> h; // ввод шага

    // Проверка корректности введенных данных
    if (h <= 0.0 || a > b)
    {
        cout << "Ошибка ввода!" << endl;
        system("pause");
        return 0;
    }

    // Вывод шапки таблицы
    cout << "\n      x     |     f(x)    " << endl;
    cout << "--------------------------" << endl;

    x = a; // начальная точка

    // Настройка вывода чисел с плавающей точкой
    cout << fixed << setprecision(4);

    // Цикл табуляции от a до b
    while (x <= b + h / 2.0)
    {
        // Вызов функции из подключенной библиотеки
        y = f(x);

        // Вывод строки таблицы с форматированием по ширине
        cout << setw(10) << x << "  |  " << setw(10) << y << endl;

        x += h; // следующий шаг
    }

    cout << "--------------------------" << endl;

    system("pause"); // задержка окна консоли
    return 0;
}