Напишите программу, в которой у пользователя запрашивается возраст (например, для маркетингового исследования), а затем ему сообщают (через alert) к какой группе исследуемых он относится.
4 группы:
младше 17 -> группа 1
от 17, но не старше 37 -> группа 2
от 37, но не старше 52 -> группа 3
старше 52 -> группа 4
При однозначном декодировании в коде одного символа не должно быть дублирования(повторения) части кода другого символа.
Т.к. длина кода должна быть наименьшей, то начнем с длины кода =1.
Все возможные варианты: 0, 1.
Вариант 0 возможен.
Вариант 1 не возможен, т.к. он является частью кода А Б В Г
Возьмём длину кода =2.
Все возможные варианты: 00, 01, 10, 11.
Вариант 00 возможен.
Вариант 01 возможен.
Вариант 10 не возможен, т.к. он является частью кода А Б
Вариант 11 не возможен, т.к. он является частью кода В Г
Возьмём длину кода =3.
Все возможные варианты: 000, 001, 010, 011, 100, 101, 110, 111.
Варианты 000, 001, 010, 011 возможны.
Варианты 100, 101, 110, 111 не возможны, т.к. уже заняты другими буквами.
Из предложенных ответов есть 000.
Вариант 1111 можно не брать, т.к. получается, что В (111) это часть кода 1111, то есть код 1111 состоит из символа, закодированного единицей + В
РЕШЕНИЕ. Составим таблицу всех вариантов поклажи на животных:
№ варианта
А
Б
В
Г
Д
Е
Ж
З
Осёл
М
М
М
М
Ф
Ф
Ф
Ф
Козёл
М
М
Ф
Ф
М
М
Ф
Ф
Верблюд
М
Ф
М
Ф
М
Ф
М
Ф
По первому условию, если осёл перевозит финики, то козёл – масло. Это исключает варианты Ж и З.
По второму условию, если осёл перевозит масло, то верблюд – финики. Это исключает варианты А и В.
По третьему условию, если козёл перевозит финики, то верблюд – масло. Это исключает вариант Г.
№ варианта
Б
Д
Е
Осёл
М
Ф
Ф
Козёл
М
М
М
Верблюд
Ф
М
Ф
Проверяем оставшиеся варианты Б, Д, Е на наличие противоречий.
В варианте Б нет противоречий: и осёл, и козёл перевозят масло, а верблюд – финики. Это соответствует условию второму, где говорится: если осёл перевозит масло, то верблюд – финики. Условие первое сообщает: если на осле доставляют финики, то на козле – масло. Однако, если осёл не перевозит финики, то козёл должен перевозить либо финики, либо масло. Из условия третьего следует: если козёл тащит на себе финики, то верблюд – масло. Но если козёл не перевозит финики, то тогда верблюд может перевозить и финики, и масло.
В варианте Д нет противоречий: на осле доставляют финики, а на козле и верблюде – масло. По условию первому, если осёл тащит на себе финики, то козёл – масло. Раз осёл не перевозит масло, то, учитывая условие второе, верблюд может перевозить и масло, и финики. Раз козёл не перевозит финики, делаем вывод из условия третьего, что верблюд может перевозить и финики, и масло.
В варианте Е нет противоречий: и осёл, и верблюд перевозят финики, а козёл- масло. В условии первом говорится: если на осле доставляют финики, то на козле - масло. Т.к. осёл перевозит финики, а не масло, то делаем вывод из условия второго, что верблюд перевозит и то, и другое. Поскольку козёл перевозит масло, а не финики, точно так же можно предположить (исходя из условия третьего), что нет никакого противоречия в том, что верблюд перевозит финики.
Единственное животное, чья поклажа теперь известна наверняка, - козёл. Во всех трёх возможных ситуациях (Б,Д,Е) он перевозит только масло.