Разбить решение задачки по потокам [закрыт]

163
01 мая 2019, 12:00

Задачка: Создайте приложение, позволяющие численно рассчитать определенный интеграл, разбив его вычисление на несколько потоков. Выберите метод интегрирования – метод прямоугольников. Выполните сравнение скорости выполнения расчета для одного, двух, трех и четырех потоков. Проверьте правильность численного расчета с аналитическим результатом.

Решить интеграл получилось, но с другой частью задания всё плохо. Не могли бы подсказать с чего начать и как это реализовать?

UPD!

using System;
using System.Linq;
namespace _13
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] count = new int[] { 5, 10, 15, 20 };
            var result = from n in count.AsParallel()
                         select Func(n);
            foreach (var item in result)
                Console.WriteLine("Результат: " + item);
            Console.ReadLine();
        }
        static double Func(int n)
        {
            var watch = System.Diagnostics.Stopwatch.StartNew();
            double pi = Math.PI;
            double h, func;
            double s = 0;
            double a = -pi / 4;
            double b = 0;
            h = (b - a) / n;
            for (double x1 = 0, x = a; x <= b; x += h)
            {
                if (x < b)
                {
                    x1 = x + h / 2;
                    if (x1 >= 2)
                        continue;
                    func = x1 / Math.Pow(Math.Cos(x1), 2);
                    s += func;
                }
            }
            watch.Stop();
            var elapsed = watch.ElapsedTicks;
            Console.WriteLine("Данный интеграл равен: {0:0.0000}. Кол-во тиков: {1}", s * h, elapsed);
            return s * h; 
        }
    }
}
READ ALSO
C# - Симуляция ввода текста пользователем в консольное приложение

C# - Симуляция ввода текста пользователем в консольное приложение

Задача такова, на фоне работает консольное приложение, мое приложение при нажатии на кнопку симулирует ввод текста в этом консольном приложении,...

150
Как передать в С++ библиотеку указатель на объект из C# и затем получить данные обратно?

Как передать в С++ библиотеку указатель на объект из C# и затем получить данные обратно?

Дело такое: Написал несколько функций на С++ и хочу их использовать в C# коде, но не знаю как правильно объявить эти функции в C#

138
Как пролистать Panel через AutoScroll кнопкой?

Как пролистать Panel через AutoScroll кнопкой?

Подскажите, как при нажатии на кнопку пролистать Panel через AutoScroll, таким образом, чтобы пролистывание уходило в самый конец Panel

145
Ошибка при получении пользователя из Active Directory c#

Ошибка при получении пользователя из Active Directory c#

Подскажите, выходит ошибка при получении пользователя из AD: "Ссылка на объект не указывает на экземпляр объекта"Хотя на компе где пишется...

140