Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 25.12.2012
Сообщений: 35
1

Создайте логическую функцию, которая принимает в качестве аргумента целое число и проверяет, является ли оно степенью двойки

15.02.2013, 09:35. Показов 1936. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
4. Создайте логическую функцию, которая принимает в качестве аргумента целое число и проверяет, является ли оно степенью двойки. Используя эту функцию, проверьте, являются ли степенями двойки числа 12, 8, 500, 1024.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.02.2013, 09:35
Ответы с готовыми решениями:

Создайте логическую функцию, которая принимает в качестве аргумента целое число и проверяет, является ли оно простым
3. Создайте логическую функцию, которая принимает в качестве аргумента целое число и проверяет,...

Создайте логическую функцию, которая принимает в качестве аргумента целое число и проверяет, является ли оно простым.
Создайте логическую функцию, которая принимает в качестве аргумента целое число и проверяет,...

Создайте логическую функцию, которая принимает в качестве аргумента число и проверяет, является ли оно автоморфным
5. Число называется автоморфным, если оно равно последним цифрам своего квадрата. Например,...

Создайте функцию, которая принимает в качестве аргумента целое число и возвращает число Люка с таким номером
1. Создайте функцию, которая принимает в качестве аргумента целое число и возвращает число Люка с...

10
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
15.02.2013, 10:50 2
C++
1
2
3
4
bool IsPrime(const int A)
{
    return (A>0)&&((A&(A-1))==0);
}
Использование сами прикрутите.
1
0 / 0 / 0
Регистрация: 25.12.2012
Сообщений: 35
15.02.2013, 17:42  [ТС] 3
можно поподробнее
0
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
15.02.2013, 18:05 4
Цитата Сообщение от Алекс090394 Посмотреть сообщение
можно поподробнее
Что конкретно?
0
0 / 0 / 0
Регистрация: 15.02.2013
Сообщений: 3
15.02.2013, 22:31 5
поясните пожалуйста вот этот момент -
(A&(A-1))
что тут происходит?
0
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
15.02.2013, 23:11 6
Выполняется побитовое И для числа и "предыдущего" числа. Зачем и для чего надо объяснять?
0
0 / 0 / 0
Регистрация: 15.02.2013
Сообщений: 3
15.02.2013, 23:37 7
не понимаю почему один амперсанд, это тоже что и &&?
т.е. непонятно, что происходит в функции после &&, она вернёт истину если А>0 "И" а дальше непонятно
0
419 / 418 / 167
Регистрация: 28.11.2010
Сообщений: 1,183
15.02.2013, 23:43 8
Цитата Сообщение от looo Посмотреть сообщение
не понимаю почему один амперсанд, это тоже что и &&?
т.е. непонятно, что происходит в функции после &&, она вернёт истину если А>0 "И" а дальше непонятно
Почитайте про побитовые операции
1
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
15.02.2013, 23:50 9
looo,& - битовое И. && - логическое.
1
0 / 0 / 0
Регистрация: 15.02.2013
Сообщений: 3
16.02.2013, 00:54 10
Я въехал.
функция вернёт true, если число положительное и если при побитовом умножении числа и предыдущего числа будет ноль, что возможно только если это число - степень двойки.
Всем спасибо!
0
4311 / 1422 / 463
Регистрация: 16.12.2010
Сообщений: 2,939
Записей в блоге: 3
16.02.2013, 01:45 11
По сути и так бы сошло:
C++
1
2
3
4
inline bool isp(const int& x)
{
      return ((floor(log(x)/log(2)) == (log(x)/log(2))));
}
В студии без проблем проходит, но mingw вот отказывается.
Видимо, из-за округления.
http://liveworkspace.org/code/36fJcg$5
0
16.02.2013, 01:45
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.02.2013, 01:45
Помогаю со студенческими работами здесь

Написать функцию, которая принимает в качестве аргумента целое число по ссылке, и увеличивает его на единицу
Dev C++

Вводится число. Определить, является ли оно степенью двойки.
Вводится число. Определить, является ли оно степенью двойки. Необходимо использовать Операторы...

Дано целое число N (> 0). Проверить,является ли оно степенью числа 3. С++
Дано целое число N (> 0). Если оно является степенью числа 3, то вывести true, если не является —...

Составить функцию, которая, получив целое число определяет, уменьшается ли оно в целое число раз
задание такое Составить функцию, которая, получив целое число определяет, уменьшается ли оно в...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru