Ganzzahl in römische Zahlen umwandeln

PythonPythonBeginner
Jetzt üben

This tutorial is from open-source community. Access the source code

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

Römische Zahlen sind ein Zahlensystem, das im alten Rom entstanden ist. Sie werden heute noch in verschiedenen Kontexten verwendet, wie beispielsweise bei der Nummerierung von Buchkapiteln und Filmsequels. In dieser Herausforderung müssen Sie eine Funktion erstellen, die eine Ganzzahl zwischen 1 und 3999 (einschließlich) in seine römische Zahlenrepräsentation umwandelt.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/DataStructuresGroup(["Data Structures"]) python(("Python")) -.-> python/FunctionsGroup(["Functions"]) python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) python(("Python")) -.-> python/ControlFlowGroup(["Control Flow"]) python/BasicConceptsGroup -.-> python/comments("Comments") python/ControlFlowGroup -.-> python/for_loops("For Loops") python/DataStructuresGroup -.-> python/lists("Lists") python/DataStructuresGroup -.-> python/tuples("Tuples") python/FunctionsGroup -.-> python/function_definition("Function Definition") python/FunctionsGroup -.-> python/build_in_functions("Build-in Functions") subgraph Lab Skills python/comments -.-> lab-13734{{"Ganzzahl in römische Zahlen umwandeln"}} python/for_loops -.-> lab-13734{{"Ganzzahl in römische Zahlen umwandeln"}} python/lists -.-> lab-13734{{"Ganzzahl in römische Zahlen umwandeln"}} python/tuples -.-> lab-13734{{"Ganzzahl in römische Zahlen umwandeln"}} python/function_definition -.-> lab-13734{{"Ganzzahl in römische Zahlen umwandeln"}} python/build_in_functions -.-> lab-13734{{"Ganzzahl in römische Zahlen umwandeln"}} end

Ganzzahl in römische Zahlen

Schreiben Sie eine Funktion to_roman_numeral(num), die eine Ganzzahl num zwischen 1 und 3999 (einschließlich) nimmt und ihre römische Zahlenrepräsentation als Zeichenfolge zurückgibt.

Um eine Ganzzahl in ihre römische Zahlenrepräsentation umzuwandeln, können Sie eine Suchliste verwenden, die Tupel im Format (römischer Wert, Ganzzahl) enthält. Anschließend können Sie eine for-Schleife verwenden, um über die Werte in der Suchliste zu iterieren und divmod() verwenden, um num mit dem Rest zu aktualisieren und die römische Zahlenrepräsentation zum Ergebnis hinzuzufügen.

Ihre Funktion sollte die römische Zahlenrepräsentation der eingegebenen Ganzzahl zurückgeben.

def to_roman_numeral(num):
  lookup = [
    (1000, 'M'),
    (900, 'CM'),
    (500, 'D'),
    (400, 'CD'),
    (100, 'C'),
    (90, 'XC'),
    (50, 'L'),
    (40, 'XL'),
    (10, 'X'),
    (9, 'IX'),
    (5, 'V'),
    (4, 'IV'),
    (1, 'I'),
  ]
  res = ''
  for (n, roman) in lookup:
    (d, num) = divmod(num, n)
    res += roman * d
  return res
to_roman_numeral(3) ## 'III'
to_roman_numeral(11) ## 'XI'
to_roman_numeral(1998) ## 'MCMXCVIII'

Zusammenfassung

In dieser Herausforderung haben Sie gelernt, wie Sie eine Ganzzahl in ihre römische Zahlenrepräsentation umwandeln. Sie haben eine Suchliste verwendet, die Tupel im Format (römischer Wert, Ganzzahl) enthält, und eine for-Schleife, um über die Werte in der Suchliste zu iterieren. Sie haben auch divmod() verwendet, um num mit dem Rest zu aktualisieren und die römische Zahlenrepräsentation zum Ergebnis hinzuzufügen.