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

Найти минимальное расстояние от точки до точки - C++

Восстановить пароль Регистрация
 
Relike
 Аватар для Relike
6 / 6 / 0
Регистрация: 24.04.2013
Сообщений: 260
08.12.2013, 15:47     Найти минимальное расстояние от точки до точки #1
В последнем цикле, который должен находить минимальное расстояние от точки до точки и его индекс, какая-то ошибка. Немогу её увидеть. Помогите найти пожалуйста.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.12.2013, 15:47     Найти минимальное расстояние от точки до точки
Посмотрите здесь:

C++ как при помощи класса создать 2 точки и найти между ними расстояние
Найти наименьшее расстояние от точки В до любой из точек множества А C++
Найти координаты самой низкой точки траектории и другой наивысшей точки подъема C++
C++ расстояние от точки до прямой
C++ Массив, заполненный 1 и 0. Найти путь, состоящий из нулей, от точки до точки.
Найти самый короткий путь от точки до точки в матрице C++
C++ Дана точка A и множество B из N точек. Найти номер точки из множества B, наиболее удаленной от точки A
C++ Найти расстояние от ближайшей точки треугольника до его стороны с функцией
Найти расстояние от данной точки внутри до ближайшей стороны треугольника C++
C++ Найти расстояние от данной точки до ближайшей стороны треугольника
Расстояние от точки до прямой C++
Найти координаты второй точки, зная первую точку и расстояние между ними C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
HidForce
54 / 54 / 13
Регистрация: 17.11.2012
Сообщений: 1,285
08.12.2013, 15:57     Найти минимальное расстояние от точки до точки #2
Relike, а где код-то?
Relike
 Аватар для Relike
6 / 6 / 0
Регистрация: 24.04.2013
Сообщений: 260
08.12.2013, 16:13  [ТС]     Найти минимальное расстояние от точки до точки #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
42
43
44
45
#include <cstdlib>
#include <iostream>
#include <Math.h>
using namespace std;
 
 
int main(int argc, char *argv[])
{
    float *x, *y, *z, naib, naim, p, q, r;
    int i, n, ind_naib, ind_naim;
    cout<<"Vvedite razmernost' massiva : "; cin>>n;
    x = new float [n];
    y = new float [n];
    z = new float [n];
    cout<<"\nVvedite massivy c koordynatami : \n";
    for(i = 0; i<n; i++){
        cout<<"x["<<i+1<<"] = "; cin>>x[i];
        cout<<"y["<<i+1<<"] = "; cin>>y[i];
        cout<<"z["<<i+1<<"] = "; cin>>z[i];
        }
    cout<<"\nVvedite koordinaty tochki M : \n";
    cout<<"p = "; cin>>p;
    cout<<"q = "; cin>>q;
    cout<<"r = "; cin>>r;
    cout<<"\nM("<<p<<", "<<q<<", "<<r<<")\n";
    naib = sqrt((p-x[0])*(p-x[0])+(q-y[0])*(q-y[0])+(r-z[0])*(r-z[0]));
    for(i = 1; i<n; i++){
        if (sqrt((p-x[i])*(p-x[i])+(q-y[i])*(q-y[i])+(r-z[i])*(r-z[i]))>naib){
            naib = sqrt((p-x[i])*(p-x[i])+(q-y[i])*(q-y[i])+(r-z[i])*(r-z[i]));
            ind_naib = i;
            }
        }
    naim = sqrt((p-x[0])*(p-x[0])+(q-y[0])*(q-y[0])+(r-z[0])*(r-z[0]));
    for(i = 1; i<n; i++){
        if (sqrt((p-x[i])*(p-x[i])+(q-y[i])*(q-y[i])+(r-z[i])*(r-z[i]))<naim){
            naim = sqrt((p-x[i])*(p-x[i])+(q-y[i])*(q-y[i])+(r-z[i])*(r-z[i]));
            ind_naim = i;
            }
        }
        cout<<"\n"<<ind_naim<<"\n";
    cout<<"Tochka s koordynatami ("<<x[ind_naib]<<", "<<y[ind_naib]<<", "<<z[ind_naib]<<") naibolee udalena ot M.\n";
    cout<<"Tochka s koordynatami ("<<x[ind_naim]<<", "<<y[ind_naim]<<", "<<z[ind_naim]<<") naimenee udalena ot M.\n";
    system("pause");
    return EXIT_SUCCESS;
}
Не знаю куда это он делася в прошлый раз...но вот он.

Добавлено через 14 минут
HidForce, вот немонимаю что за ошибка. Индекс считает неправильно.
Relike
 Аватар для Relike
6 / 6 / 0
Регистрация: 24.04.2013
Сообщений: 260
09.12.2013, 18:42  [ТС]     Найти минимальное расстояние от точки до точки #4
Поправка, ошибку выдаёт при введении p = q = r... В чем фишка может быть?
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
09.12.2013, 18:52     Найти минимальное расстояние от точки до точки #5
Цитата Сообщение от Relike Посмотреть сообщение
Поправка, ошибку выдаёт при введении p = q = r... В чем фишка может быть?
увидел только одну ошибку (она характерна и для минимального и для максимального расстояний): раз считаете изначально минимальное (максимальное) расстояние до точки с индексом 0, то значит задавайте начальное значение ind_naib (ind_naim) равное 0.
Relike
 Аватар для Relike
6 / 6 / 0
Регистрация: 24.04.2013
Сообщений: 260
09.12.2013, 18:54  [ТС]     Найти минимальное расстояние от точки до точки #6
valeriikozlov, Большое спасибо! Ошибка разрешилась!
Yandex
Объявления
09.12.2013, 18:54     Найти минимальное расстояние от точки до точки
Ответ Создать тему
Опции темы

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