31 lines
1.6 KiB
JavaScript
31 lines
1.6 KiB
JavaScript
|
// Вторая программа лабораторной работы. Вариант - 2.
|
|||
|
// Вариант - 2: Ищет наименьшее число из файла /var/data/data.txt и сохраняет его третью степень в /var/result/result.txt.
|
|||
|
// Для реализации программы я буду использовать JavaScript с Node.js
|
|||
|
|
|||
|
// Импорт модулей
|
|||
|
const fs = require('fs');
|
|||
|
const path = require('path');
|
|||
|
|
|||
|
// Добавляем пути к папкам
|
|||
|
const dataFile = '/var/result/data.txt';
|
|||
|
const resultFile = '/var/result/result.txt';
|
|||
|
|
|||
|
// Функция для запаси наименьшего числа в кубе из data в result
|
|||
|
const calculateMinCubed = () => {
|
|||
|
// Обёртываю в try/catch
|
|||
|
try {
|
|||
|
const content = fs.readFileSync(dataFile, 'utf-8'); // Открытие файла с кодировкой UTF-8
|
|||
|
const numbers = content.split('\n').map(Number).filter(Boolean); // Преобразую в числа
|
|||
|
|
|||
|
const minNumber = Math.min(...numbers); // Ищу минимальное число
|
|||
|
const result = Math.pow(minNumber, 3); // Возвожу в 3-тью степень
|
|||
|
|
|||
|
fs.writeFileSync(resultFile, result.toString()); // Записываю результат в файл
|
|||
|
console.log(`Cubed minimum number (${minNumber}^3) saved to`, resultFile); // Логирую в терминал результат
|
|||
|
} catch (error) {
|
|||
|
console.error('Error processing file:', error); // Перехватываю ошибку
|
|||
|
}
|
|||
|
};
|
|||
|
|
|||
|
calculateMinCubed(); // Вызываю функцию
|