Добрый вечер. Подскажите, пожалуйста, я новичок и пытаюсь написать алгоритм преобразования арабских чисел в римские. Единственное, что пришло в голову: преобразовать последовательно тысячи, сотни, десятки и единицы (подразумевается, что больше четырехзначных чисел не будет). Реализовал следующим образом:
function convertToRoman(num) {
var romNum = '';
var numLength = num + '';
while (num !== 0) {
if (numLength.length == 4) {
romNum += 'M' * (num / 1000);
num = num % 1000;
} else if (numLength.length == 3) {
if ((num / 500) == 1) {
romNum += 'D';
num = num - 500;
} else {
romNum += 'C' * (num / 100);
num = num % 100;
}
} else if (numLength.length == 2) {
if ((num / 50) == 1) {
romNum += 'L';
num = num - 50;
} else {
romNum += 'X' * (num / 10);
num = num % 10;
}
} else {
if ((num / 5) == 1) {
romNum += 'V';
num = num - 5;
} else {
romNum += 'I' * num;
num = 0;
}
}
}
return romNum;
}
convertToRoman(36);
Но, код не работает, цикл почему-то получается бесконечным. Помогите, пожалуйста, понять почему?
Виртуальный выделенный сервер (VDS) становится отличным выбором
Вы забыли вызвать функцию guessingНужно добавить строчку
Подскажите пожалуйста, есть ли библиотека подобная Cheerio только что бы работала на клиенте?
В функцию на обработку поступает текст, к примеру вот такой: