32 lines
763 B
Nim
32 lines
763 B
Nim
import std/unicode
|
|
|
|
proc isPalindrome(s: string): bool =
|
|
return s == s.reversed()
|
|
|
|
|
|
let testString = "hallo" # Beispiel: Palindrom
|
|
if isPalindrome(testString):
|
|
echo testString, " ist ein Palindrom."
|
|
else:
|
|
echo testString, " ist kein Palindrom."
|
|
|
|
|
|
|
|
|
|
|
|
# alternativ
|
|
proc reverseString(str: string): string =
|
|
var reversedStr = ""
|
|
for i in countdown(str.len - 1, 0): # Iteriere über den String rückwärts
|
|
reversedStr.add(str[i]) # Füge jedes Zeichen in umgekehrter Reihenfolge hinzu
|
|
return reversedStr
|
|
|
|
proc isPalindromeManuell(s: string): bool =
|
|
return s == s.reverseString()
|
|
|
|
|
|
let testString2 = "madam" # Beispiel: Palindrom
|
|
if isPalindrome(testString2):
|
|
echo testString2, " ist ein Palindrom."
|
|
else:
|
|
echo testString2, " ist kein Palindrom." |