No, cause you do the replacement from large to small, I.e. you’d first check for 10 I to replace with X (none found); then replace 9 with IX (check), then check for 5, 4 and so on.
I like your questions about this and they all seem fair but I kinda wanna encourage you to go ahead and write it yourself; it’s a fun way to convert into Roman numerals that both is and isn’t intuitive at the same time.
9 is IX though, and that works.
6 works fine, as it replaces the first set of 5 I with V and then there’s nothing to replace.
I’d written it in typescript for all it’s worth; go ahead and try it yourself :)
Does 9 really work? Wouldn’t it be:
IIIIIIIII -> VIIII -> VIV
No, cause you do the replacement from large to small, I.e. you’d first check for 10 I to replace with X (none found); then replace 9 with IX (check), then check for 5, 4 and so on.
The original doesn’t have an extra check for 9 and it works for Roman->Indioarabic because it’s:
IX ->IVV ->IIIIV ->IIIIIIIII
But the other way around, you need an extra step for 9. That’s where our misunderstanding comes from.
Ohhh haha that makes sense. Fun!
I noticed my “and so on” is literally a noop here so yeah.
I like your questions about this and they all seem fair but I kinda wanna encourage you to go ahead and write it yourself; it’s a fun way to convert into Roman numerals that both is and isn’t intuitive at the same time.