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

Битовые операции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Быстрый ввод и вывод http://www.cyberforum.ru/cpp-beginners/thread924986.html
Добрый день. Прошу прощения за нубский вопрос, но все-таки... Хотелось бы узнать у гуру, какие операторы обеспечивают самый быстрой ввод и вывод в файл.
C++ Возможно ли работать с _CrtDumpMemoryLeaks() в MinGW? _CrtDumpMemoryLeaks() может работать в mingw или это только для студии? http://www.cyberforum.ru/cpp-beginners/thread924972.html
Шаблон функции, принимающей обычные массивы и объекты C++
Нужно чтобы функция одинаково хорошо принимала массив long и объект vector <string>, чтобы затем удалить повторяющиеся элементы, отсортировать и вернуть количество элементов в новом массиве. Как лучше всего обеспечить приём аргументов, итераторами? Программа: #include <iostream> #include <algorithm> #include <set> #include <vector> #include <iterator> using std :: cout; using std :: cin;...
C++ Класс вектор
Не могу разобраться с этим классом, прошу помощи и в объяснении(задание очень объёмное ещё), проблема с самим вектором тоже есть. Разработать класс вектор размерности n. Определить несколько конструкторов , в том числе и конструктор копирования. Реализовать методы для вычисления модуля вектора, скалярного произведения, сложения,вычитания, умножения на константу. Перегрузить операции сложения,...
C++ список (в программе обнуляются указатели на структуры) http://www.cyberforum.ru/cpp-beginners/thread924942.html
здравствуйте помогите найти ошибку, при возврате указателя на структуру из функции в функцию майн он обнуляется, это меня сбивает с толку разве указатель не сохраняет значение это же всего лишь адрес на объект вот код мною написанный #include<iostream> using namespace std; struct myst { char name; int money;
C++ Определить пересекаются ли окружности и найти среди них уединенные(в истории не нашел( ) Окружности задаются координатами X,Y их центров и радиусами R. Датчик случайных чисел вырабатывает характеристики N окружностей. Определить, имеются ли среди этих окружностей три попарно пересекающихся. Найти среди этих окружностей все уединенные. Добавлено через 6 минут Или киньте плиз ссылку с такой прогой)) подробнее

Показать сообщение отдельно
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
17192 / 5446 / 337
Регистрация: 30.03.2009
Сообщений: 14,778
Записей в блоге: 26
18.07.2013, 18:20     Битовые операции
Что-то мне кажется, что тут излишне сложные решения:

C
#include <stdio.h>
 
/* Оригинальная функция (для проверки) */
int func1 (int a, int value1, int result1, int result2)
{
  int b;
 
  if (a == value1)
    b = result1;
  else
    b = result2;
 
  return b;
}
 
/* Переписанная функция */
int func2 (int a, int value1, int result1, int result2)
{
  int b;
 
  /* Операция !x в Си всегда будет возвращать либо 1 (если x == 0),
   * либо 0 (если x !=0 ). Такой операцией мы легко вычислим признак,
   * равны между собой две переменные, или нет */
  int is_equal = ! (a - value1);
 
  /* А если на основании признака нужно вернуть первое или второе
   * значение, то это делается обычным взвешенным выражением,
   * коэффициэнты которого будут либо (1, 0), либо (0, 1) */
  b = is_equal * result1 + (1 - is_equal) * result2;
 
  return b;
}
 
int main (void)
{
  printf ("%d\n", func1 (5, 6, -1, 2));
  printf ("%d\n", func1 (5, 5, -1, 2));
 
  printf ("%d\n", func2 (5, 6, -1, 2));
  printf ("%d\n", func2 (5, 5, -1, 2));
 
  return 0;
}
Добавлено через 41 секунду
Ой я дятел.... условие невнимательно прочитал
 
Текущее время: 11:22. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru