С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
Zver6233
36 / 36 / 18
Регистрация: 21.06.2013
Сообщений: 271
Записей в блоге: 1
1

Что это значит if (x&1) ?

04.12.2014, 00:03. Просмотров 1300. Ответов 4
Метки нет (Все метки)

основным вопросом есть if (x&1) что это за условия? и что это? x>>1.
какая роль в коде?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
unsigned long long  m_recursive (unsigned long long  a, unsigned long long  x, 
unsigned long long  n)
{
   unsigned long long   tmp;
   if (x==1)   return  a%n;
   if (x&1)
      {
    tmp = m_recursive (a, x>>1, n);
    tmp = (tmp*tmp)%n;
    return   (tmp*a)%n;
      }
   else
      {
    tmp = m_recursive (a, x>>1, n);
    return  (tmp*tmp)%n;
      }
}
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.12.2014, 00:03
Ответы с готовыми решениями:

Parse_matrix(std::istream& in); std::istream& in что это значит?
Есть функция которую необходимо описать: std::pair<int, int>...

объясните пожалйста что вот это значит: a[1]=COD[input&0x0f]; b[0]=COD[(input>>4)&0x0f];???
Доброй ночи);) char COD={0b00000000, 0b00001011, 0b00010110, 0b00011101, ...

Что значит & на конце параметра в функции?
void process_array (IntArray&); Если здесь идет обращение к адресу объекта в...

Что это значит?
Что значит условие (!a)?В каком случае будет выполняться правда? if(!a) {...

a=*b Что это значит?
Подскажите пожалуйста!

4
Jewbacabra
Эксперт PHP
3595 / 2983 / 1325
Регистрация: 24.04.2014
Сообщений: 9,041
04.12.2014, 00:19 2
http://msdn.microsoft.com/ru-ru/library/17zwb64t.aspx
http://msdn.microsoft.com/ru-ru/library/f96c63ed.aspx
1
SlavaSSU
217 / 162 / 47
Регистрация: 17.07.2012
Сообщений: 587
04.12.2014, 00:22 3
роль кода - бинарное(быстрое) возведение в степень(по модулю)
0
Zver6233
36 / 36 / 18
Регистрация: 21.06.2013
Сообщений: 271
Записей в блоге: 1
04.12.2014, 00:23  [ТС] 4
&умножения бит?

Добавлено через 28 секунд
Цитата Сообщение от SlavaSSU Посмотреть сообщение
роль кода - бинарное(быстрое) возведение в степень(по модулю)
роль знаю
0
Cookie Monster
16 / 16 / 6
Регистрация: 03.11.2014
Сообщений: 71
04.12.2014, 07:22 5
Лучший ответ Сообщение было отмечено SatanaXIII как решение

Решение

x&1 - грубо говоря это проверка на четность.
1 = 0...01 поэтому определяющим результат побитового умножения будет младший разряд т.к. нули во всех разрядах кроме младшего у 1 дадут результат побитового умножения на соответствующий разряд переменной х, независимо от того что в нем находится, результат равный 0
Пример :
11001011
&
00000001
=
00000001
или
01010110
&
00000001
=
00000000
Для более разжеванного ответа почитайте главу про побитовые операции в любой книге
Хотя даже в приведенных выше ссылках на МДСН есть вся необходимая информация
0
04.12.2014, 07:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.12.2014, 07:22

что это значит?
в задании есть такой фрагмент if(!(num%div)) что это означает?

Что это значит?
Скажите, пожалуйста, что значит эта строка?

что это значит?
Помогите, пожалуйста, разобраться в данном фрагменте программы) char*...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru