Дан код 44201 15262 11312 07071 и алфавит БЕЗ Ё (32 буквы) и они пронумерованы от 0 до 31 (а-0 б-1 в-2 и т.д.) и это предложение связано со словом энерджи
О преобразовании. Римские цифры это непозиционная система исчесления, то есть всё исчесление идет не от разряда цифры, как в обычной десятичной системе, а непосредственно по значению цифры. Цифр в римской системе всего 7 вот они:
Римская цифраДесятичный эквивалент
I1
V5
X10
L50
C100
D500
M1000
Из этих цифр и составляются все числа. Если цифра стоящая слева от данной цифры меньше её, то она вычитаеться из данной цифры (принцип вычитания) . Если больше то складывается (принцип сложения) . Например XLVII = XL (40 = 50 - 10) + V (5) + II (2) = 47. Но есть одно исключение. Если мы возьмем число 99 и попытаемся перевести, мы в лоб возьмем 100 (С) и вычтем из ста единицу, то есть получается IC. Удобно, компактно, но не правильно. В класической системе римских цифр число стоящее справа (то есть из которого вычитается) должно быть не больше чем, то что слева умноженное на десять. То есть то же число 99 надо переводить буквально XC(90 = 100 - 10) + IX (9 = 10 - 1) = XCIX. То есть 49 нельзя записывать как IL, только как LXIX. Есть ещё одно правило. Нельзя делать повторения четырёх цифр подряд (исключение составляет цифра четыре, которую изображают в часах как для лучшего восприятия) , то есть число 40 нельзя записывать как , а только как LX. Из всех этих правил вытекает, что максимальное число, которое можно записать римскими цифрами есть MMMCMXCIX = 3999. Но не стоит отчаиваться! Этруски, которые вроде бы придумали рисмские цифры, были умными ребятами и сделали хитро — число подчеркнутое палочкой сверху означает количество тысяч. То есть 4000 нужно записывать как IV. Всё просто.
Отсюда сразу вытекает алгоритм действия:
Если число больше или равно 4000 то делим нацело на 1000 и получаем количество тысяч, заосвываем их в этот же алгоритм, что бы вычислить как они выглядят в римских цифрах и их подчеркнуть сверху. И вычитаем из исходного числа эти тысячи.
Если меньше то
Берём разряд тысяч и переводим в римский эквивалент. Вычитаем их из числа.
Берём разряд сотен и переводим в римский эквивалент. Вычитаем их из числа.
Дальше также поступаем с десятками и единицами.
Повторяем все эти действия пока не вычтеться всё.
Ну и полученые цифрки выводим как положено - тысячи подчеркнутые сверху (если их много, если нет, то нужное количество М) и обычным стилем все остальные буквы которые у нас получились.
Коментарий к исходникам
Чуть ниже представлены ссылки на реализацию рассказанного здесь алгоритма. Хочется сказать про них пару слов.
Функция которая реализует непосредственно конвертацию называется digConvert() в которую передаётся целое число, а на выходе получается строка содержащая либо "err" в случае неудачно конвертации, либо строку с конвертированным римским числом. Если переданное число больше чем 3999, то в итоге получается число подчеркнутое сверху и часть которая неподчеркнута. Функция возвращает оба значения через амперсант (&). Это необходимо, что бы в функцие обработчике нажатия кнопки, разделить обе части, с метода строки split(), который на входе получает по какому символу её нужно разделить, а на выходе выдаёт массив разделённых элементов. Для реализации подчеркивания используется следующий
А12. Четырехзначных чисел, в записи которых встречаются ровно две четверки, причем не стоящие рядом, всего существует
1) 222 2) 228 3) 232 4) 234"
Возможны следующие варианты для записи числа, в котором ровно две четверки, не стоящие рядом:
4?4? и 4??4 - это дает 9*9*2 варианта (на каждой позиции, отмеченной ? - любая из 9 цифр).
И вариант ?4?4 даст нам 8*9 вариантов (на первой позиции - любая цифра кроме 0 или 4).
Итого 9*9*2+8*9=234
Цитата
А12. Четырехзначных чисел, в записи которых встречается не более двух различных цифр, всего существует
1) 567 2) 546 3) 556 4) 576"
Рассмотрим случаи, когда цифра одна или две.
Если цифра одна - то это число вида , таких чисел 9.
Если цифры две, то это число одного из следующих видов:
aaab, aaba, aabb, abaa, abab, abba, abbb, при этом цифра a выбирается любая, кроме 0), цифра любая, кроме a). Итого 9+7*9*9=576
Вообще-то, по спецификации это задание должно быть таким: "Умение представлять и считывать данные в разных типах информационных моделей (схемы, карты, таблицы, графики и формулы)" - это задание A12 по спецификации 2008 года и задание A10 по спецификации 2009 года. Эти задачи - задачи по обычной комбинаторике и ну никакх не подходят под этот пункт спецификации. На ЕГЭ по информатике таких задач быть не может.
В ящике находится 32 теннисных мяча, среди которых X - желтого цвета. Наудачу вынимается один мяч. Сообщение "Извлечен мяч не желтого цвета" несет 4 бит информации. Чему равно X?
32 30 16 8
Больше всего я поражен тем, что не смог ее сразу решить, потом спросил у коллег - преподавателей мехмата, готовящих к ЕГЭ. Они, вздыхая, написали формулу с логарифмом -log2((32-X)/32)=4 и долго объясняли отличие энтропии от информации
О преобразовании. Римские цифры это непозиционная система исчесления, то есть всё исчесление идет не от разряда цифры, как в обычной десятичной системе, а непосредственно по значению цифры. Цифр в римской системе всего 7 вот они:
Римская цифраДесятичный эквивалент
I1
V5
X10
L50
C100
D500
M1000
Из этих цифр и составляются все числа. Если цифра стоящая слева от данной цифры меньше её, то она вычитаеться из данной цифры (принцип вычитания) . Если больше то складывается (принцип сложения) . Например XLVII = XL (40 = 50 - 10) + V (5) + II (2) = 47. Но есть одно исключение. Если мы возьмем число 99 и попытаемся перевести, мы в лоб возьмем 100 (С) и вычтем из ста единицу, то есть получается IC. Удобно, компактно, но не правильно. В класической системе римских цифр число стоящее справа (то есть из которого вычитается) должно быть не больше чем, то что слева умноженное на десять. То есть то же число 99 надо переводить буквально XC(90 = 100 - 10) + IX (9 = 10 - 1) = XCIX. То есть 49 нельзя записывать как IL, только как LXIX. Есть ещё одно правило. Нельзя делать повторения четырёх цифр подряд (исключение составляет цифра четыре, которую изображают в часах как для лучшего восприятия) , то есть число 40 нельзя записывать как , а только как LX. Из всех этих правил вытекает, что максимальное число, которое можно записать римскими цифрами есть MMMCMXCIX = 3999. Но не стоит отчаиваться! Этруски, которые вроде бы придумали рисмские цифры, были умными ребятами и сделали хитро — число подчеркнутое палочкой сверху означает количество тысяч. То есть 4000 нужно записывать как IV. Всё просто.
Отсюда сразу вытекает алгоритм действия:
Если число больше или равно 4000 то делим нацело на 1000 и получаем количество тысяч, заосвываем их в этот же алгоритм, что бы вычислить как они выглядят в римских цифрах и их подчеркнуть сверху. И вычитаем из исходного числа эти тысячи.
Если меньше то
Берём разряд тысяч и переводим в римский эквивалент. Вычитаем их из числа.
Берём разряд сотен и переводим в римский эквивалент. Вычитаем их из числа.
Дальше также поступаем с десятками и единицами.
Повторяем все эти действия пока не вычтеться всё.
Ну и полученые цифрки выводим как положено - тысячи подчеркнутые сверху (если их много, если нет, то нужное количество М) и обычным стилем все остальные буквы которые у нас получились.
Коментарий к исходникам
Чуть ниже представлены ссылки на реализацию рассказанного здесь алгоритма. Хочется сказать про них пару слов.
Функция которая реализует непосредственно конвертацию называется digConvert() в которую передаётся целое число, а на выходе получается строка содержащая либо "err" в случае неудачно конвертации, либо строку с конвертированным римским числом. Если переданное число больше чем 3999, то в итоге получается число подчеркнутое сверху и часть которая неподчеркнута. Функция возвращает оба значения через амперсант (&). Это необходимо, что бы в функцие обработчике нажатия кнопки, разделить обе части, с метода строки split(), который на входе получает по какому символу её нужно разделить, а на выходе выдаёт массив разделённых элементов. Для реализации подчеркивания используется следующий
А12. Четырехзначных чисел, в записи которых встречаются ровно две четверки, причем не стоящие рядом, всего существует
1) 222 2) 228 3) 232 4) 234"
Возможны следующие варианты для записи числа, в котором ровно две четверки, не стоящие рядом:
4?4? и 4??4 - это дает 9*9*2 варианта (на каждой позиции, отмеченной ? - любая из 9 цифр).
И вариант ?4?4 даст нам 8*9 вариантов (на первой позиции - любая цифра кроме 0 или 4).
Итого 9*9*2+8*9=234
Цитата
А12. Четырехзначных чисел, в записи которых встречается не более двух различных цифр, всего существует
1) 567 2) 546 3) 556 4) 576"
Рассмотрим случаи, когда цифра одна или две.
Если цифра одна - то это число вида , таких чисел 9.
Если цифры две, то это число одного из следующих видов:
aaab, aaba, aabb, abaa, abab, abba, abbb, при этом цифра a выбирается любая, кроме 0), цифра любая, кроме a). Итого 9+7*9*9=576
Вообще-то, по спецификации это задание должно быть таким: "Умение представлять и считывать данные в разных типах информационных моделей (схемы, карты, таблицы, графики и формулы)" - это задание A12 по спецификации 2008 года и задание A10 по спецификации 2009 года. Эти задачи - задачи по обычной комбинаторике и ну никакх не подходят под этот пункт спецификации. На ЕГЭ по информатике таких задач быть не может.
В ящике находится 32 теннисных мяча, среди которых X - желтого цвета. Наудачу вынимается один мяч. Сообщение "Извлечен мяч не желтого цвета" несет 4 бит информации. Чему равно X?
32 30 16 8
Больше всего я поражен тем, что не смог ее сразу решить, потом спросил у коллег - преподавателей мехмата, готовящих к ЕГЭ. Они, вздыхая, написали формулу с логарифмом -log2((32-X)/32)=4 и долго объясняли отличие энтропии от информации