first question - do you know how to convert numbers to roman numerals if someone asks you to do it? If not, research that first.
for eg. if I said convert:
99 to roman numerals, you should know how to write it for yourself.
second question - if you know how to do it yourself, can you write down steps, clear ones, to explain it to someone else? If yes, write your steps down. Make sure they work by either asking someone else to go through them or you yourself make sure they work for every kind of number.
final question - do you know how to convert your steps to code?
This one may be the trickiest or easiest bit depending on how clear your steps were.
for eg. Here is my steps on how to convert a number that is between 0-9 to binary:
0 is just 0 in binary
1 is just 1 in binary
2 can be written as 2^1 so it is a 10 in binary
3 is 2+1 so add 10 to 1 and you get 11 which is the representation in binary.
4 is 2^2 so it is a 100 in binary
5 is 4+1 so it is a 100+1 which is 101 in binary
6 is 4+2 so it is 100+10 which is 110 in binary
7 is 4+3 so it is a 100+11 which is 111 in binary
8 is 2^3 so it is a 1000 in binary
9 is 8+1 so it is 1000+1 which is 1001 in binary
as you can see , there is a pattern above. The pattern is:
check if the number is a factor of 2, if it is , the representation is simply (ten times the power)
if it is not check if it is 1 or 0, these stay exactly the same
if it is none of the above, rerewrite the number as a factor of 2 plus a remainder . The binary representation of the remainder is added to the binary representation of the closest smaller factor of 2.
So I hope I’ve given you an idea about how to approach this challenge.
1- identify if you understand how to solve the problem yourself
2- write down simple steps and patterns to explain to someone else how to solve it
3- rewrite those steps as code.