একটি ইউজার ইনপুট স্ট্রিং এবং সেই পজিশন দেওয়া আছে যেখান থেকে স্ট্রিং-এর দৈর্ঘ্য পর্যন্ত অ্যালফাবেটিকেল অর্ডারে ক্যারেক্টারগুলো মিরর (mirror) করতে হবে। এই অপারেশনে, আমরা 'a'-কে 'z'-তে, 'b'-কে 'y'-তে, 'c'-কে 'x'-তে, 'd'-কে 'w'-তে রূপান্তর করি এবং এরকমভাবে প্রথম ক্যারেক্টারটি শেষ হয়ে যায় এবং এইভাবে চলতে থাকে।
Input: p = 3 Input string = python Output : pygslm
অ্যালগরিদম
ধাপ ১: স্ট্রিং এবং যে পজিশন থেকে মিরর করতে হবে সেটি ইনপুট নিন। ধাপ ২: অ্যালফাবেটিকেল অর্ডারে একটি স্ট্রিং তৈরি করুন। ধাপ ৩: একটি খালি স্ট্রিং তৈরি করুন। ধাপ ৪: তারপর নির্দিষ্ট পজিশন পর্যন্ত প্রতিটি ক্যারেক্টার ট্রাভার্স করুন এবং এই অংশটি অপরিবর্তিত রাখুন। ধাপ ৫: সেই পজিশন থেকে স্ট্রিং-এর দৈর্ঘ্য পর্যন্ত অ্যালফাবেটিকেল অর্ডার উল্টো করুন। ধাপ ৬: স্ট্রিং রিটার্ন করুন।
উদাহরণ কোড
# পাইথন প্রোগ্রাম: স্ট্রিং-এ মিরর ক্যারেক্টার বের করা def mirror(str1, n): # উল্টো অ্যালফাবেটিকেল অর্ডার একটি স্ট্রিং তৈরি alphaset = "zyxwvutsrqponmlkjihgfedcba" l = len(str1) # প্রশ্নে নির্দিষ্ট পয়েন্ট পর্যন্ত স্ট্রিং অপরিবর্তিত থাকে # এবং সেই পয়েন্ট থেকে স্ট্রিং-এর দৈর্ঘ্য পর্যন্ত অ্যালফাবেটিকেল অর্ডার উল্টো করুন result = "" for i in range(0, n): result = result + str1[i]; for i in range(n, l): result = (result + alphaset[ord(str1[i]) - ord('a')]); return result; # ড্রাইভার ফাংশন str1 = input("Enter the string ::>") n = int(input("Enter the position ::>")) result = mirror(str1, n - 1) print("The Result ::>",result) আউটপুট
Enter the string ::> python Enter the position ::> 3 The Result ::> pygslm