TPL . Построить вектор, элементы которого равны произведению соответствующих элементов двух других векторов - C#
Формулировка задачи:
Помогите написать код, используя библиотеку TPL (Task Parallel Library), класс Task.
Построить вектор, элементы которого равны произведению соответствующих элементов двух других векторов.
Как я понял необходимо перемножить 2 линейных массива.
Решение задачи: «TPL . Построить вектор, элементы которого равны произведению соответствующих элементов двух других векторов»
textual
Листинг программы
namespace MultVectors
{
class Program
{
static int[] vector1 = new int[4] { 1, 2, 3, 4 };
static int[] vector2 = new int[4] { 5, 6, 7, 8 };
static int[] vector3 = new int[4];
static void Main(string[] args)
{
var tasks = new List<Task>();
for (var i = 0; i < vector1.Length; ++i)
{
tasks.Add(Task.Factory.StartNew((Object obj) =>
{
var j = (int)obj;
vector3[j] = vector1[j] * vector2[j];
},
i )
);
}
Task.WaitAll(tasks.ToArray());
for (var i = 0; i < vector1.Length; i++)
{
Console.WriteLine(vector1[i]+"*"+vector2[i]+"="+vector3[i]);
}
Console.ReadKey();
}
}
}