Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.82
Miras777
0 / 0 / 0
Регистрация: 08.03.2011
Сообщений: 30
#1

Две точки в n-мерном пространстве X=(х1, х2, ..., хn), Y=(y1, y2, ...,yn) - C++

30.03.2012, 00:27. Просмотров 2206. Ответов 1
Метки нет (Все метки)

Даны две точки в n-мерном пространстве X=(х1, х2, ..., хn), Y=(y1, y2, ...,yn). Написать
программу нахождения расстояния между этими точками и вектора XY.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.03.2012, 00:27     Две точки в n-мерном пространстве X=(х1, х2, ..., хn), Y=(y1, y2, ...,yn)
Посмотрите здесь:

Класс вектор в n-мерном пространстве C++
C++ Задача на векторы в в н-мерном пространстве
Создайте стуктуру Point (точка) с вещественными полями x и y, которые задают координаты этой точки в двухмерном пространстве C++
C++ Найти в n-мерном пространстве min расстояние от начала координат до отрезка, заданного координатами концов
C++ Даны две прямые в пространстве.Определить их взаимное расположение. Решении в С++ и алгоритм(блок схему)
C++ Даны две прямые в пространстве.Определить их взаимное расположение
точки на плоскости в трехмерном пространстве C++
C++ Группировка точек в 3-мерном пространстве. Алгоритм
C++ Дано n точек в пространстве, упорядочить точки по неубыванию их расстояний до начала координат
Даны 3 точки в пространстве. Найдите периметр пространственного треугольника, составленного из этих точек C++
C++ Представить координаты точки в трехмерном пространстве в виде структуры
C++ Движение материальной точки в двумерном пространстве под действием постоянной силы

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Polikarpic
45 / 45 / 7
Регистрация: 29.06.2011
Сообщений: 174
30.03.2012, 01:27     Две точки в n-мерном пространстве X=(х1, х2, ..., хn), Y=(y1, y2, ...,yn) #2
Расстояние между двумя точками в n-мерном пространстве определяется так:
d(X, Y) = sqrt(sum(sqr(xi - yi)), где sum-функция суммирования sqrt(xi - yi) по и от 1 до n

Матанализ

Добавлено через 16 минут
Попробуйте сию программу:
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
#include <iostream>
#include <math.h>
#include <conio.h>
using namespace std;
 
 
int main()
{//массивы для хранения координат
    int *f, *s;
    int i;
    int n;
    float result = 0;
    float sum = 0;
cout<<"размерность пространства = ";
cin>>n;
//выделяем нужное количество ячеек
f = new int [n];
s = new int [n];
cout<<"введите координаты первой точки"<<endl;
for (i = 0; i < n; i++)
cin>>f[i];
for (i = 0; i < n; i++)
cin>>s[i];
//действуем строго по формуле:
//вычисляем сумму в квадрате разности координат
for (i = 0; i < n; i++) 
sum += (f[i] - s[i]) * (f[i] - s[i]);
//берём корень от этой суммы
result = sqrt(sum);
cout<<result;
//не забываем освобождать выделенную память
delete []f;
delete []s;
getch();
    return 0;
}
Работает правда только для целых координат и возможно переполнение переменных sum и result, но это легко исправить, поменяв типы скажем int на long и т.д.
Это так ,для примера
Yandex
Объявления
30.03.2012, 01:27     Две точки в n-мерном пространстве X=(х1, х2, ..., хn), Y=(y1, y2, ...,yn)
Ответ Создать тему
Опции темы

Текущее время: 03:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru