Это код, который я использовал для вызова coderbyte «Palindrome». Задача состоит в том, чтобы вернуть true, если str является тем же самым фоном и назад (палиндром). У меня есть все возможные моменты, но я знаю, что мой код немного уродлив. Что было бы более эффективным способом написания этого кода. Похоже, я повторяю себя, и это похоже на то, что может быть написано с помощью цикла for. Я также вижу, как он может вернуть true, когда он действительно неверен, если был более длинный палиндром без использования цикла for:Более эффективный код палиндрома
function Palindrome(str) {
var low=str.toLowerCase()
var first = low.charAt(0);
var last = low.charAt(low.length-1);
var mid = low.charAt(1);
var mid1 = low.charAt(low.length-2);
if(first===last)
if(mid===mid1)
{
return true
}
else
{
return false
}
else
{
return false
}
}
print(Palindrome(readline()));
Первый шаг: исправьте углубление, чтобы было ясно, что происходит. –
Я не знаю, как вы получили больше, чем несколько очков с этим кодом, кажется, что тесты недостаточно полны. Код работает только для палиндромов, содержащих до пяти символов. Вам нужно проверить всю строку, а не только первые два и два последних символа. – Guffa