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

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

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

Показать сообщение отдельно
Пaтрик
396 / 389 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
17.12.2012, 07:50     ПОМОЧЬ отсортировать массив по количеству бит, равных 0 (в двоичной форме)
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
36
37
38
39
40
#include <iostream>
#include <iomanip>
#include <vector>
#include <limits>
#include <bitset>
#include <algorithm>
#include <ctime>
 
bool cmp(const unsigned char& a, const unsigned char& b)
{
    std::bitset<sizeof(unsigned char) * 8> bs_a(a);
    std::bitset<sizeof(unsigned char) * 8> bs_b(b);
    return (sizeof(unsigned char) * 8 - bs_a.count()) < (sizeof(unsigned char) * 8 - bs_b.count());
}
 
int main()
{
    std::vector<unsigned char>::size_type size;
    std::cout << "Size: ";
    std::cin >> size;
    std::vector<unsigned char> vec(size);
    std::srand(std::time(0));
    for (int i = 0; i < size; i++)
        vec[i] = rand() % std::numeric_limits<unsigned char>::max();
    std::sort(vec.begin(), vec.end(), cmp);
    std::cout << "x2\n";
    for (int i = 0; i < size; i++)
    {
        std::bitset<sizeof(unsigned char) * 8> bs(vec[i]);
        std::cout << bs.to_string() << ' ';
    }
    std::cout << "\n\nx10\n";
    for (int i = 0; i < size; i++)
        std::cout << (int)vec[i] << ' ';
    std::cout << "\n\nx16\n";
    for (int i = 0; i < size; i++)
        std::cout << std::setbase(16) << (int)vec[i] << ' ';
    std::cout << std::endl;
    return 0;
}
 
Текущее время: 03:54. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru