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

Поразрядные операции - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Генератор паролей (нужна проверка) http://www.cyberforum.ru/cpp-beginners/thread390056.html
Здравствуйте. Написал простенький генератор паролей задаваемой пользователем длины. Все вроде правильно работает, просто, пожалуйста, посмотрите и скажите, где и почему я мудак. Особое внимание, пожалуйста, обратите на работу с динамическим выделением памяти. Большое спасибо. class PasswordGenerator { public: void askParameters(); void generate(); void output();
C++ сформировать матрицу Здравствуйте товарищи! Нужно сформировать матрицу В(4х4) из матрицы А (4х4), заменив элементы главной и побочной диагоналей матрицы А на элементы умноженные на сумму всех элементов. Заранее спасибо) http://www.cyberforum.ru/cpp-beginners/thread390054.html
C++ Упорядочивание массива
Что не так?((( #include <iostream> using namespace std; int main() { int n,i,j,c; int a={}; cout<<"vvedi kolichestvo elementov"<<endl; cin>>n; cout<<"vvedi elementi massiva"<<endl;
По результатам лыжных соревнований в трех группах сформировать сборную команду из 7 человек C++
По результатам лыжных соревнований в трех группах сформировать сборную команду из 7 человек
C++ Кто может написать коды этих задачек? http://www.cyberforum.ru/cpp-beginners/thread390014.html
пожалуйста, напишите коды этих задачек: 1) Задан массив из k чисел. Отсортировать элементы массива по возрастанию 2) Задана матрица размером NxM. Получить массив B, присвоив его k-му элементу значение 1, если k-я строка матрицы симметрична, и значение 0 - в противном случае. 3) Дана строка, состоящая из групп нулей и единиц. Подсчитать количество символов в самой длинной группе. 4) Для...
C++ Работа с базой данных SQLITE3 [Русские символы] Здравствуйте. Есть программа: #include <stdio.h> #include <stdlib.h> #include "sqlite3.h" int main() { sqlite3* db; int rc; подробнее

Показать сообщение отдельно
mrd
1 / 0 / 0
Регистрация: 05.10.2010
Сообщений: 22
23.11.2011, 18:00     Поразрядные операции
Даны два int-числа: N1 = ABCD и N2 = EFGH, где AB…GH – 16 – ричные цифры. Образовать long-число DEGHDABF, используя только поразрядные операции. В подчеркнутых цифрах вычислить количество битов ‘1’.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
long num(int n1, int n2);
 
int main()
{
        int n1, n2;
        long n;
        printf("Input two numbers n1 and n2: \t");
        scanf("%x%x", &n1, &n2);
        n = num(n1, n2);
        printf("n = %lx\n", n);
        getch();
        return 0;
}
 
long num(int n1, int n2)
{
        long n=0x0, AB, D, E, GH, F;
        AB = (n1 >> 8) & 0xFF;
        D = n1 & 0xF;
        E = (n2 >> 12) & 0xF;
        F = (n2 >> 8) & 0xF ;
        GH = (n2 & 0xFF);
        n = n | (D << 4*7);
        n = n | (E << 4*6);
        n = n | (GH << 4*4);
        n = n | (D << 4*3);
        n = n | (AB << 4);
        n = n | F;
        return n;
}
Число я нашел. Как посчитать количество битов = 1 в подчеркнутом числе?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 10:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru