Есть ответ 👍

Написать программу в паскале - вводится латинское число (любое) выдать его в текстовой форме, например вводится( mdclx\/i ), вадать (тысяча шестьсот шесдисят шесть).

201
269
Посмотреть ответы 2

Ответы на вопрос:

aynaaaaa
4,8(76 оценок)

не стал писать проверку на правильность введения римского числа. так что вводить нужно аккуратно, без ошибок, в верхнем регистре.

var a, stroka: string;

    i,n,t,s,d,e,x : integer;

    b: array[1..20] of integer;

type slova = array[0..9] of string[15];

const

edinit : slova = ('',' один',' два',' три',' четыре',' пять',' шесть',' семь', ' восемь',' девять');

desyat : slova = ('',' десять',' двадцать',' тридцать',' сорок',' пятьдесят',   ' шестьдесят',' семьдесят',' восемьдесят ',' девяносто');

sotnya : slova = ('',' сто',' двести',' триста',' четыреста',' пятьсот',' шестьсот',' семьсот',' восемьсот',' девятьсот');

teeeen : slova = ('',' одинадцать',' двенадцать',' тринадцать',' четырнадцать', ' пятнадцать',' шестнадцать',' семнадцать',' восемьнадцать', ' девятнадцать');

tyscha : slova = ('','одна тысяча','две тысячи','три тысячи','четыре тысячи','пять тысяч','шесть тысяч','семь тысяч',   'восемь тысяч','девять тысяч');

begin

  writeln('введите римское число: ');

  readln(a);

{записываем число как сумму арабских эквивалентов в массив}

  for i: =1 to length(a) do

    case a[i] of

      'i': b[i]: =1;

      'v': b[i]: =5;

      'x': b[i]: =10;

      'l': b[i]: =50;

      'c': b[i]: =100;

      'd': b[i]: =500;

      'm': b[i]: =1000;

    end;

{суммируя элементы массива, находим число в 10-м виде}

n: =0;

  for i: =1 to length(a) do

    begin

      n: =n+b[i];

      if(i> 1)and( b[i-1]< b[i]) then n: =n-2*b[i-1];   //если меньшая римская цифра идёт перед большей, то она вычитается

    end;

{преобразовываем число в текст}

stroka: ='';

t: =n div 1000;

if t> 0 then stroka: =stroka+tyscha[t];  

s: =n div 100 mod 10;

stroka: =stroka+sotnya[s];

x: =n mod 100;  

d: =x div 10;  

e: =x mod 10;  

if (d=1) and (e< > 0) then stroka: =stroka+teeeen[e]

else stroka: =stroka+desyat[d]+edinit[e];

writeln(stroka);

end.


озу - это память твоего компьютера примеры ты открыл игру а игру занимает память ну ты сам понял

жёсткий диск - это тоже память которое отвечают за windows файлы все его установкм и т.д

cd и dvd они вроде как использует в качестве дисков в компьютеры и ноутбуки

оценит отношение?

ну думаю тут побеждает озу, кеш память и жесткий диск потому что они отвечают за компьютер

память хранилище и т.д

Реши свою проблему, спроси otvet5GPT

  • Быстро
    Мгновенный ответ на твой вопрос
  • Точно
    Бот обладает знаниями во всех сферах
  • Бесплатно
    Задай вопрос и получи ответ бесплатно

Популярно: Информатика

Caktus Image

Есть вопросы?

  • Как otvet5GPT работает?

    otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса.
  • Сколько это стоит?

    Проект находиться на стадии тестирования и все услуги бесплатны.
  • Могу ли я использовать otvet5GPT в школе?

    Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое!
  • В чем отличия от ChatGPT?

    otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.

Подпишись на наш телеграмм канал

GTP TOP NEWS