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

Инвертирование группы бит. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Определить, сколько в текстовом файле слов, состоящих не более чем из четырех букв http://www.cyberforum.ru/cpp-beginners/thread521500.html
Помогите написать программу, которая считывает текст из файла и определяет, сколько в нем слов, состоящих из не более чем четырех букв. Только в функции. Буду очень благодарен.
C++ Вычислить математическое ожидание, дисперсию и среднеквадратичное отклонение случайной величины Пусть массив X(N) - массив возможных значений некоторых случайных величин. Составить подпрограмму, которая вычисляет математическое ожидание (Mx), дисперсию (Dx) и среднеквадратичное отклонение (Fx) случайной величины X. M_x= \frac{\sum \limits_{i=1}^{N} X_i}{N} \qquad D_x=\frac{\sum \limits_{i=1}^{N} (X_i-M_x)^2}{N} \qquad F_x=\sqrt{D_x} Для передачи имени массива в подпрограмму ... http://www.cyberforum.ru/cpp-beginners/thread521494.html
Помогите организовать односвязный список! C++
Ребят, помогите пожалуйста организовать односвязный список и вывести его на экран... Вот пример той программы,которую я пытаюсь написать, только вот ничего у меня не получается с организацией и выводом... #include<iostream> #include<conio.h> #include<string.h> #include<stdlib.h> #include<stdio.h> #include<windows.h> using namespace std; struct sportsmen
C++ с++ , курсач, почнительная записка, Rational Roze.
Кто-нибудь делаал курсач по программированию?Я делаю в первый раз. нужна помощь в 4 задании и диаграммой в программе Rational Roze. Вот мой готовый курсач. Кто сможет, то помогите пожалуйста. http://www.cyberforum.ru/cpp-beginners/thread521184.html
C++ Цикл http://www.cyberforum.ru/cpp-beginners/thread521477.html
#include "stdafx.h" #include "conio.h" #include <iostream> #include <fstream> #include <string> using namespace std; struct main_file { int kc; int ku; int tn;
C++ как реализовать программу записная книжка на си++? Фамилия (ключевое поле, имеет уникальные, неповторяющиеся значения), Дата рождения (поле используется для отбора элементов), Номер телефона, Адрес. подробнее

Показать сообщение отдельно
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9372 / 5422 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
18.03.2012, 19:05     Инвертирование группы бит.
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
31
32
33
34
35
#include <stdio.h>
#include <limits.h>
#include <math.h>
 
#ifndef LONG_BIT
#define LONG_BIT ( sizeof(long) * CHAR_BIT )
#endif
 
char * binstr(const unsigned long x){
    static char buf[LONG_BIT + 1] = { 0 };
    size_t i = LONG_BIT;
    char * p = buf;
    
    while ( i-- )
        *p++ = '0' + ( ( x >> i ) & 1 );
    
    return buf;
}
 
unsigned long invert(unsigned long x, size_t count, size_t pos){
    return x ^ ( (unsigned long)(pow(2.0, (double)count) - 1.0) << pos );
}
 
int main(void){
    unsigned long x;
    size_t pos, count;
    
    while ( printf("Number: ") && scanf("%lu", &x) == 1 && printf("Count: ") && scanf("%u", &count) == 1 && printf("Pos: ") && scanf("%u", &pos) == 1 && pos + count <= LONG_BIT ){
        printf("Before: %lu\t%s\n", x, binstr(x));
        x = invert(x, count, pos);
        printf("After:  %lu\t%s\n", x, binstr(x));
    }
    
    return 0;
}
 
Текущее время: 21:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru