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

Модульное деление на степень двойки - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ C++ почему прога вылетает, не успеваю посмотреть действие http://www.cyberforum.ru/cpp-beginners/thread718705.html
дан массив строк, если какая либо строка заканчивается буквой k, то удалить эту строку, вод что я написал: #include <iostream.h> #include <conio.h> #include <stdio.h> #include <math.h> #include <string> #define n 100 int main() {
C++ В n мерном массиве целых чисел, вычислить сумму отрицательных элементов массива, положительных, и упорядочить все элементы массива по возрастанию Ребят помогите решить! В n мерном массиве целых чисел, вычислить сумму отрицательных элементов массива, сумму положит элементов массива, и упорядотчить все элементы массива по возрастанию http://www.cyberforum.ru/cpp-beginners/thread718693.html
C++ Из чисел от 10 до 99 вывести те, сумма цифр которых равна n
Из чисел от 10 до 99 вывести те, сумма цифр которых равна n (n вводится с клавиатуры, n =< 18) Очень прошу. Заранее благодарен.
C++ CUDA C/C++ сложение векторов
вроде все так делаю, но не запускается не могу понять ошибку делаю с шаблона там просто надо заполнить недастоющие строчки вот шаблон // MP 1 #include <wb.h> __global__ void vecAdd(float * in1, float * in2, float * out, int len) { //@@ Insert code to implement vector addition here }
C++ Квадрат натурального числа n http://www.cyberforum.ru/cpp-beginners/thread718682.html
Проверить, содержит ли квадрат натурального числа n цифру 3 в своей записи. Большое спасибо заранее!
C++ Найти количество слов, у которых первый и последний символы совпадают между собой Помогите пожалуйста написать программу, никак разобраться не могу( подробнее

Показать сообщение отдельно
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335

Модульное деление на степень двойки - C++

04.12.2012, 14:30. Просмотров 2313. Ответов 25
Метки (Все метки)

Раньше я всегда использовал примерной такой подход :
C++
1
2
3
4
5
6
int mod = 8;
int a = 90412488;
char b = 113;
int modA, modB;
modA = a & int(mod-1);
modB = b & char(mod-1);
Понятное дело, что можно написать функцию, которая определала бы тип и была бы красивой оберткой для такого подхода, но мне хватало. Сейчас встал опять вопрос с модульным делением на 2^x. Я бы использовал этот подход, но кто-то как-то сказал мне, что такое решение в каких-то случаях выдает не верный результат или ошибки. Я напрочь забыл, кто это сказал :/
Вопрос : в чем плох такой подход и как правильно?
Скорее всего, компиляторы сами производят подобную оптимизацию, но всё же.
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru