Определение четности числа в Python
Для того чтобы определить четное число введено или нет в Python необходимо воспользоваться оператором «Остаток деления» и написать условие.
Оператор вычисления остатка от деления
В языке программирования Python, также как и в других языках программирования, есть команда — оператор (%), который вычисляет остаток от деления на число. Приведем примеры:
4 % 2 >>>0 5 % 2 >>>1 20 % 10 >>>0 25 % 10 >>>5
При делении числа 4 на 2 — остаток 0. При делении числа 5 на 2 — остаток 1. При делении числа 20 на 10 — остаток 0. При делении числа 25 на 10 — остаток 5.
Определения четности числа с помощью оператора остатка от деления
Мы знаем, что при делении четного числа на 2 у нас в остатке остается 0. Поэтому для определения четного и нечетного числа можем воспользоваться оператором остатка от деления. Напишем для этого условие:
a = 5 if a % 2 == 0: print('Четное число') else: print('Нечентное число') >>> Нечетное число
В начале присваиваем переменной a число, четность которого хотим проверить. Далее пишем условие: если остаток деления переменной a на 2 равно 0, то вывести на экран «Четное число», в противном случае вывести «Нечетное число».
При запуске написанного кода, мы увидим «Нечетное» число.
Написание функции для определения четности числа
Можем написать функцию, которая на входе будет получать число, а на выходе выводить на экран «Четное число» или «Нечетное число» в зависимости от четности полученного числа.
def even_or_odd(a): if a % 2 == 0: print('Четное число') else: print('Нечентное число') even_or_odd(10) >>> Четное число even_or_odd(11) >>> Нечетное число
Разберем написанный код. В первой строке мы объявляем новую функцию. Назовем её even_or_odd. Функция на входе будет получать одно число. Далее она проверяет это число на остаток от деления на 2 и выводит на печать «Четное число» или «Нечетное число». Условие, которое написано в функции мы рассмотрели уже ранее.
Как видим, определить четность числа — это довольно простая задача, которая быстро решается с помощью оператора остатка от деления (%).
Проверить четность количества единиц в числе представленного в двоичной форме
Вот такая задачка. Есть число, нужно проверить четность/нечетность количества разрядов в числе, имеющих значения 1. Сдвинуть и посчитать, проблем не составляет, но, хотелось бы обойтись «малой кровью» т. к. программка тестирует разрабатываемый в учебных целях микропроцессор. Если есть команда, делающая эту операцию для любого живого контроллера, был бы идеальный вариант.
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

Дано 3 числа в двоичной системе счисления. Определить, в каком числе число единиц больше
Дано 3 числа в двоичной системе счисления. Определить, в каком числе число единиц больше.

Определения количества единиц в числе
Как решить? Вводится число n. Определить количество единиц в записи числа n.

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

Подсчет количества единиц в двоичном числе
Дано 4 числа в разных системах счисления. Нужно 1. Перевести число в двоичную систему счисления.
6. Чётные числа в двоичной системе всегда оканчиваются на 0, а нечётные – на 1.
Например: 6210=1111102 5310=1101012 7. Числа вида 2 k записываются в двоичной системе как единица и k нулей. Например: 12810=2 7 =100000002 8. Числа вида 2 k -1 записываются в двоичной системе как k единиц. Например: 25510=256-1=2 8 -1=111111112 9. Если известна двоичная запись числа N, то двоичную запись числа 2*N можно получить, приписав в конец 0 (нуль). Например: 710=1112 ; 2*710=1410=11102; 2*1410=2810=111002 10. Отрицательные числа в ЭВМ представляются в обратном и дополнительном кодах. При выполнении арифметических операций в ЭВМ применяют специальные коды для представления чисел: прямой, обратный и дополнительный коды чисел. Прямой код двоичного числа – это само двоичное число. Обратный код положительного числа совпадает с прямым, а при записи отрицательного числа все его цифры, кроме цифры, изображающей знак числа, заменяются на противоположные (0 заменяется на 1, а 1 – на 0). Пример: Дано число X=-1011. Перевести число в обратный код. Хобр=1.0100 Дополнительный код положительного числа совпадает с прямым, а код отрицательного числа образуется как результат увеличения на 1 его обратного кода. Пример: Дано число X=-1011. Перевести в дополнительный код. Хдоп=1.0101
11. Варианты заданий с решением
1. Дано:
,
. Какое из чисел С, записанных в двоичной системе счисления, удовлетворяет неравенству
? 1) 1010101022) 1011110023) 1010001124) 101011002Решение:При переводеaиbв двоичное представление, получим:a=AA16 =101010102 ,b=2558 =101011012 . Отсюда следует, что подходит значение 101011002,Ответ:4 2. Чему равна сумма чисел 718 и 1F16? 1) 7782) 11111123)BB164) 8810Решение:Надо представить числа в двоичном виде и поразрядно сложить: 718=1110012каждая цифра в 8-ой системе представляется 3-мя битами, 1F16=111112каждая цифра в 16-ой системе представляется 4-мя битами.(Представление 8-х и 16-х чисел в двоичном виде надо знать!) 111001 + 11111 ____________ 1011000 Полученное двоичное число представим в 8-м и 16-м виде: 10110002=5816=1308 =8810. Ответ:4 3. Для передачи по каналу связи сообщения, состоящего только из символов А, Б, В и Г используется посимвольное кодирование: А-0, Б-11, В-100, Г-011. Через канал связи передается сообщение: ГБАВАВГ. Закодируйте сообщение данным кодом. Полученную двоичную последовательность переведите в восьмеричный код. 1) DBACACD2) 75043 3) 7A23 4) 3304043 Решение:Заменяя в сообщении буквы на соответствующий код, получим следующую последовательность: 0111101000100011. Разобьем эту последовательность на триады справа налево: 111 101 000 100 011, представив каждую триаду в виде 8-го числа, получим: 75043 Ответ:2 4. Укажите через запятую в порядке возрастания все десятичные числа, не превосходящие 26, запись которых в троичной системе счисления оканчивается на 22? Решение: Для решения задачи достаточно рассмотреть следующие числа в троичной системе счисления: 223, 1223, 2223 и перевести их в десятичную систему счисления: 223=2*3+2=810 1223=1*3 2 +2*3+2=1710 2223=1*3 2 +2*3+2=2610Ответ: 8, 17, 26 5. Сколько единиц в двоичной записи десятичного числа 513? 1) 5 2) 2 3) 3 4) 4 Решение: 513=512+1 => 512=2 9 = 10000000002 => 513= 10000000002 +1=10000000012Ответ: 2 6. Сколько значащих нулей в двоичной записи числа 254? 1) 1 2) 2 3) 4 4) 8 Решение: 254=255 — 1 => 255=2 8 -1=111111112 – 1=111111102Ответ: 1 7. Для хранения целого числа со знаком используется один байт. Сколько единиц содержит внутреннее представление числа (-78)? 1) 3 2) 4 3) 5 4) 6 Решение:
- переводим число 78 в двоичную систему счисления:
78 = 64 + 8 + 4 + 2 = 2 6 + 2 3 + 2 2 + 2 1 = 10011102
- по условию число занимает в памяти 1 байт = 8 бит, поэтому нужно представить число с помощью 8 разрядов, причем старший разряд — знаковый
- в прямом коде число будет представлено в виде:
110011102
- делаем инверсию битов (заменяем везде, кроме знакового разряда, 0 на 1 и 1 на 0) и получим число в обратном коде:
110011102 → 101100012
- добавляем к результату единицу и получим число в дополнительном коде:
101100012 + 1 = 101100102
- в записи этого числа 4 единицы
Ответ: 2 8. Запись числа 6710 в системе счисления с основанием N оканчивается на 1 и содержит 4 цифры. Чему равно основание этой системы счисления N? Решение 1: Начнем с двоичной системы. Для хранения числа 67 необходимо 7 цифр, т.к. 6410 в троичную систему. Но полный перевод делать не надо, т.к. нас интересует только первый остаток, на него и будет оканчиваться 67 в троичной системе. 67| 36 22 7 6 1 Остаток равен 1. Следовательно, и второе условие выполнено, поэтому троичная система подходит. Основание троичной системы равно 3. Ответ:3 Решение 2:Так как запись в системе счисления с основанием N заканчивается на 1, то остаток от деления числа 67 на N равен 1. Таким образом можно записать, что при некотором целом
:
Из последнего выражения видно, что N (основание системы счисления) является делителем числа 66. Делителями числа 66 являются следующие натуральные числа: 2, 3,6, 11, 22, 33, 66. Но нам известно, что запись числа содержит 4 цифры, то есть
Выпишем кубы и четвертые степени первых натуральных чисел, которые являются делителями числа 66:
Видно, что из этого списка только для числа N = 3 выполняется условие
. Таким образом, ответ – 3. Проверим это, переведя число 67 в троичную систему: 6710= 21113Ответ:3 9. Все 5-буквенные слова, составленные из букв А, О, У, записаны в алфавитном порядке. Вот начало списка: 1.ААААА 2.ААААО 3.ААААУ 4.АААОА …… Запишите слово, которое стоит на 240-м месте от начала списка. Решение: Из списка видно, что используются только символы: «А», «О», «У». Пусть «А»=0, «О»=1, «У»=2. Список после замены станет таким:
- 00000
- 00001
- 00002
- 00010
Видно, что это числа, идущие по порядку от нуля в троичной системе. В десятичной системе счисления список бы был таким: 0, 1 , 2, 3. Нам нужно найти, какое число будет стоять на 240 месте. Т.к. список чисел начинается с нуля, следовательно, нам нужно перевести число 239 в троичную систему счисления. Получим число: 222123. Переведем обратно в символы: УУУОУ. Ответ: УУУОУ 10. В таблице ниже представлена часть кодовой таблицы ASCII:
| Символ | 1 | 5 | A | B | Q | a | b |
| Десятичный код | 49 | 53 | 65 | 66 | 81 | 97 | 98 |
| Шестнадцатеричный код | 31 | 35 | 41 | 42 | 51 | 61 | 62 |
Каков шестнадцатеричный код символа “q” ? Решение: Q-A=81-65=16 => q-a=16 => q-97=16 => q=97+16=113 => 11310 =7116 113| 16112 7 1 Ответ: 71 11. Решите уравнение
. Ответ запишите в шестеричной системе счисления. Основание системы счисления указывать не нужно. Решение:Надо перевести все числа в десятичную систему, решить уравнение и результат перевести в шестеричную систему: 1) 
- из уравнения
получаем 
- переводим 15 в шестеричную систему счисления:

Ответ: 23 12. Запись десятичного числа в системах счисления с основаниями 3 и 5 в обоих случаях имеет последней цифрой 0. Какое минимальное натуральное десятичное число удовлетворяет этому требованию? Решение:если запись числа в системе счисления с основанием N заканчивается на 0, то это число делится на N нацело, поэтому в данной задаче требуется найти наименьшее натуральное число, которое делится одновременно на 3 и на 5, то есть это число15. Ответ:15 13. Укажите, сколько всего раз встречается цифра 2 в записи чисел 10, 11, 12, …, 17 в системе счисления с основанием 5. Решение (вариант 1):При решении задачи надо помнить, что в 5-ой системе счисления самая старшая цифра – 4. Запишем первое и последнее число в заданном диапазоне в системе счисления с основанием 5: 10 = 205, 17 = 325 . Оба они содержат цифру 2, так что, 2 цифры мы уже нашли. Между 205 и 325 есть еще числа: 215, 225, 235, 245, 305, 315. В них 5 цифр 2 (в числе 225 – сразу две двойки), поэтому всего цифра 2 встречается 7 раз. Ответ: 7 Решение (вариант 2): Можно перевести все указанные числа в систему счисления с основанием 5 и подсчитать количество 2: 10 = 205, 11 = 215, 12 = 225, 13 = 235, 14 = 245, 15 = 305, 16 = 315, 17 = 325 . Получается 7 штук. Ответ: 7 14. Укажите наименьшее основание системы счисления, в которой запись числа 30 трехзначна. Решение (вариант 1):Обозначим через
неизвестное основание системы счисления, тогда запись числа 30 в этой системе имеет вид:
Любое число в позиционной системе счисления можно представить в виде многочлена по основанию системы счисления:
По условию задачи запись числа трехзначная, т.е.
, поэтому:
Из неравенства видно, что подходят только два числа для N – 4 и 5: 
Минимальное из этих значений – 4. Ответ: 4 Решение (вариант 2):Так как число по условию трехзначное, то достаточно найти первое целое число, куб которого больше 30; это — 4, так как:
Так как
, следовательно, в системе счисления с основанием 4 запись числа 30 трехзначна. Ответ: 4 15. Укажите через запятую в порядке возрастания все десятичные числа, не превосходящие 30, запись которых в системе счисления с основанием 5 начинается на 3? Решение (вариант 1):Сначала определим, сколько цифр может быть в этих числах, записанных в системе счисления с основанием 5. Так как
, в интересующих нас числах может быть от 1 до 3 цифр. Трехзначные числа, начинающиеся на 3 в системе с основанием 5 можно представить:
Все они заведомо не меньше
, поэтому в наш диапазон не попадают. Таким образом, остается рассмотреть только однозначные и двухзначные числа. Есть всего одно однозначное число, начинающееся на 3, это 3. Общий вид всех двузначных чисел, начинающихся на 3 в системе с основанием 5:
, где
– целое число из множества (поскольку система счисления имеет основание 5 и цифр, больших 4, в записи числа быть не может). Используя эту формулу, находим интересующие нас двузначные числа – 15, 16, 17, 18 и 19. Ответ: 3, 15, 16, 17, 18, 19 Решение (вариант 2):Поскольку
, в интересующих нас числах может быть не более 2 цифр (все трехзначные пятеричные числа, начинающиеся с 3, больше 30). Есть всего одно однозначное число, начинающееся на 3, это 3. Выпишем все пятеричные двузначные числа, которые начинаются с 3, и переведем их в десятичную систему: 305= 15, 315= 16, 325= 17, 335= 18 и 345= 19. Ответ: 3, 15, 16, 17, 18, 19 16. Чему равно наименьшее основание позиционной системы счисления
, при котором 225x= 405y? Ответ записать в виде целого числа. Решение:Поскольку в левой и в правой частях есть цифра 5, оба основания больше 5, то есть перебор имеет смысл начинать с
. Для каждого «подозреваемого»
вычисляем значение
и решаем уравнение
, причем, нас интересуют только натуральные
. Для
и
нужных решений нет, а для
получаем
так что
. Ответ: 8 17. Даны 4 числа, они записаны с использованием различных систем счисления. Укажите среди этих чисел то, в двоичной записи которого содержится ровно 6 единиц. Если таких чисел несколько, укажите наибольшее из них. 1) 6310 * 4102) F816 + 1103) 33384) 111001112Решение:Нужно перевести все заданные числа в двоичную систему, подсчитать число единиц и выбрать наибольшее из чисел, в которых ровно 6 единиц. Для первого варианта переведем оба сомножителя в двоичную систему: 6310 = 1111112 410 = 1002 В первом числе ровно 6 единиц, умножение на второе добавляет в конец два нуля: 6310 * 410 = 1111112 * 1002 = 111111002 то есть в этом числе 6 единиц. Для второго варианта воспользуемся связью между шестнадцатеричной и двоичной системами счисления: каждую цифру шестнадцатеричного числа можно переводить отдельно в тетраду (4 двоичных цифры): F16 = 11112 816 = 10002 F816 = 1111 10002 после добавления единицы F816 + 1 = 1111 10012 также получаем число, содержащее ровно 6 единиц, но оно меньше, чем число в первом варианте ответа. Для третьего варианта используем связь между восьмеричной и двоичной системами: каждую цифру восьмеричного числа переводим отдельно в триаду (группу из трёх) двоичных цифр: 3338 = 011 011 0112 = 110110112 это число тоже содержит 6 единиц, но меньше, чем число в первом варианте ответа. Последнее число 111001112 уже записано в двоичной системе, оно тоже содержит ровно 6 единиц, но меньше первого числа Таким образом, все 4 числа, указанные в вариантах ответов содержат ровно 6 единиц, но наибольшее из них – первое Ответ: 1 18. Даны 4 целых числа, записанные в двоичной системе: 10001011, 10111000, 10011011, 10110100. Сколько среди них чисел, больших, чем А416 +208? 1) 1 2) 2 3) 3 4) 4 Решение:Надо перевести А416+208 в двоичную систему счисления, разложив их по тетрадам для 16-х чисел и по триадам для 8-х чисел: А416— 101001002и 208— 100002и поразрядно сложить: 101001002+ 100002= 101101002. Сравнив с заданными числами, видим, что только одно число больше полученного, это: 10111000. Ответ: 1 19. Найти сумму восьмеричных чисел 178 +1708 +17008 +. +17000008, перевести в 16-ую систему счисления. Найдите в записи числа, равного этой сумме, третью цифру слева. Решение:Несложно выполнить прямое сложение восьмеричных чисел, там быстро обнаруживается закономерность: 178+ 1708= 2078178+ 1708+ 17008= 21078178+ 1708+ 17008+ 170008= 211078178+ 1708+ 17008+ 170008+ 1700008= 2111078178+ 1708+ 17008+ 170008+ 1700008+ 17000008= 21111078 Переведем последнюю сумму через триады в двоичный код (заменяем каждую восьмеричную цифру на 3 двоичных): 100010010010010001112 Теперь разбиваем цепочку на тетрады (группы из 4-х двоичных цифр), начиная справа, и каждую тетраду представляем в виде шестнадцатеричной цифры 8924716 Третья цифра слева: 2. Ответ: 2 20. В системе счисления с некоторым основанием число 17 записывается в виде 122. Укажите это основание. Решение: Обозначим искомое основание системы счисления через x, тогда можно записать выражение: 17 = x 2 +2 x+2 или x 2 +2 x-15 = 0. Решив это уравнение, получим x=3. Ответ: 3
по информатике задали ответить с доказательством: когда двоичное число четное
Двоичное число четное тогда и только тогда, когда оно заканчивается на 0.
Доказательство: Представим, что имеется двоичное число вида ХХ(. )У, где Х и У — 1 или 0. Когда мы будем переводить его в десятичную систему счисления, все Х будут записаны как 2^K * X, где K — число символов, стоящих в строке после Х. Как видно, это четное число, а сумма четных чисел всегда четна. Теперь посмотрим на последнюю цифру числа ХХ(. )У. У нужно умножать на 2^0, что равно 1. Значит, если У = 1, в сумму четных чисел попадет одно нечетное, что сделает их сумму нечетной, значит и исходное число будет нечетным, а если У=0, сумма останется четной.
- Связаться с нами
- Правила проекта
- Лицензионное соглашение
- Политика конфиденциальности
