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

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

Войти
Регистрация
Восстановить пароль
 
go100gi
1 / 1 / 0
Регистрация: 31.07.2013
Сообщений: 31
Завершенные тесты: 1
#1

Расстояние между двумя точками, double или int? - C++

21.11.2014, 13:38. Просмотров 303. Ответов 7
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <conio.h>
#include <cmath>
 
using namespace std;
 
int distance(int, int, int, int);
int main()
{
    int x1 = 4;
    int x2 = 7;
    int y1 = -5;
    int y2 = -2;
    int result = distance(x1, x2, y1, y2);
    cout << "=" << result;
    return _getch();
}
 
int distance(int x1, int x2, int y1, int y2)
{
    return sqrt(pow(x2-x1, 2) + pow(y2-y1, 2));
}
формула:
http://www.cyberforum.ru/cgi-bin/latex.cgi?\sqrt{(x_2-x_2)^2+(y_2-y_1)^2}

с такими данными result должно возвращать 5, а возвращает 4.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2014, 13:38     Расстояние между двумя точками, double или int?
Посмотрите здесь:

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

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

Вычислить расстояние между двумя точками с координатами х1, у1 и х2, у2. - C++
Напишите программу пожалуйста)) Спасибо заранее

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

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

Функция вычисляющая расстояние между двумя точками - C++
Здравствуйте,помогите пожалуйста! Написать процедуру-функцию,которая вычисляет расстояние между двумя точками x,y ∈ R^3.Точки заданы...

Вычислить расстояние между двумя точками с заданными координатами - C++
Вычислить расстояние между двумя точками с заданными координатами:A(a,d),B(u,m).

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nmcf
5240 / 4560 / 1532
Регистрация: 14.04.2014
Сообщений: 18,122
21.11.2014, 13:42     Расстояние между двумя точками, double или int? #2
C++
1
2
3
4
5
6
double distance(int x1, int x2, int y1, int y2)
{
    return sqrt((x2-x1) * (x2-x1) + (y2-y1) * (y2-y1));
}
 
double result = distance(x1, x2, y1, y2);
D_in_practice
331 / 331 / 159
Регистрация: 02.10.2014
Сообщений: 666
21.11.2014, 13:45     Расстояние между двумя точками, double или int? #3
http://www.cyberforum.ru/cgi-bin/latex.cgi?\sqrt{{(4 - 7)}^{2} + {(-5 - (-2))}^{2}} = \sqrt{18} = 4,24264...
Код
(int)4.24264 = 4
C++
1
2
3
4
int distance(int x1, int x2, int y1, int y2)
{
    return ceil(sqrt(pow(x2-x1, 2) + pow(y2-y1, 2)));
}
go100gi
1 / 1 / 0
Регистрация: 31.07.2013
Сообщений: 31
Завершенные тесты: 1
21.11.2014, 13:50  [ТС]     Расстояние между двумя точками, double или int? #4
Цитата Сообщение от nmcf Посмотреть сообщение
Код C++
1
2
3
4
5
6
double distance(int x1, int x2, int y1, int y2)
{
return sqrt((x2-x1) * (x2-x1) + (y2-y1) * (y2-y1));
}
double result = distance(x1, x2, y1, y2);
тоже самое, 4, если самому считать то 5 выходит.

Добавлено через 3 минуты
Цитата Сообщение от D_in_practice Посмотреть сообщение
Код Code
1
(int)4.24264 = 4

а нет, у меня всё правильно, просто считал я не с y = -2 а с y = -1
nmcf
5240 / 4560 / 1532
Регистрация: 14.04.2014
Сообщений: 18,122
21.11.2014, 14:28     Расстояние между двумя точками, double или int? #5
Что тоже самое? Там вообще целое число не может получиться.
Гоблин-инженер
113 / 113 / 32
Регистрация: 18.09.2014
Сообщений: 337
21.11.2014, 14:32     Расстояние между двумя точками, double или int? #6
go100gi, на будущее, иногда при делении целых чисел получается не дробный, а целый результат. Тогда неявно переводите целое число в вещественное:
C++
1
2
3
double Xdiv2(int x) {
    return (double)x/2.0;
}
go100gi
1 / 1 / 0
Регистрация: 31.07.2013
Сообщений: 31
Завершенные тесты: 1
21.11.2014, 14:48  [ТС]     Расстояние между двумя точками, double или int? #7
Цитата Сообщение от nmcf Посмотреть сообщение
Что тоже самое? Там вообще целое число не может получиться.
ты написал тоже самое что и я но в другом виде, изменил только тип переменных, да я и не говорил что мне нужна точность.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.11.2014, 15:58     Расстояние между двумя точками, double или int?
Еще ссылки по теме:

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

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

Расстояние между 2-мя точками. - C++
Попробовал сам, но она не выполняется, пишет ошибки при вычислении корня. Задача в следующем: Вычислить расстояние между двумя точками...

Расстояние между точками - C++
задание: дано n точек определить номера точек которые имеют максимальное и минимальное расстояние между точками. Когда вводил n=3 и...

Расстояние между точками x0 y0 x1 y1 - C++
Всем привет, не могу понять в чем проблема программы: Найти расстояние между двумя точками заданными координатами(x1,y1) &amp;&amp; (x2,y2) ...


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

Или воспользуйтесь поиском по форуму:
nmcf
5240 / 4560 / 1532
Регистрация: 14.04.2014
Сообщений: 18,122
21.11.2014, 15:58     Расстояние между двумя точками, double или int? #8
А ты не думал, что тип важен? Как у тебя выходит 5, если даже с округлением 4?
Yandex
Объявления
21.11.2014, 15:58     Расстояние между двумя точками, double или int?
Ответ Создать тему
Опции темы

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