нужна программа на Pascal С клавиатуры вводятся натуральные числа, ввод заканчивается числом 0. Нужно вывести на экран эти числа в порядке возрастания.
Это сделает логическое выражение (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. После получения сообщения о номере пути был сделан выбор 1 из 8, т.е. неопределенность информации о номере пути уменьшилась в 8 раз. Логарифм по основанию 2 от 8 равен 3, следовательно мы получили 3 бита информации. 2. Если сообщение несет 4 бита информации, то неопределенность наших знаний о предмете сообщения уменьшилась в 2^4=16 раз. Если бы в коробке были одноцветные карандаши, неопределенность уменьшилась бы в 2^6=64 раза и мы бы получили 0 байт информации (если все карандаши белые, сообщение о вынутом белом карандаше не несет ничего нового). В нашем случае получено на 2 байта больше, следовательно белых карандашей 2^2=4 штуки.
(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.
2. Если сообщение несет 4 бита информации, то неопределенность наших знаний о предмете сообщения уменьшилась в 2^4=16 раз. Если бы в коробке были одноцветные карандаши, неопределенность уменьшилась бы в 2^6=64 раза и мы бы получили 0 байт информации (если все карандаши белые, сообщение о вынутом белом карандаше не несет ничего нового). В нашем случае получено на 2 байта больше, следовательно белых карандашей 2^2=4 штуки.