/
RedHead
/
Parallel_computing_systems
Обзор
Документация
Войти
/
RedHead
/
Parallel_computing_systems
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
2_3_Array processing in parallel tasks.cs
37 строк
1 KB
RedHead
upload files
17 дек 2025, 20:45
17 дек 2025, 20:45
aaa3134
Код
Авторство
О чём код?
using System; using System.Linq; using System.Threading.Tasks; class Program { static async Task Main() { int[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; // Делим массив на две части int mid = numbers.Length / 2; int[] firstHalf = numbers.Take(mid).ToArray(); int[] secondHalf = numbers.Skip(mid).ToArray(); // Задача 1: Сумма первой половины Task<int> task1 = Task.Run(() => SumArray(firstHalf)); // Задача 2: Сумма второй половины Task<int> task2 = Task.Run(() => SumArray(secondHalf)); // Ожидаем завершения обеих задач int sum1 = await task1; int sum2 = await task2; int totalSum = sum1 + sum2; Console.WriteLine($"Сумма первой половины: {sum1}"); Console.WriteLine($"Сумма второй половины: {sum2}"); Console.WriteLine($"Общая сумма: {totalSum}"); } static int SumArray(int[] array) { return array.Sum(); } }