ogonizoloto
?>

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

Информатика

Ответы

Сергеевна_Юрикович
PascalABC.NET 3.4

begin
  var m:=ReadInteger('Введите натуральное число не более 3999:');
  if not m.Between(1,3999) then Writeln('Недопустимое значение')
  else
  begin
    Write(m,' = ');
    var ar:array of string:=
        ('M','CM','D','CD','C','XC','L','XL','X','IX','V','IV','I');
    var aa:=Arr(1000,900,500,400,100,90,50,40,10,9,5,4,1);
    var n:=0;
    var s:string:='';
    while m>0 do
    begin
      while aa[n]<=m do
      begin
        s+=ar[n];
        m-=aa[n];
      end;
      n+=1
    end;
    Writeln(s)
  end
end.
natapetrova20017

1. по векторам:

использовать чертежник

алг

нач

сместиться на вектор (1.75,0)

опустить перо

сместиться на вектор (0.5,0)

сместиться на вектор (0,0.5)

сместиться на вектор (1,0)

сместиться на вектор (-1, 1)

сместиться на вектор (0.75,0)

сместиться на вектор (-1,1)

сместиться на вектор (-1,-1)

сместиться на вектор (0.75,0)

сместиться на вектор (-1,-1)

сместиться на вектор (1,0)

сместиться на вектор (0,-0.5)

поднять перо

сместиться в точку (0,0)

кон

2. по точкам:

использовать чертежник

алг

нач

сместиться в точку (1.75,0)

опустить перо

сместиться в точку (2.25,0)

сместиться в точку (2.25,0.5)

сместиться в точку (3.25,0.5)

сместиться в точку (2.25, 1.5)

сместиться в точку (3,1.5)

сместиться в точку (2,2.5)

сместиться в точку (1,1.5)

сместиться в точку (1.75,1.5)

сместиться в точку (0.75,0.5)

сместиться в точку (1.75,0.5)

сместиться в точку (1.75,0)

поднять перо

сместиться в точку (0,0)

кон

игнатова_Сергей1228

Еще одно очень красивое и очень странное решение через словари.

n = int(input())

print({1<=n<=4: "Начальная школа",

     5<=n<=9: "Среднее звено",

     10<=n<=11: "Старшее звено"}[True])

Здесь мы создаем неименованный словарь, который в качестве ключа использует условное выражение, а в качестве значения - соответствующую этому выражению строку.

Когда мы тут же передаем ему в качестве ключа True, словарь начнет проверять ключи и вернет именно то значение, у которого выражение-ключ было истинным.

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

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

Составить программу преобразования натуральных числе, записанных в римской нумерации, в десятичную систему счисления. на паскале.
Ваше имя (никнейм)*
Email*
Комментарий*