Exemplo n.º 1
0
        public int search()
        {
            obj.joinToServer();
            task = obj.GetTask();
            if (task == null)

                return 0;

            arr = obj.getData(task);
            int[] res = new int[2];
            res[0] = arr[0];//min
            res[1] = arr[0];//max
            Console.Out.WriteLine("Получено:");
            for (int i = 0; i < task.stop - task.start; i++)
            {
                Console.Out.Write(arr[i]);
                Console.Out.Write("  ");
            }
            Console.Out.WriteLine();
            for (int i = 0; i < task.stop - task.start; i++)
            {
                if (arr[i] < res[0])
                    res[0] = arr[i];
            }
            res[1] = arr[0];
            for (int i = 0; i < task.stop - task.start; i++)
            {
                if (arr[i] > res[1])
                    res[1] = arr[i];
            }
            Console.WriteLine("Минимальное: " + res[0], "\n");
            Console.WriteLine("Максимальное: " + res[1], "\n");
            obj.Complete(res);
            return 1;
        }
Exemplo n.º 2
0
        public int[] getData(Task task)
        {
            TimerOutput.Print("Клиент запросил данные ");
            int[] temp = new int[task.stop - task.start];
            int j = 0;
            for (int i = task.start; i < task.stop; i++)
            {
                temp[j] = dataArray[i];
                j++;
            }

            return temp;
        }
Exemplo n.º 3
0
        public void GenerateTasks()
        {
            Task temp;

            int step = arrSize / tasksCount; // на каждую задачу приходится равная порция массива

            for (int i = 0; i < tasksCount; i++)
            {
                temp = new Task();
                temp.start = i * step;
                temp.stop = temp.start + step - 1;
                TaskList.Enqueue(temp);
            }
        }