প্রবলেম - 63

সিজার সাইফার ১

প্রবলেম সেটার: দ্বিমিক কম্পিউটিং


ডেটা এনক্রিপশন (data encryption) মানে হচ্ছে, ডেটাকে এমনভাবে প্রকাশ করা যেন সঠিক গ্রাহক ব্যাতীত অন্য কেউ সেই ডেটার মর্মোদ্ধার করতে না পারে। বর্তমানে ডেটা এনক্রিপশনের জন্য অনেক জটিল অ্যালগরিদম আছে। মজার ব্যাপার হচ্ছে শত শত বছর আগেও মানুষ ডেটা এনক্রিপ্ট করতো। এরকম পুরনো একটি পদ্ধতি হচ্ছে সিজার সাইফার, যা রোমান সম্রাট জুলিয়াস সিজারের আমলে প্রচলিত হয়।

সিজার সাইফার পদ্ধতিতে একটি টেক্সটের সঙ্গে একটি সংখ্যা দেওয়া হয়, যাকে কি (key) বলা হয়। কি-এর মান যত, টেক্সটের অক্ষরগুলো তত ঘর পরের অক্ষর দিয়ে বদলে দেওয়া হয়। যেমন, কি-এর মান যদি 2 হয়, তখন abc-কে লেখা হবে cde (a-এর জায়গায় c, b-এর জায়গায় d, d-এর জায়গায় e)। এই কি এর মান কেবল প্রাপকই জানে, যার ফলে অন্য কেউ এই টেক্সটের মর্মোদ্ধার করতে পারে না।

এখন একটি টেক্সট ও কি দেওয়া থাকলে টেক্সটি এনক্রিপ্ট করার জন্য একটি প্রোগ্রাম লিখতে হবে।

ইনপুট

প্রথম লাইনে একটি স্ট্রিং দেওয়া থাকবে, যেটিকে এনক্রিপ্ট করতে হবে। দ্বিতীয় লাইনে কি দেওয়া থাকবে, যেটি একটি ধনাত্মক সংখ্যা এবং এর মান 0 থেকে 26-এর মধ্যে হবে।

আউটপুট

এনক্রিপ্ট করা টেক্সটি প্রিন্ট করতে হবে।

স্যাম্পল ইনপুট আউটপুট

স্যাম্পল #1

ইনপুট
Abcd Wxyz
2
আউটপুট
Cdef Yzab
প্রবলেম-63 পরিসংখ্যান

93 টি সাবমিশন

30 টি অ্যাকসেপ্টেড

26 জন সমাধান করেছেন

সাইট পরিসংখ্যান

23102 টি সাবমিশন

64 টি প্রোগ্রামিং সমস্যা

1859 জন ইউজার

দ্বিমিকএর সব বই
গ্রাফ অ্যালগরিদম
গ্রাফ অ্যালগরিদম

ক্রয় করুন

মেশিন লার্নিং অ‍্যালগরিদম
মেশিন লার্নিং অ‍্যালগরিদম

ক্রয় করুন

৫২টি প্রোগ্রামিং সমস্যা ও সমাধান
৫২টি প্রোগ্রামিং সমস্যা ও সমাধান

ক্রয় করুন

গণিত করব জয়
গণিত করব জয়

ক্রয় করুন

কম্পিউটার প্রোগ্রামিং-প্রথম খণ্ড
কম্পিউটার প্রোগ্রামিং-প্রথম খণ্ড

ক্রয় করুন