Метод класса Task, приближенное значение - C#
Формулировка задачи:
С помощью методов класса Task распараллелить вычисления, язык программирования C#.
Никак не могу представить данную формулу в виде кода
Решение задачи: «Метод класса Task, приближенное значение»
textual
Листинг программы
- using System;
- using System.Threading.Tasks;
- namespace TPLscalarProd
- {
- class Program
- {
- static void Main()
- {
- //массив a:
- double[] a = new double[] { -1, 1, 2, 3, -11, 12, 21, -12 };
- //количество элементов массива:
- int n = a.Length;
- //индекс центрального элемента массива a:
- int m = n / 2;
- //переменные для хранения результатов:
- double s1 = 0, s2 = 0;
- //объявление процесса вычислений 1-й полусуммы:
- Task t1 = new Task(() =>
- {
- for (int i = 0; i < m; i++)
- s1 += a[i];
- });
- // объявление процесса вычислений 2-й полусуммы:
- Task t2 = new Task(() =>
- {
- for (int k = m; k < n; k++)
- s2 += a[k];
- });
- //старт первого процесса:
- t1.Start();
- 33
- //старт второго процесса:
- t2.Start();
- //приостановка завершения метода main(),
- //до полной остановки вычислений обоих потоков:
- t1.Wait();
- t2.Wait();
- //вывод результата вычислений:
- Console.WriteLine("Сумма элементов массива: {0}",
- s1 + s2);
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д