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

ПОМОЧЬ отсортировать массив по количеству бит, равных 0 (в двоичной форме) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Написать класс сверхбольших целых чисел http://www.cyberforum.ru/cpp-beginners/thread734059.html
помогите разобраться пожалуйста, буду благодарен за любую помощь, очень нужно решить к зачёту 1. Написать класс сверхбольших целых чисел (нет ограничений на количество цифр) использовать массив...
C++ Решить СЛАУ методом Гаусса (проверить) Есть код!компилируется без ошибок.Задача программы решить СЛАУ методом Гаусса Но я не понимаю почему вывод информации осуществляется некорректно, ребят помогите разобраться пожалуйста! #define N... http://www.cyberforum.ru/cpp-beginners/thread734051.html
C++ Массивы:многомерный и одномерный (заменить нулями все отрицательные числа выше главной диагонали)
Вот массив номер 1 (многомерный) тут задача была заменить нулями все отрицательные числа выше главной диагонали И найти место максимума среди чисел ниже побочной диагонали #include <iostream> using...
В заданной матрице заменить К-ю строку и L-й столбец нулями, кроме элемента, расположенного на их пересечении C++
В заданной матрице заменить К-ю строку и L-й столбец нулями, кроме элемента, расположенного на их пересечении.
C++ Разделить строку strtok http://www.cyberforum.ru/cpp-beginners/thread734044.html
Есть строка: str = "aaa;bbb;ccc;;ddd"; Если ее разделять при помощи strtok(), то функция проигнорирует вторую точку запятой (ccc;;ddd) и в итоге, допустим, в массиве mas будет только 4...
C++ Обращение ко второму элементу массива указателей на строки Добрый день. Не получается обратиться ко второму элементу: #include <stdio.h> int main(void) { char **ss = { "Run away", "Peace to all", NULL }; подробнее

Показать сообщение отдельно
OstapBender
583 / 522 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
17.12.2012, 01:41
тебе нужно просто условие if (a[j+1]<a[j]) поменять на другую проверку, допустим так:
C++
1
if (w(a[j+1])<w(a[j]))
где
C++
1
2
3
4
5
6
7
8
9
10
int w(int v) {
 
    int s = 0;
 
    for (int i=0; i<sizeof(v)*8; i++)
        s += (((1<<i)&v) == 0 ? 0 : 1);
 
    return s;
 
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru