Поле Тип Примечание
Фамилия текст
Имя текст текст
Пол текст текст м или д
Год рождения число
Вес число число
Рост число
Увлечение текст
Как следует записывать условие отбора при фильтрации, которое позволит сформировать список девушек для участия в конкурсе красоты в июне 2016 г.? (Отбираются девушки, имеющие рост более 174 см и возраст не менее 17 лет.)
ответы
1 Пол =”м” И Рост > 174 И Год рождения = 2003.
2 Пол =”м” ИЛИ Рост > 174 И Год рождения < 2000.
3 Пол =”д” И Рост > 174 И Год рождения < 2000.
4 Пол =”д” ИЛИ Рост > 174 ИЛИ Год рождения < 2000.
(a mod 2)+(b mod 2) = 1
ОБЪЯСНЕНИЕ:
Оператор mod возвращает остаток от целочисленного деления операндов.
a mod 2 будет равно нулю, если a четное или единице, если а нечетное. То же верно и для b mod 2. Рассмотрим поведение суммы (a mod 2)+(b mod 2) при различных комбинациях a и b
1. Оба нечетных. Сумма равна 1+1, т.е. 2
2. Одно четное, другое нечетное. Сумма равна 1+ 0 (или 0+1), т.е. 1
3. Оба четных. Сумма равна 0+0, т.е. 0.
Следовательно, сумма равна единице тогда и только тогда, когда одно из чисел четное, а другое нечетное.
Оставшаяся часть выражения превращает его в логическое, проверяя условие 1=1.
Предлагаемое логическое выражение может быть использовано как в качестве правой части оператора присваивания, так и в качестве логичесвого выражения в операторах if-then-else или циклов while, repeat.
Задача 1) 36 (это 24₁₆).
Задача 2) 38 (это 26₁₆).
Объяснение:
Задача 1)
24₁₆ = 36₁₀ (24₁₆ = 16¹ * 2 + 16⁰ * 4 = 32+4 = 36₁₀)
37₈ = 31₁₀ (37₈ = 8¹ * 3 + 8⁰ * 7 = 24 + 7 = 31₁₀)
100001₂ = 33₁₀ (100001₂ = 2⁵ * 1 + 2⁴ * 0 + 2³ * 0 + 2² * 0 + 2¹ * 0 + 2⁰ * 1 = 32 + 0 + 0 + 0 + 0 + 1 = 33₁₀)
36 < 33 < 31
Задача 2)
26₁₆ = 38₁₀ (26₁₆ = 16¹ * 2 + 16⁰ * 6 = 32+6 = 38₁₀)
41₈ = 33₁₀ (41₈ = 8¹ * 4 + 8⁰ * 1 = 32+1 = 33₁₀)
100011₂ = 35₁₀ (100011₂ = 2⁵ * 1 + 2⁴ * 0 + 2³ * 0 + 2² * 0 + 2¹ * 1 + 2⁰ * 1 = 32 + 0 + 0 + 0 + 2 + 1 = 35₁₀)
38 < 35 < 33