С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
Artflex
0 / 0 / 0
Регистрация: 17.04.2016
Сообщений: 5
1

Вычислить длину вектора

21.10.2017, 14:27. Просмотров 683. Ответов 9
Метки нет (Все метки)

Вычислить длину вектора в параллельном программировании
Пояснение: Надо вычислить длину одного вектора
Сколько не показывал программы которые делал преподу он говорит не то!
Помогите пожалуйста!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.10.2017, 14:27
Ответы с готовыми решениями:

Вычислить длину вектора в параллельном программировании
Подскажите пожалуйста как вычислить длину вектора в параллельном...

Напишите метод, возвращающий длину вектора
Подскажите как дописать программу ? нужно (Напишите метод, возвращающий длину...

Вычислить для вектора x
n = 10 Вычислить для вектора x: True, если элементы массива x четные и...

Вычислить для вектора среднее геометрическое
Вычислить для вектора x среднее геометрическое |x*x*...x| (корень n степени из...

Вычислить длину окружности и площадь по заданному радиусу
Вычислите длину окружности и площадь , радиус которой вводится пользователем...

9
zna926
355 / 325 / 260
Регистрация: 24.09.2013
Сообщений: 2,044
Записей в блоге: 1
21.10.2017, 15:20 2
Пишите загадками
1. Что показывали преподу?
2. Вектор на плоскости или в пространстве?
0
Artflex
0 / 0 / 0
Регистрация: 17.04.2016
Сообщений: 5
21.10.2017, 17:17  [ТС] 3
Преподу показывал программы вот одна из этих:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace QRAMBO
{
    class Program
    {
        delegate double myDelegate(double a1,double a2);
 
        static void Main(string[] args)
        {
            double X = 0;
            double Y = 0;
            double x1 = 2.5, x2 = 3.7;
            double y1 = 3.9, y2=7.8;
 
            myDelegate del = new myDelegate(resX);
            IAsyncResult result;
            result = del.BeginInvoke(x1, x2, null, null);
 
            Y = resY(y1, y2);
 
            X = del.EndInvoke(result);
 
            Console.WriteLine("Результат: {0:f3}", Math.Pow((X + Y), 2));
            Console.ReadLine();
 
        }
 
        static double resX(double x1, double x2)
        {
            return Math.Pow((x2 - x1), 2);
        }
        static double resY(double y1, double y2)
        {
            return Math.Pow((y2 - y1), 2);
        }
    }
}
В задании написано просто "Вычислить длину вектора" он это тоже не уточнял, думаю на плоскости.
И он говорил вычислить длину одного вектора.
0
Новичок
Модератор
1512 / 981 / 465
Регистрация: 17.07.2012
Сообщений: 4,979
Завершенные тесты: 3
21.10.2017, 22:56 4
И зачем тут делегаты, несколько функций? Зачем координаты 2 точек(4 числа) если достаточно координат вектора(2 числа)?
C#
1
2
3
static double vectorLength(double x, double y) { // не проверял код
     return Math.Sqrt(x * x + y * y);
}
0
Artflex
0 / 0 / 0
Регистрация: 17.04.2016
Сообщений: 5
25.10.2017, 22:27  [ТС] 5
помогите) напишите программу пожалуйста!
0
zna926
355 / 325 / 260
Регистрация: 24.09.2013
Сообщений: 2,044
Записей в блоге: 1
26.10.2017, 11:30 6
Ввиду безвыходной ситуации, напишу код с пояснениями

C#
1
2
3
4
5
6
7
8
9
10
11
Forms Code
{
       private void button1_Click(object sender, EventArgs e)
       {
          Double x1 = 2.5, x2 = 3.7, y1 = 3.9, y2 = 7.8, x, y, Len; // Len - длина вектора, которую нужно определить
          x = x2 -x1; // горизонтальная составляющая вектора
          y = y2 -y1  // то же вертикальная
           Len = Math.Sqrt(x*x + y*y);  //Определили длину вектора, как гипотенузу прямоугольного треугольника 
                                                      //    со сторонами x,y
      }
}
Добавлено через 12 часов 28 минут
Artflex К этому коду нужно добавить 2 строчки:
1. Результат Len обычно имеет 10-12 дробных знаков. Для удобства можно их сократить, например, до 3

Код: Len = Math.Round(Len, 3);
2. Вывод длины вектора:

Код: MessageBox.Show("Длина - " + Len.ToString());
1
Artflex
0 / 0 / 0
Регистрация: 17.04.2016
Сообщений: 5
27.10.2017, 22:39  [ТС] 7
Спасибо большое!
0
Diamante
1319 / 1035 / 654
Регистрация: 14.08.2016
Сообщений: 3,608
Завершенные тесты: 1
28.10.2017, 02:18 8
zna926, дико извинюсь,но где тут
Цитата Сообщение от Artflex Посмотреть сообщение
параллельном программировании
что требуется то, Task или Thread(потоки, но ваших преподов *** победишь)?
0
Artflex
0 / 0 / 0
Регистрация: 17.04.2016
Сообщений: 5
29.10.2017, 15:33  [ТС] 9
В общем программу препод сказал написать в двух видах:
1) Таск
2) ПаралельФор
0
Diamante
1319 / 1035 / 654
Регистрация: 14.08.2016
Сообщений: 3,608
Завершенные тесты: 1
29.10.2017, 17:47 10
ну с Task'ом примерно так
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
using System.Drawing;
 
namespace ConsoleApplication7
{
    class Vector
    {
        PointF _start { get; set; }
        PointF _end { get; set; }
        public Vector() : this(new PointF(0, 0), new PointF(1, 1)) { }
        public Vector(PointF start, PointF end)
        {
            _start = start;
            _end = end;
        }
        public double GetLength()
        {
            return Math.Sqrt(Math.Pow(_end.X - _start.X, 2) + Math.Pow(_end.Y - _start.Y, 2));
        }
    }
    class Program
    {
        public static void Main(string[] args)
        {
            Vector v = new Vector(new PointF(0, 0), new PointF(5, 5));
            Task<double> t = new Task<double>(() => v.GetLength());
            t.Start();
            Console.WriteLine(t.Result);
        }
    }
}
а вот что тут можно распараллелить с помощью Parallel.For я не знаю
0
29.10.2017, 17:47
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.10.2017, 17:47

Вычислить радиус, длину окружности и площадь круга
Помогите с задачами №2 и №3 написать код в С# (в приложенной фотографии)

Вычислить среднее геометрическое модулей элементов вектора
Помогите пожалуйста! Дан одномерный массив V = {2,3; -4,1; 8,2; 4,5; -3,4;...

Вычислить длину окружности и площадь круга заданного радиуса R
Вычислить длину окружности и площадь круга одного и того же заданного радиуса R.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru