#include <iostream>
#include <fstream>
#include <vector>
#include <random>
#include <algorithm>
#include <chrono>

void NFP() {
    auto start = std::chrono::high_resolution_clock::now();

    std::random_device rd;
    std::mt19937 gen(rd());
    std::uniform_int_distribution<> dis(0, 99);

    std::ofstream outFile("numbers.txt");
    if (!outFile.is_open()) {
        std::cerr << "Ошибка открытия файла для записи!" << std::endl;

    }
    for (int i = 0; i < 10; ++i) {
        outFile << dis(gen) << std::endl;
    }
    outFile.close();

    std::ifstream inFile("numbers.txt");
    if (!inFile.is_open()) {
        std::cerr << "Ошибка открытия файла для чтения!" << std::endl;
        
    }
    std::vector<int> numbers;
    int num;
    while (inFile >> num) {
        numbers.push_back(num);
    }
    inFile.close();

    std::sort(numbers.begin(), numbers.end());
    std::cout << "Отсортированные числа:" << std::endl;
    for (const auto& n : numbers) {
        std::cout << n << std::endl;
    }

    auto end = std::chrono::high_resolution_clock::now();
    std::chrono::duration<double, std::milli> elapsed = end - start;
    std::cout << "Время выполнения: " << elapsed.count() << " мс" << std::endl;

}

int main() { NFP(); }
