Nikolaevich_Vladimirovich1509
?>

Задача 3. Дано число X. Требуется перевести это число в римскую систему счисления. Входные данные: Дано число X в десятичной системе счисления (1 ≤ X ≤ 100 Выходные данные: Выведите X в римской системе счисления. Пример: Входные данные: 19 Выходные данные: XIX На Python'e написать код

Информатика

Ответы

orb-barmanager

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

const

Rom:array[1..9] of string[2] =('I','IV','V','IX','X','XL','L','XC','C');

Arb:array[1..9] of integer =(1,4,5,9,10,40,50,90,100);

var rm: string;

ar,i:integer;

begin

clrscr;

repeat

write('Введите натуральное число от 1 до 100 ar=');

readln(ar);

until ar in [1..100];

rm:='';

for i:=9 downto 1 do

while (ar>=Arb[i]) do

begin

ar:=ar-Arb[i];

rm:=rm+Rom[i];

Versalmoda
1. Определим количество возможных символов в одном разряде номера.
Поскольку используется 22 буквы и 10 цифр, то в сумме получается 32 символа.
2. Определим количество бит, необходимых для кодирования набора из 32 символов. Если считать, что символы кодируются цифрами от 0 до 31, потребуется log_232=5 бит.
3. Определим количество байт, которое займет один номер.
В номере 7 символов, поэтому для его кодирования нужно 7х5=35 бит. В байте 8 бит, тогда для размещения 35 бит потребуется 35/8 ≈ 5 байт (округляем до целых всегда в большую сторону).
4. Определим объем памяти, отводимый для записи 50 номеров.
50х5=250 байт.

ответ: 250 байт. (вариант ответа 3)
boyarinovigor
Десятичных цифр, как все знают, 10 :) 
(от 0 до 9)
значит, на месте каждого из 7 знаков может стоять любой из 22+10=32 символов. тогда по формуле один символ займет логарифм по основанию 2 от 32 = 5 бит. (5 мест, на каждом из которых стоит один бит - 1 либо 0, этого хватит как раз на 2^5=32 символа) 
тогда на номер 7*5 = 35 бит. один байт = 8 бит. 35/8 не делится нацело, надо подобрать минимальное, чтобы делилось (это 40). значит на 1 номер приходится 40/8=5 байт. ну а на 50 номеров 5*50=250 байт. 
Стало быть, ответ: 3

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Задача 3. Дано число X. Требуется перевести это число в римскую систему счисления. Входные данные: Дано число X в десятичной системе счисления (1 ≤ X ≤ 100 Выходные данные: Выведите X в римской системе счисления. Пример: Входные данные: 19 Выходные данные: XIX На Python'e написать код
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Грудинин604
magichands68
Валерьевич Николаевич1364
Serezhkin
Ни Дмитрий1095
Femida76
reception
spodobnyi
Shalito
Eduard Popik
skorpion7228528
stperelyot7833
Анна гутлина
iskypka
Ахмедшина Трубников1249
▲