Задачи на ветвление 1. Дано действительное число К. Определить принадлежит ли данное число
отрезку [A,B]
2. Определите, является ли натуральное число хкратным натуральному
числу а, вводимому с клавиатуры.
3. Даны два действительных числа X и Y, не равные друг другу. Заменить
меньшее из этих чисел половиной их суммы, а большее — их удвоенным
произведением.
4. Составить программу определения минимума (максимума) из трёх чисел.
5. Разработать программу для подсчета количества отрицательных чисел среди целых чисел a,b,c
Вход G(5), вызов F(4)+2G(4)
Вход F(4), вызов 2F(3)-G(3)
Вход F(3), вызов 2F(2)-G(2)
Вход F(2), вызов 2F(1)-G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(2), вызов F(1)+2G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(3), вызов F(2)+2G(2)
Вход F(2), вызов 2F(1)-G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(2), вызов F(1)+2G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(4), вызов F(3)+2G(3)
Вход F(3), вызов 2F(2)-G(2)
Вход F(2), вызов 2F(1)-G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(2), вызов F(1)+2G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(3), вызов F(2)+2G(2)
Вход F(2), вызов 2F(1)-G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(2), вызов F(1)+2G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход F(5), вызов 2F(4)-G(4)
Вход F(4), вызов 2F(3)-G(3)
Вход F(3), вызов 2F(2)-G(2)
Вход F(2), вызов 2F(1)-G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(2), вызов F(1)+2G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(3), вызов F(2)+2G(2)
Вход F(2), вызов 2F(1)-G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(2), вызов F(1)+2G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(4), вызов F(3)+2G(3)
Вход F(3), вызов 2F(2)-G(2)
Вход F(2), вызов 2F(1)-G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(2), вызов F(1)+2G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(3), вызов F(2)+2G(2)
Вход F(2), вызов 2F(1)-G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(2), вызов F(1)+2G(1)
Вход F(1), результат 1
Вход G(1), результат 1
-14
Если в N было четное количество единиц, то дописывается ноль. Поскольку ноль не меняет количества единиц, второй бит четности тоже будет нулевым. Правило №1: Если в двоичном представлении четное количество единиц, то дописывается 00.
Если в N было нечетное количество единиц, то дописывается единица. Это меняет количество единиц на четное, поэтому второй бит четности будет нулевым. Правило №2: Если в двоичном представлении нечетное количество единиц, то дописывается 10.
Первое число R, большее 180, это 181. Переведем его в двоичную систему счисления.
181₁₀ = 10110101₂
Мы видим, что оба наших правила нарушены, т.е. число 181 не подходит в качестве R.
Представление N (101101) содержит четное количество единиц, а для четного количества действует Правило №1 и мы должны записать 00, что уменьшит наше минимально возможное число R=181₁₀
Но если мы в числе N поменяем местами два правых бита, получим число 101110, которое больше чем 101101 и теперь по все тому же Правилу №1 мы получаем право приписать два нолика и получить R=10111000₂ = 184₁₀