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

Среди простых чисел найти найти такое, в двоичной записи которого максимальное число единиц. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ошибка в перезагрузке http://www.cyberforum.ru/cpp-beginners/thread331069.html
Помогите пожалуйста найти ошибку. #include<iostream> using namespace std; class a {private: int b; double c; public: a():b(0),c(0.0)
C++ Подключение OpenCV к VS2010 Здравствуйте все, у меня первый проект, более менее серьезный, нужно работать с OpenCV, но как её можно подлючить к Студии 2010(конкретно к С++), может вопрос глуповатый, но пожалуйста поделитесь... http://www.cyberforum.ru/cpp-beginners/thread331065.html
Вычислить C++
Здравствуйете. Помогите пожалуйста написать программуна языке Си. Заключается вот в чем надо вычислить Прикрепляйте картинки к сообщениям.
C++ Как сделать чтобы программа не вылетала после однократного выполнения в консоли
Доброго времени суток! Подскажите пожалуйста,можно ли сделать так чтобы после проведения одного действия программа не вылетала,как обычно,а можно было бы делать это непрерывно,а для выхода просто...
C++ Вычислить сумму элементов, которые являются удвоенными нечетными числами http://www.cyberforum.ru/cpp-beginners/thread331035.html
помагите найти ошибки заранее благодарен. Задача:Дана прямоугольная матрица Аi,j (i=1,.n; j=1,m). Вычислить сумму элементов, которые являются удвоенными нечетными числами. #include <stdio.h>...
C++ Открыть текстовый файл и удалить 11 последних символов на каждой строке Помогите пожалуйста. Нужно открыть текстовый файл и удалить 11 последних символов на каждой строке. подробнее

Показать сообщение отдельно
xAtom
915 / 740 / 60
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
08.07.2011, 21:08
Вот функция выводит бинарно-еденичный максимум из указанного кол-во числа чисел.
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
#include <iostream>
#include <stdarg.h>
using namespace std;
 
// параметр size - указывает на кол-во параметров
int  bin_max(int size, ...) {
   va_list arg;
   va_start(arg, size);
   int a = 0, b = 0, cnt = 0, tmp = 0, n = 0;
   while(size--) {
       cnt = va_arg(arg, unsigned int);
       tmp = cnt;
       for(; cnt; cnt >>= 1) {
          if(cnt & 0x1)
              a++;
       }
       if(a > b) {
          b   = a;
          n   = tmp;
       }
       a = 0;
   }
   va_end(arg);
   return  n;
}
 
 
 
int main(void) {
 
   cout << bin_max(2,   255,16)               << endl;
   cout << bin_max(4,   300,200,128,30)   << endl;
   cout << bin_max(7,   8,1,2,9, 0, 7, 4)   << endl;
   cout << bin_max(3,   24, 32, 64)          << endl;
 
   cin.get();
   return 0;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru