Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Показать сообщение отдельно
abit
272 / 271 / 83
Регистрация: 03.02.2013
Сообщений: 770
19.12.2013, 04:21

Как определить сколько единиц в двоичном коде символа? - C++

19.12.2013, 04:21. Просмотров 2574. Ответов 13
Метки (Все метки)

Цитата Сообщение от Виктор Яловой Посмотреть сообщение
Я конечно извиняюсь, но я знаком только с С, С++ только начал изучать.
Можно ли построчно объяснить этот код?
конечно можно, не вопрос) учите C++
давайте разберём код
первая строчка - std::size_t F(unsigned long long n)
http://www.cyberforum.ru/cpp-beginners/thread52138.html
объявляем функцию F, которая возвращает некое значение типа std::size_t (почитайте про него сами, суть - тип, который позволяет возвращать количество чего-то, допустимый в нашей системе, в нашем случае количество единичных бит в битовом представлении числа)
unsigned long long - наиболее длинный тип о котором мне известно под различными платформами, где имеет смысл говорить о битовом представлении, конечно в знаковых тоже имеет смысл говорить, но это совсем другая история

вторая строчка - std::size_t i(0);
тут всё ясно - инициализируем переменную, которую потом возвратим в ответ на вызов F, вызываем конструктор, чтобы её обнулить (на всякий случай, реально - тут это не надо, ибо конструктор по умолчанию обнулит)

третья строчка - for (;n;++i) n&=n-1;
ну это сама суть происходящего, разберите на досуге
если раскрыть в псевдокод (а точнее в паскаль) то будет что-то типа такого:
Delphi
1
2
3
4
5
while(n<>0) do
begin
  n:=n AND (n-1);
  inc(i);
end;
в общем это суть моей идеи) разберитесь и всё будет ясно
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.12.2013, 04:21
Темы с ответами и решениями для C++ Как определить сколько единиц в двоичном коде символа?:

Определить, каких цифр больше в двоичном представлении натурального числа N-нулей и единиц
Определить, каких цифр больше в двоичном представлении натурального числа...

Определить, каких цифр больше в двоичном представлении натурального числа N – нулей или единиц
Определить, каких цифр больше в двоичном представлении натурального числа N –...

Как представить int в двоичном коде
Всем привет! У меня задание подсчитать сколько единиц в бинарном числе,...

Представить число в двоичном коде и в коде Грея
Всем доброго вечера) у меня такая просьба, помогите написать программу по коду...

0
Как определить сколько единиц в двоичном коде символа? C++   Следующее сообщение темы 
Другие темы раздела
C++ Комментирование текста с++ http://www.cyberforum.ru/cpp-beginners/thread1047899.html
как закоментировать блок текста в с++. Кроме //.
C++ Посчитать сумму ряда (Начало и n интервала вводит пользователь) Например: если начало интервала 3 и n=4 то программа считает 3+4+5+6=18. http://www.cyberforum.ru/cpp-beginners/thread1047881.html
метод прямоугольников C++
помогите пожалуйста написать код программы. Составить алгоритм и записать программу, которая выполняет итерационной алгоритм метода прямокутникив, с исчислением интеграла к заданной точности e...
Даны матрицы А(4,3) и В(3,5). Для каждой матрицы вычислить сумму элементов над главной диагональю. Ввод,вывод,сумму в виде отдельных процедур C++
Завтра дедлайн, а у меня 2 лабы и начало первого. Прошу помощи.
C++ Сортировка столбцов двумерного массива при помощи функции http://www.cyberforum.ru/cpp-beginners/thread1047872.html
Опишите функцию сортировки элементов линейного массива. С помощью этой функции составьте программу, которая упорядочивает по убыванию элементы столбцов двухмерного массива. Помогите с кодом.
C++ невозможно преобразовать int в int #include <iostream> #include <conio.h> using namespace std; int sum(int arr, int size) { int r = 0; // r - результат for(int i = 0; i < size; i++) { r = r+arr; подробнее
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru