আমাদের যেকোন দৈর্ঘ্যের একটি স্ট্রিং দেওয়া হয়েছে এবং কাজটি হল গণনা গণনা করা এবং ASCII মান রেঞ্জের মধ্যে নয় এমন একটি স্ট্রিং-এ বর্ণমালা প্রিন্ট করা।
অক্ষর A-Z-এর জন্য ASCII মান নীচে দেওয়া আছে
A | B | C | D | ই | F | G | H | আমি | J | K | L | M | N | ও | P | প্রশ্ন | R | এস |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 |
T | U | V | W | X | Y | Z |
---|---|---|---|---|---|---|
84 | 85 | 86 | 87 | 88 | 89 | 90 |
a-z অক্ষরের জন্য ASCII মান নীচে দেওয়া আছে
a | b | c | d | ই | f | g | h | i | j | k | l | মি | n | ও | p | q | r | s |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
9 7 | 9 8 | 9 9 | 10 0 | 10 1 | 10 2 | 10 3 | 10 4 | 10 5 | 10 6 | 10 7 | 10 8 | 10 9 | 11 0 | 11 1 | 11 2 | 11 3 | 11 4 | 11 5 |
t | u | v | w | x | y | z |
---|---|---|---|---|---|---|
116 | 117 | 118 | 119 | 120 | 121 | 122 |
উদাহরণস্বরূপ
Input − String str = “point First = 111, Last = 117 Output − characters not in the given range are: i, n Count is: 2
ব্যাখ্যা − যেহেতু i এবং n [111, 117] রেঞ্জের মধ্যে পড়ে না এই অক্ষরগুলিকে গণনা করা হবে৷
Input − String str = “ABCZXY First = 65, Last = 70 Output − characters in the given range are: A, B, C Count is: 3
ব্যাখ্যা − যেহেতু Z, X এবং Y [65, 70] সীমার মধ্যে পড়ে না এই অক্ষরগুলিকে গণনা করা হবে৷
নিম্নলিখিত প্রোগ্রামে ব্যবহৃত পদ্ধতি
-
পরিসীমা তৈরি করতে স্ট্রিং, শুরু এবং শেষের মানগুলি ইনপুট করুন এবং এটিকে ভেরিয়েবলে সংরক্ষণ করুন, আসুন বলি, str৷
-
length() ফাংশন ব্যবহার করে স্ট্রিং এর দৈর্ঘ্য গণনা করুন যা স্পেস সহ স্ট্রিং এর অক্ষর সংখ্যা অনুযায়ী একটি পূর্ণসংখ্যা মান প্রদান করবে।
-
একটি অস্থায়ী ভেরিয়েবল নিন যা অক্ষর গণনা সংরক্ষণ করবে এবং একটি মানচিত্র তৈরি করবে, আসুন, mp
-
i থেকে 0 থেকে লুপটি শুরু করুন যতক্ষণ না i স্ট্রিংয়ের দৈর্ঘ্যের চেয়ে কম হয়
-
লুপের ভিতরে, স্টার্ট ইকুয়ালস টু str[i] এবং str[i] শেষের সমান নয় এর চেয়ে কম কিনা তা পরীক্ষা করুন
-
if এর ভিতরে, mp[str[i]] কিনা তা পরীক্ষা করুন! =1 তারপর str[i] প্রিন্ট করুন অন্যথা mp[str[i]] 1
বাড়িয়ে দিন -
গণনা ফেরত দিন
-
ফলাফল প্রিন্ট করুন
উদাহরণ
#include <iostream> #include <unordered_map> using namespace std; // To count the number of characters whose // ascii value not in range [l, r] int count_non_char(string str, int left, int right){ int count = 0; // using map to print a character only once unordered_map<char, int> m; int len = str.length(); for (int i = 0; i < len; i++) { if (!(left <= str[i] and str[i] <= right)){ count++; if (m[str[i]] != 1){ cout << str[i] << " "; m[str[i]]++; } } } // return the count return count; } // main code int main(){ string str = "tutorialspoint"; int left = 102, right = 111; cout << "Characters and "; cout << "\nand count in the given range is: " << count_non_char(str, left, right); return 0; }
আউটপুট
যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট −
উৎপন্ন করবেCharacters and and count in the given range is: t u r a s p 8