Работа вам нужна срочно. Не волнуйтесь, уложимся!
- 22423 авторов готовы помочь тебе.
- 2402 онлайн
Задача состоит в следующем:
input.txt. Данные в файле разделяются ровно одним пробелом, и элементы массива — вещественные числа с десятичным разделителем запятая.Задание требует использовать статические методы для обработки массивов, чтения файла, вычисления суммы и записи результата.
input.txt, читаем данные.Вот пример программы на языке C#:
using System;
using System.IO;
using System.Globalization;
using System.Linq;
class Program {
static void Main(string[] args) {
string inputFilePath = @"WorkingFiles/input.txt";
string outputFilePath = @"WorkingFiles/output.txt";
try {
// Чтение данных из файла
string[] lines = File.ReadAllLines(inputFilePath);
if (lines.Length < 2) {
Console.WriteLine("Корректных данных в файле нет");
return;
}
// Обработка массива A
double[] arrayA = ParseArray(lines[0]);
// Обработка массива B
double[] arrayB = ParseArray(lines[1]);
if (arrayA.Length == 0 || arrayB.Length == 0) {
Console.WriteLine("Корректных данных в файле нет");
return;
}
// Вычисление сумм
double sumA = arrayA.Sum();
double sumB = arrayB.Sum();
// Вычисление отношения
double min = Math.Min(sumA, sumB);
double max = Math.Max(sumA, sumB);
double ratio = min / max;
// Запись результата в файл
string result = $"{sumA:F2},{sumB:F2},{ratio:F2}";
File.WriteAllText(outputFilePath, result);
Console.WriteLine("Результаты успешно записаны в файл.");
} catch (Exception ex) {
Console.WriteLine("Произошла ошибка: " + ex.Message);
}
}
// Парсинг строки в массив вещественных чисел, игнорируя некорректные данные
static double[] ParseArray(string line) {
string[] parts = line.Split(' ', StringSplitOptions.RemoveEmptyEntries);
return parts.Select(part => {
if (double.TryParse(part.Replace(',', '.'), NumberStyles.Any, CultureInfo.InvariantCulture, out double number)) {
return number;
}
return (double?)null;
})
.Where(x => x.HasValue)
.Select(x => x.Value)
.ToArray();
}
}
1,5 2,5 3,7 4,8 5,9 6,1
7.70,16.80,0.46
Программа выполнит необходимые действия, и результат будет записан в файл с точностью до двух знаков после запятой, как и требуется.