Skip to content

Instantly share code, notes, and snippets.

@greenbicycle
Created August 4, 2025 01:34
Show Gist options
  • Save greenbicycle/0436a4df074c88476a51ff2502680f1b to your computer and use it in GitHub Desktop.
Save greenbicycle/0436a4df074c88476a51ff2502680f1b to your computer and use it in GitHub Desktop.
/**
* This is an incomplete recursive function.
* It doesn't take care of 900 90 9 or 4 for example.
* And it still doesn't have "else if" statements for X V and I
* But hopefully you get the idea.
*/
function convert2Roman($integer, $result = “”) {
if ($integer > 1000) {
$result = $result . “M”;
$integer = $integer - 1000;
return covert2Roman($integer, $result);
} else if ($integer > 500) {
$result = $result . “D”;
$integer = $integer - 500;
return covert2Roman($integer, $result);
} else if ($integer > 100) {
$result = $result . “C”;
$integer = $integer - 100;
return covert2Roman($integer, $result);
} else if ($integer > 50) {
$result = $result . “L”;
$integer = $integer - 50;
return covert2Roman($integer, $result);
} else if ($integer === 0) {
// You are done
return result;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment