Найти - Пользователи
Полная версия: ПОМОГИТЕ пожалуйста нам задали задания по программировании. Я ничего не понимаю, помогите ,пожалуйста :(
Начало » Python для новичков » ПОМОГИТЕ пожалуйста нам задали задания по программировании. Я ничего не понимаю, помогите ,пожалуйста :(
1
Marisha_
№2
Двоичное число с чередующимися битами.
Программа получает на вход положительное целое число. Проверьте, есть
ли в нем чередующиеся биты: а именно, будут ли два соседних бита всегда
иметь разные значения.
Пример 1:
Вход: n = 5
Вывод: True (Истина)
Пояснение: Двоичное представление числа 5: 101.
Пример 2:
Вход: n = 7
Вывод: False (Ложь)
Пояснение: Двоичное представление числа 7: 111.
Пример 3:
Вход: n = 11
Вывод: False (Ложь)
Пояснение: Двоичное представление числа 11: 1011
Rodegast
 >>> def dz2(n):
>>>     data = bin(n)
>>>     return not ("00" in data or "11" in data)
 
>>> dz2(5)
 True
 
>>> dz2(7)
 False
 
>>> dz2(11)
False
py.user.next
  
>>> def f(n):
...     p = -1
...     while n > 0:
...         d = n & 0x1
...         if d == p:
...             return False
...         p = d
...         n >>= 1
...     return True
... 
>>> for i in range(65):
...     i, f(i), bin(i)
... 
(0, True, '0b0')
(1, True, '0b1')
(2, True, '0b10')
(3, False, '0b11')
(4, False, '0b100')
(5, True, '0b101')
(6, False, '0b110')
(7, False, '0b111')
(8, False, '0b1000')
(9, False, '0b1001')
(10, True, '0b1010')
(11, False, '0b1011')
(12, False, '0b1100')
(13, False, '0b1101')
(14, False, '0b1110')
(15, False, '0b1111')
(16, False, '0b10000')
(17, False, '0b10001')
(18, False, '0b10010')
(19, False, '0b10011')
(20, False, '0b10100')
(21, True, '0b10101')
(22, False, '0b10110')
(23, False, '0b10111')
(24, False, '0b11000')
(25, False, '0b11001')
(26, False, '0b11010')
(27, False, '0b11011')
(28, False, '0b11100')
(29, False, '0b11101')
(30, False, '0b11110')
(31, False, '0b11111')
(32, False, '0b100000')
(33, False, '0b100001')
(34, False, '0b100010')
(35, False, '0b100011')
(36, False, '0b100100')
(37, False, '0b100101')
(38, False, '0b100110')
(39, False, '0b100111')
(40, False, '0b101000')
(41, False, '0b101001')
(42, True, '0b101010')
(43, False, '0b101011')
(44, False, '0b101100')
(45, False, '0b101101')
(46, False, '0b101110')
(47, False, '0b101111')
(48, False, '0b110000')
(49, False, '0b110001')
(50, False, '0b110010')
(51, False, '0b110011')
(52, False, '0b110100')
(53, False, '0b110101')
(54, False, '0b110110')
(55, False, '0b110111')
(56, False, '0b111000')
(57, False, '0b111001')
(58, False, '0b111010')
(59, False, '0b111011')
(60, False, '0b111100')
(61, False, '0b111101')
(62, False, '0b111110')
(63, False, '0b111111')
(64, False, '0b1000000')
>>>
ZerG
py.user.next
Красвчик
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB