Тема: Round не работает
#include <math.h>
Round(x,2);
не работает abs(x); ок
что делаю не так и как сделатъ чтобы работали Val, str ...
СПАСИБО
Информационный портал для профессионалов в области САПР
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Форумы CADUser → Программирование → ObjectARX → Round не работает
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
#include <math.h>
Round(x,2);
не работает abs(x); ок
что делаю не так и как сделатъ чтобы работали Val, str ...
СПАСИБО
странно.
Первый раз вижу, чтоб у раунда было два параметра.
попробуй
int round(double value);
по поводу abs, есть разница между целым и вещественным числом.
для целого int abs(int value);
для вещественного double fabs(double value);
А по поводу всего остального - язык точно С++ ?
По-моему бейсик.
И при чем тут ObjectARX?
> Николай
#include <math.h> - это точно C или C++!
Да я не против :)
Это и ставит в тупик.
Но функции str и val я в С++ не встречал :)
Да и help про них не знает :)
А вариант с round очень сильно смахивает на VB
> Николай
Round это точно ВБ. Нету прототипа такой функции в math.h
> Darius
Этот код вообще компилироваться не должен. Как может еще и "не работать" - представить себе не могу.
да этот код из VB и мне тогда нужен аналог
что мне исползоватъ б с++ ?
> Darius
Все зависит от того, что тебе сделать надо. Для округления есть функции floor и ceil. abs возвращает модуль числа. Возьми хорошую книжку по C/C++ и почитай. Многое сразу станет понятней.
floor и ceil работет иначе на пример мне нужен резултат 3,4512369=3,45 как сделатъ в с++?
нужен резултат 3,4512369=3,45
И это проблема?
Кстати, если ты хочешь обрезать double, томогу тебя огорчить, не выйдет. после обрезки получится что-то типа
3,45000000000001
Но все же есть способ "обрезания", хоть и малех кривоватый.
Сразу перегоняй в строку, ее режь, а потом обратно :)
Если тебе нада просто вывести например в Edit красивое число, то хватит только перегнать в строку и обрезать лишнее.
Все зависит от поставленной цели.
И повторюсь еще раз при чем тут ObjectARX?
ObjectARX при том что я взял координаты точки и надо написатъ с ObjectARX
не буду писатъ 159,122355454 нада 159,12
нужен резултат 3,4512369=3,45
Если тебе надо именно два знака после запятой, то можно сделать следующее:
double value = floor( value * 100. ) / 100;
Если надо просто для вывода этого числа куда-то, то лучше, конечно, поиграться форматом вывода чисел.
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Форумы CADUser → Программирование → ObjectARX → Round не работает
Форум работает на PunBB, при поддержке Informer Technologies, Inc