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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 25, средняя оценка - 4.72
wwwstm1995
0 / 0 / 0
Регистрация: 17.10.2013
Сообщений: 7
#1

Написать программу с функцией, вычисляющей расстояние между двумя точками на плоскости - C++

27.11.2013, 08:49. Просмотров 4801. Ответов 10
Метки нет (Все метки)

Пожалуйста Помогите сделать лабу, нужно что-бы я сам задавал координаты точек на плоскости.
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.11.2013, 08:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Написать программу с функцией, вычисляющей расстояние между двумя точками на плоскости (C++):

Вычислить расстояние между двумя точками на плоскости - C++
Вычислить расстояние между двумя точками на плоскости, заданных своими координатами Оригинал: Обчислити відстань між двома точками на...

Вычислить расстояние между двумя точками на плоскости - C++
1. Известны координаты на плоскости двух точек. Составить программу вычисления расстояния между ними.

Найти расстояние между двумя точками на плоскости - C++
Даны четыре действительных числа: x1, y1, x2, y2. Напишите функцию distance(x1, y1, x2, y2), вычисляющую расстояние между точкой (x1. y1) и...

Вычислить расстояние между двумя точками на плоскости, заданных своими координатами - C++
Помогите

Расстояние между двумя множествами точек - это расстояние между наиболее близко расположенными точками этих - C++
1. Расстояние между двумя множествами точек - это расстояние между наиболее близко расположенными точками этих множеств. Найти расстояние...

Расстояние между двумя точками - C++
1. Напишите функцию distance, которая вычисляет расстояние между двумя точками (x1, y1) и (x2, y2). Все числа и возвращаемые значения...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
SatanaXIII
Супер-модератор
Эксперт С++
5616 / 2651 / 246
Регистрация: 01.11.2011
Сообщений: 6,529
Завершенные тесты: 1
27.11.2013, 08:52 #2
Формулу скажите.
0
wwwstm1995
0 / 0 / 0
Регистрация: 17.10.2013
Сообщений: 7
27.11.2013, 08:59  [ТС] #3
корень( (x2-x1)*(x2-x1)+(y2-y1)*(y2-y1) )

Добавлено через 1 минуту
Название: 3.png
Просмотров: 455

Размер: 1.4 Кб
0
SatanaXIII
Супер-модератор
Эксперт С++
5616 / 2651 / 246
Регистрация: 01.11.2011
Сообщений: 6,529
Завершенные тесты: 1
27.11.2013, 09:11 #4
C++
1
2
3
4
int x1, x2, y1, y2;
cin >> x1, y1, x2, y2;
 
cout << sqrt( (x2-x1)*(x2-x1) + (y2-y1)*(y2-y1) );
0
wwwstm1995
0 / 0 / 0
Регистрация: 17.10.2013
Сообщений: 7
27.11.2013, 09:16  [ТС] #5
А полностью программу можно?

Добавлено через 11 секунд
Пожалуйста
0
SatanaXIII
Супер-модератор
Эксперт С++
5616 / 2651 / 246
Регистрация: 01.11.2011
Сообщений: 6,529
Завершенные тесты: 1
27.11.2013, 09:20 #6
wwwstm1995, а чем вам вот это решение не понравилось?
Вычислить расстояние между двумя точками на плоскости
0
wwwstm1995
0 / 0 / 0
Регистрация: 17.10.2013
Сообщений: 7
27.11.2013, 09:24  [ТС] #7
там через Struct
мне через функцию надо...(
помогите.
0
SatanaXIII
Супер-модератор
Эксперт С++
5616 / 2651 / 246
Регистрация: 01.11.2011
Сообщений: 6,529
Завершенные тесты: 1
27.11.2013, 09:35 #8
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <cmath>
 
using namespace std;
 
double length( int x1, int y1, int x2, int y2 )
{
return sqrt( (x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1) );
}
 
int main()
{
int x1, x2, y1, y2;
cin >> x1, y1, x2, y2;
 
 
cout << length( x1, x2, y1, y2 );
return 0;
}
1
wwwstm1995
0 / 0 / 0
Регистрация: 17.10.2013
Сообщений: 7
28.11.2013, 08:23  [ТС] #9
Ошибки.

1>c:\documents\visual studio 2008\projects\krylov\krylov\плоскость.cpp(7) : error C2668: sqrt: неоднозначный вызов перегруженной функции
1> c:\program files (x86)\microsoft visual studio 9.0\vc\include\math.h(581): может быть 'long double sqrt(long double)'
1> c:\program files (x86)\microsoft visual studio 9.0\vc\include\math.h(533): или 'float sqrt(float)'
1> c:\program files (x86)\microsoft visual studio 9.0\vc\include\math.h(128): или 'double sqrt(double)'
1> при попытке сопоставить список аргументов '(int)'
в чем проблема(
0
maksim32
42 / 34 / 11
Регистрация: 30.08.2012
Сообщений: 116
13.11.2016, 16:55 #10
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
SatanaXIII,
1. Считывать через запятую переменные неверно.
2. При умножении целых чисел может быть переполнен тип вычисления будут неверные (а могли бы быть и верными при использовании вещественного типа).
3. Вызов функции sqrt должен быть с аргументом вещественного типа.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <cmath>
 
using namespace std;
 
double Len(int x1, int y1, int x2, int y2)
{
    return sqrt((double)(x1-x2)*(x1-x2) + (double)(y1-y2)*(y1-y2));
}
 
int main()
{
    int x1, y1, x2, y2;
    cin >> x1 >> y1 >> x2 >> y2;
    double len = Len(x1, y1, x1, y2);
    cout << len << endl;
    return 0;
}
0
Courfeyrac
10 / 10 / 3
Регистрация: 13.11.2016
Сообщений: 48
13.11.2016, 20:18 #11
Если используете c++11/14, то там есть std::hypot(). Вычисляет корень из суммы квадратов без переполнения и потери точности.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.11.2016, 20:18
Привет! Вот еще темы с ответами:

Расстояние между двумя точками - C++
Найти расстояние между двумя точками (x1, y1) и (x2, y2) Формат входных данных Одна строка входных данных содержит четыре...

Найти максимальное расстояние между точками на плоскости - C++
Даны координаты n точек на плоскости: (X1, Y1), ..., (Xn, Yn) (n ≤ 30). Найти номер пары точек, расстояние между которыми самое большое...

Определите расстояние между двумя введенными точками - C++
Есть задание: &quot;Опишите переменную структуру для моделирования, предложенного понятия. Координаты точки (пара вещественных или комплексных...

Расстояние между двумя точками через классы - C++
Здравствуйте. Требуется написать программу, которая вычисляет расстояние между двумя введёнными точками на плоскости, используя классы. ...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
13.11.2016, 20:18
Ответ Создать тему
Опции темы

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