w3resource

CoffeeScript function: Check whether a passed string is a palindrome or not

CoffeeScript Function : Exercise-10 with Solution

Write a CoffeeScript function that checks whether a passed string is a palindrome or not?

Note: A palindrome is a word, phrase, or sequence that reads the same backward as forward, e.g., madam or nurses run.

HTML Code :

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">+
  <script src="//jashkenas.github.io/coffee-script/extras/coffee-script.js"></script>
  <title>Check whether a passed string is a palindrome or not</title>
</head>
<body>

</body>
</html>

CoffeeScript Code :


check_Palindrome = (str_entry) ->
  # Change the string into lower case and remove  all non-alphanumeric characters
  cstr = str_entry.toLowerCase().replace(/[^a-zA-Z0-9]+/g, '')
  ccount = 0
  # Check whether the string is empty or not
  if cstr == ''
    console.log 'Nothing found!'
    return false
  # Check if the length of the string is even or odd 
  if cstr.length % 2 == 0
    ccount = cstr.length / 2
  else
    # If the length of the string is 1 then it becomes a palindrome
    if cstr.length == 1
      console.log 'Entry is a palindrome.'
      return true
    else
      # If the length of the string is odd ignore middle character
      ccount = (cstr.length - 1) / 2
  # Loop through to check the first character to the last character and then move next
  x = 0
  while x < ccount
    # Compare characters and drop them if they do not match 
    if cstr[x] != cstr.slice(-1 - x)[0]
      alert 'Entry is not a palindrome.'
      return false
    x++
  console.log 'The entry is a palindrome.'
  true

check_Palindrome 'madam'
check_Palindrome 'nurses run'
check_Palindrome 'fox'

Sample Output:

"The entry is a palindrome."
"The entry is a palindrome."
"Entry is not a palindrome."

Live Demo :

See the Pen coffeescript-exercise-10 by w3resource (@w3resource) on CodePen.


Improve this sample solution and post your code through Disqus.



Follow us on Facebook and Twitter for latest update.