Bir Dizenin Palindrome Olup Olmadığını Kontrol Etmek İçin JavaScript Programı

Bu örnekte, dizenin palindrome olup olmadığını kontrol eden bir JavaScript programı yazmayı öğreneceksiniz.

Bu örneği anlamak için, aşağıdaki JavaScript programlama konuları hakkında bilgi sahibi olmalısınız:

  • JavaScript Dizesi
  • JavaScript İşlev ve İşlev İfadeleri

Bir string, aynı şekilde ileriye veya geriye doğru okunursa, bir palindromdur. Örneğin, baba aynı şeyi ileri ya da geri okur. Yani baba kelimesi bir palindromdur. Aynı şekilde hanımefendi de bir palindromdur.

Örnek 1: Döngü için Kullanarak Palindrome'u Kontrol Edin

 // program to check if the string is palindrome or not function checkPalindrome(str) ( // find the length of a string const len = string.length; // loop through half of the string for (let i = 0; i < len / 2; i++) ( // check if first and last string are same if (string(i) !== string(len - 1 - i)) ( return 'It is not a palindrome'; ) ) return 'It is a palindrome'; ) // take input const string = prompt('Enter a string: '); // call the function const value = checkPalindrome(string); console.log(value);

Çıktı

 Bir dize girin: madam Bu bir palindrom

Yukarıdaki programda, checkPalindrome()işlev kullanıcıdan girdi alır.

  • Dizenin uzunluğu lengthözellik kullanılarak hesaplanır .
  • forDöngü dize yarısına kadar yinelemek için kullanılır. ifKoşul birinci ve karşılık gelen son karakterler aynı olup olmadığını kontrol etmek için kullanılır. Bu döngü ipin yarısına kadar devam eder.
  • Yineleme sırasında, dizenin herhangi bir karakteri, karşılık gelen son dizesiyle karşılaştırıldığında eşit değilse, dizge bir palindrom olarak kabul edilmez.

Örnek 2: Yerleşik İşlevleri kullanarak Palindrome'u kontrol edin

 // program to check if the string is palindrome or not function checkPalindrome(str) ( // convert string to an array const arrayValues = string.split(''); // reverse the array values const reverseArrayValues = arrayValues.reverse(); // convert array to string const reverseString = reverseArrayValues.join(''); if(string == reverseString) ( console.log('It is a palindrome'); ) else ( console.log('It is not a palindrome'); ) ) //take input const string = prompt('Enter a string: '); checkPalindrome(string);

Çıktı

 Bir dize girin: merhaba Bu bir palindrom değil

Yukarıdaki programda, palindrom, JavaScript'te bulunan yerleşik yöntemler kullanılarak kontrol edilir.

  • split('')Yöntem tek tek dizi karakterleri içine dize dönüştürür.
     const arrayValues = string.split(''); // ("h", "e", "l", "l", "o")
  • reverse()Yöntem, bir dizi pozisyonu tersine çevirir.
     // ("o", "l", "l", "e", "h") const reverseArrayValues = arrayValues.reverse();
  • join('')Yöntem, bir dizeye dizinin tüm elemanlarını birleştirir.
     const reverseString = reverseArrayValues.join(''); // "olleh"
  • Daha sonra if… elseifade, dizginin ve ters çevrilmiş dizenin eşit olup olmadığını kontrol etmek için kullanılır. Eşit iseler, ip bir palindromdur.

Not : Birden fazla kod satırı tek satırda kısaltılabilir ve yazılabilir:

 const reverseString = string.split('').reverse().join('');

Ilginç makaleler...