আমরা জানি যে এক্সেল কলাম সংখ্যা বর্ণানুক্রমিক। এটি A থেকে শুরু হয়, এবং Z এর পরে, এটি AA, AB, থেকে ZZ হবে, তারপর আবার AAA, AAB, থেকে ZZZ ইত্যাদি। সুতরাং কলাম 1 হল A, কলাম 27 হল Z৷ এখানে আমরা দেখব কিভাবে কলামের সংখ্যা দেওয়া হলে কলামের অক্ষর পাওয়া যায়৷ তাই যদি কলাম নম্বর 80 হয়, তাহলে সেটি হবে CB।
ধরুন আমাদের একটি সংখ্যা n, এবং এর মান 28, তাহলে আমাদের 26 এর সাথে রিমাইন্ডার নিতে হবে। যদি অবশিষ্টটি 0 হয়, তাহলে সংখ্যাটি 26, 52 ইত্যাদি। তারপর আমরা আউটপুট স্ট্রিং এ Z রাখি। n-এর মান n/26 – 1 হয়ে যায়। এবং যদি অবশিষ্টাংশগুলি অ-শূন্য হয় তবে আমাদের কেবল সেই অনুযায়ী অক্ষরটি স্ট্রিংটিতে প্রবেশ করাতে হবে এবং n =n/26 করতে হবে। অবশেষে স্ট্রিংয়ের বিপরীতটি মুদ্রিত হবে।
উদাহরণ
#include<iostream>
#include<algorithm>
using namespace std;
void showColumnLetters(int n) {
string str = "";
while (n) {
int rem = n%26;
if (rem==0) {
str += 'Z';
n = (n/26)-1;
}
else{
str += (rem-1) + 'A';
n = n/26;
}
}
reverse(str.begin(), str.begin() + str.length());
cout << str << endl;
}
int main() {
int n = 700;
cout << "Cell name of " << n << " is: ";
showColumnLetters(700);
} আউটপুট
Cell name of 700 is: ZX