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

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

Войти
Регистрация
Восстановить пароль
 
Дмитрий84
1 / 1 / 0
Регистрация: 30.04.2014
Сообщений: 19
#1

Разность между int и float - C++

07.05.2014, 10:47. Просмотров 285. Ответов 6
Метки нет (Все метки)

Есть точка
C++
1
2
3
4
5
6
7
8
9
CV_INLINE  CvPoint  cvPoint( int x, int y )
{
    CvPoint p;
 
    p.x = x;
    p.y = y;
 
    return p;
}
и еще одна
C++
1
2
3
4
5
6
typedef struct CvPoint2D32f
{
    float x;
    float y;
}
CvPoint2D32f;
надо найти их разность (по условию)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
if( add_remove_pt )
 
                {
 
                    double dx = pt.x - points[1][i].x;
 
                    double dy = pt.y - points[1][i].y;
 
 
                    printf ("dd=%d \n",abs(dx*dx + dy*dy));
                    if( dx*dx + dy*dy <= 25 )
 
                    {
 
                        add_remove_pt = 0;
 
                        continue;
 
                    }
printf в данном случае выводит огромные цифры то положительные то отрицательные не имеющие отношения к координатам, как сделать чтоб работало?

Добавлено через 29 минут
сейчас Printf выводит числа с разбросом от 20 до 100000 и все не целые
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.05.2014, 10:47     Разность между int и float
Посмотрите здесь:

ОШИБКА [Error] cannot convert 'int*' to 'float*' for argument '1' to 'void Syma(float*,int*,int) - C++
Какая то проблема с указателями,незнаю,не хочет щитать суму парних чисел в второй подпрограме.Извиниет за ошибки.Не владею руским.Помогите...

Как взять разность по модулю между двумя числами int? - C++
Суть в теме: &quot;Как взять разность по модулю между двумя числами int?&quot;. Заранее спасибо :)

Функции float average(int arrray[],int from,int to) - C++
Напишите код функции float average(int arrray,int from,int to). Возвращаемым значением функции должно быть среднее значение элементов...

Int в Float - C++
Доброго времени суток. у меня уже второй раз возник вопрос по поводу перевода Int в Float Sr2=(float)S2/size; тут переменная Sr2 типа...

int или float - C++
здрасьти, p=p*6; каким должен быть тип у p? int или float? или без разницы?

int/int != float? Why not? - C++
Всем доброго времени суток! Объясните пожалуйста, почему результатом этих операций является целочисленное значение. Ведь должно...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jewbacabra
Эксперт PHP
2261 / 1925 / 722
Регистрация: 24.04.2014
Сообщений: 5,599
07.05.2014, 10:49     Разность между int и float #2
для вывода double printf ("dd=%lf \n",abs(dx*dx + dy*dy));
И точно abs(dx*dx+dy*dy), а не sqrt(dx*dx+dy*dy)
Дмитрий84
1 / 1 / 0
Регистрация: 30.04.2014
Сообщений: 19
07.05.2014, 10:58  [ТС]     Разность между int и float #3
если ставлю
double printf ("dd=%lf \n",abs(dx*dx + dy*dy));
возмущается - значение типа 'const chsr*' нельзя использовать для инициализации сущности типа double
abs поставил только в принтфе для игнора знаков (почемуто там попадаются отрицательные хотя сумма квадратов должна быть +), там в условии сравнение с 25 (растояние между точками- если маленькой то удаляем)

Добавлено через 40 секунд
а если без double то все равно цифры гигантские
Jewbacabra
Эксперт PHP
2261 / 1925 / 722
Регистрация: 24.04.2014
Сообщений: 5,599
07.05.2014, 11:03     Разность между int и float #4
Цитата Сообщение от Дмитрий84 Посмотреть сообщение
double printf ("dd=%lf \n",abs(dx*dx + dy*dy));
не double printf(...), а printf(...);
Цитата Сообщение от Дмитрий84 Посмотреть сообщение
а если без double то все равно цифры гигантские
попробуй посмотреть чему dx и dy равны.
Дмитрий84
1 / 1 / 0
Регистрация: 30.04.2014
Сообщений: 19
07.05.2014, 11:09  [ТС]     Разность между int и float #5
dx большие числа
попробовал pt.x - они норм
попробовал points[1][i].x - тут косяк (они большие) но прога с ними работает норм (вырисовывает)
может printf надо с каким нибудь другим значением %...

Добавлено через 1 минуту
оооо c lf вроде норм но большая дробная часть. Как её убрать?
Jewbacabra
Эксперт PHP
2261 / 1925 / 722
Регистрация: 24.04.2014
Сообщений: 5,599
07.05.2014, 11:11     Разность между int и float #6
Цитата Сообщение от Дмитрий84 Посмотреть сообщение
может printf надо с каким нибудь другим значением %...
не надо
Цитата Сообщение от Дмитрий84 Посмотреть сообщение
попробовал points[1][i].x - тут косяк (они большие)
нужно исправлять
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.05.2014, 11:15     Разность между int и float
Еще ссылки по теме:

Почему float преобразуется в int? - C++
Уважаемые форумчане, помогите найти ошибку, а то у меня уже коллапс мозга. В задаче надо найти кучу всего. Все считает правильно кроме...

Чтение int и float из файла - C++
Ну вот опять - печатает в конце программы что-то невообразимое. В начале всё хорошо, а потом засбоила. Может каунтер поставить? Подскажите,...

Результат преобразования int в float - C++
Доброго времени суток,пример unsigned int sande1=0,sande2=0; void TForm1::mat_tt(){ float dat=0.0; int posred=0; ...

Не происходит конвертация типа int в float - C++
int r = 130; r = (float)r/255; r равен 0. Почему не произошла конвертация типа?


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

Или воспользуйтесь поиском по форуму:
Дмитрий84
1 / 1 / 0
Регистрация: 30.04.2014
Сообщений: 19
07.05.2014, 11:15  [ТС]     Разность между int и float #7
они норм в проге работают - точки на экране отрисовываются корректно и по координатам совпадают.
просто решил вытащить на свет их значение (printf) и понять не могу от куда такие цифры, было подозрение что if не отрабатывает совсем, увеличил 25 до 100025 и вроде всё работает, но с координатами я тут связь найти не могу.
Yandex
Объявления
07.05.2014, 11:15     Разность между int и float
Ответ Создать тему
Опции темы

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