Работа вам нужна срочно. Не волнуйтесь, уложимся!
Заполните, пожалуйста, данные для автора:
- 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
Программа выполнит необходимые действия, и результат будет записан в файл с точностью до двух знаков после запятой, как и требуется.