﻿ Python: Find a palindrome of a given length containing a given string - w3resource

# Python: Find a palindrome of a given length containing a given string

## Python Programming Puzzles: Exercise-95 with Solution

Write a Python program to generate a palindrome of a given length from a string.

```Input:  madam , 7
Output:

Output:

Output:
maaaam

Output:
maam

Output:
mm

Output:
aa
```

Sample Solution:

Python Code:

``````# License: https://bit.ly/3oLErEI

# Function to generate a palindrome of a given length from a string
def test(s, length):
s_index = 0
# Calculate the half length of the palindrome
length_half = (length - (length % 2)) // 2
ans = ""

# Build the first half of the palindrome
while len(ans) < length_half:
ans += s[s_index % len(s)]
s_index += 1

# Add a middle character if the length is odd
if length % 2 == 1:
ans += "a"

# Complete the palindrome by adding the reversed first half
return ans + ans[::-1]

# Test cases with different string and palindrome lengths
length = 7
print("String and length of the palindrome:", s, ",", length)
print("Palindrome of the said string and length:")
print(test(s, length))

length = 6
print("\nString and length of the palindrome:", s, ",", length)
print("Palindrome of the said string and length:")
print(test(s, length))

length = 5
print("\nString and length of the palindrome:", s, ",", length)
print("Palindrome of the said string and length:")
print(test(s, length))

length = 3
print("\nString and length of the palindrome:", s, ",", length)
print("Palindrome of the said string and length:")
print(test(s, length))

length = 2
print("\nString and length of the palindrome:", s, ",", length)
print("Palindrome of the said string and length:")
print(test(s, length))

length = 1
print("\nString and length of the palindrome:", s, ",", length)
print("Palindrome of the said string and length:")
print(test(s, length))

``````

Sample Output:

```String and length of the palindrome: madam , 7
Palindrome of the said string and length:

String and length of the palindrome: madam , 6
Palindrome of the said string and length:

String and length of the palindrome: madam , 5
Palindrome of the said string and length:
maaaam

String and length of the palindrome: madam , 3
Palindrome of the said string and length:
maam

String and length of the palindrome: madam , 2
Palindrome of the said string and length:
mm

String and length of the palindrome: madam , 1
Palindrome of the said string and length:
aa
```

Flowchart:

Python Code Editor :

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.

﻿