⬅ Torna alla Home

ES 2 - Numeri Romani

Inserisci un numero intero per convertirlo in cifre romane.


Codice della Soluzione

function convertToRoman($numero) {
	if ($numero <= 0) return "";

	$mappaRomana = [
		'M'  => 1000, 'CM' => 900, 'D'  => 500, 'CD' => 400,
		'C'  => 100,  'XC' => 90,  'L'  => 50,  'XL' => 40,
		'X'  => 10,   'IX' => 9,   'V'  => 5,   'IV' => 4,
		'I'  => 1
	];

	$risultato = '';

	foreach ($mappaRomana as $simbolo => $valore) {
		while ($numero >= $valore) {
			$risultato .= $simbolo;
			$numero -= $valore;
		}
	}
	return $risultato;
}