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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
Rustam4853
3 / 3 / 0
Регистрация: 31.03.2011
Сообщений: 20
#1

Как в VC++ получить абсолютное значение для int??? - C++

31.03.2011, 19:20. Просмотров 1199. Ответов 15
Метки нет (Все метки)

Я много искал ... ничего не могу толком найти ... и гуглил .. и в яндексе рылся .... кто нить хелп плиз....
Как получить абсолютное значение для integer числа????? какая ф-ция используется??? или если нет ф-ции какой алгоритм замутить, с использованием чего???
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.03.2011, 19:20
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как в VC++ получить абсолютное значение для int??? (C++):

Получить значение часа из переменной int - C++
Здравствуйте. Столкнулся с такой проблемой, пишу dll, в ней функция которая принимает дату, дата в формате int (в виде количества...

Абсолютное значение iobj ? - C++
Скажите для чего используют значение :iobj ? Пример :inline int abs( int obj ) { // возвращает абсолютное значение iobj ...

Как из CString получить int ... заранее спасибо!! - C++
Проблемка ... Как из CString получить int.... только плиз не советуйте куда заглядывать в MSDN у меня его нету.... СПАСИБО....

Как получить из двух byte один int? - C++
Собственно вот, есть две переменные byte byte b1 = 0x03; byte b2 = 0x40; надо получить одну типа int, но чтобы b1 был...

Найти наибольшее и наименьшее абсолютное значение вещественного массива - C++
Найти наибольшее и наименьшее абсолютное значение вещественного массива. Если таких значений несколько, определить их количество....

Заменить все отрицательные элементы массива на их абсолютное значение - C++
1.Дан двумерный массив вещественных чисел размерностью N*M. Заменить все отрицательные элементы массива на их абсолютное значение, а все...

15
Ma3a
Эксперт С++
618 / 462 / 31
Регистрация: 28.01.2011
Сообщений: 605
31.03.2011, 19:22 #2
C++
1
2
3
4
#include <cmath>
...
int a = -5;
int b = abs(a); // b == 5
1
alex_x_x
бжни
2450 / 1655 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
31.03.2011, 19:23 #3
abs из cmath
0
Deviaphan
Делаю внезапно и красиво
Эксперт С++
1306 / 1221 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
31.03.2011, 19:31 #4
Можно с битами поиграть.)
C++
1
2
3
4
int value = ...;
const int mask = value >> sizeof(int) * 8 - 1;
unsigned int absoulte = (value + mask) ^ mask;
// или  absolute = (v ^ mask) - mask;
Добавлено через 38 секунд
C++
1
2
3
int v = ...;
if( v < 0 )
    v *= -1;
Чем не алгоритм? .))))
0
alex_x_x
бжни
2450 / 1655 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
31.03.2011, 19:34 #5
Deviaphan,
C
1
#define ABS( x ) ( x>0 ? x : -x )
0
Deviaphan
Делаю внезапно и красиво
Эксперт С++
1306 / 1221 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
31.03.2011, 19:49 #6
С ифом круче. Прослеживается алгоритм. Можно блок-схему нарисовать.
0
Rustam4853
3 / 3 / 0
Регистрация: 31.03.2011
Сообщений: 20
31.03.2011, 19:51  [ТС] #7
Deviaphan, это смахивает на издевку ))) я же не настолько глуп ))) просто сегодня день был трудный (((( своей головой думать ооооочень не хочется )) а сделать надо )))
0
Deviaphan
Делаю внезапно и красиво
Эксперт С++
1306 / 1221 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
31.03.2011, 20:06 #8
Цитата Сообщение от Rustam4853 Посмотреть сообщение
это смахивает на издевку
Ну прости меня, abs.
0
Evg
Эксперт CАвтор FAQ
18248 / 6373 / 438
Регистрация: 30.03.2009
Сообщений: 17,643
Записей в блоге: 28
01.04.2011, 14:30 #9
Цитата Сообщение от alex_x_x Посмотреть сообщение
Deviaphan,
C
1
#define ABS( x ) ( x>0 ? x : -x )
В случае Си++ лучше не использовать макрос, ибо есть inline функции. Тем более, что этот макрос с побочными эффектами
0
silent_1991
Эксперт С++
4987 / 3044 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
01.04.2011, 16:12 #10
Evg, а этот ?
C
1
#define ABS(x) ((x) > 0 ? (x) : -(x))
0
slice
35 / 78 / 4
Регистрация: 04.11.2010
Сообщений: 249
01.04.2011, 16:14 #11
silent_1991
C++
1
ABS(v++)
*trollface*
2
silent_1991
Эксперт С++
4987 / 3044 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
01.04.2011, 16:15 #12
slice, да, действительно, об этом не подумал)))
0
Evg
Эксперт CАвтор FAQ
18248 / 6373 / 438
Регистрация: 30.03.2009
Сообщений: 17,643
Записей в блоге: 28
01.04.2011, 16:27 #13
*** del
Не заметил, что уже всё написали
1
alex_x_x
бжни
2450 / 1655 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
01.04.2011, 22:51 #14
Цитата Сообщение от Evg Посмотреть сообщение
В случае Си++ лучше не использовать макрос, ибо есть inline функции. Тем более, что этот макрос с побочными эффектами
ну про инлайн то понятно, а какие тут могут быть побочные эффекты?
0
silent_1991
Эксперт С++
4987 / 3044 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
01.04.2011, 22:56 #15
alex_x_x, один уже назвал slice. Другой был, полагаю, такой:
ABS(a - b) // a < b
По идее должно получиться b - a, но ваш вариант выдаст -a - b.
1
01.04.2011, 22:56
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.04.2011, 22:56
Привет! Вот еще темы с ответами:

Определить произведение наибольшего и наименьшего числа, их абсолютное значение - C++
Прошу помощи в написании этих заданий :( Задание 1. Напишите программу, которая считывает пять отрицательных чисел, определяет и...

Заменить все отрицательные элементы массива на их абсолютное значение - C++
Дан двумерный массив вещественных чисел размерностью M*N. Заменить все отрицательные элементы массива на их абсолютное значение, а все...

Определить, какое абсолютное значение встречается в массиве чаще остальных - C++
Определить, какое абсолютное значение встречается в массиве чаще остальных Размерность массива=200 Диапазон значений от -50 до 50

Функция возвращающая абсолютное разницу первого и второго параметров и функция типа int, возвращающая минимальное из трех целых чисел - C++
Разработать заданные согласно условия функции и сделать в главной программе по два вызова этих функций с различными параметрами. Для...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

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