Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

C++ में [l, r] रेंज में आने वाले ASCII मान वाले वर्णों की गिनती और प्रिंट करें


हमें किसी भी लंबाई की एक स्ट्रिंग दी गई है और कार्य स्ट्रिंग में उन वर्णों की गिनती करना और प्रिंट करना है जिनका ASCII मान रेंज [l,r] में है।

A-Z वर्णों के ASCII मान नीचे दिए गए हैं

ABCDEFGHIJKLMNOPQRS
65666768697071727374757677787980818283


TUVWXYZ
84858687888990

a-z वर्णों के ASCII मान नीचे दिए गए हैं -

abcdefghijklmnopqrs
979899100101102103104105106107108109110111112113114115


tuvwxyz
116117118119120121122

उदाहरण के लिए

इनपुट - String str = "point"       First = 111, Last = 117 आउटपुट - दिए गए रेंज में आने वाले वर्ण हैं: p, o, t       गिनती: 3

व्याख्या - चूंकि p, o और t [111, 117] की रेंज में आते हैं, इसलिए इन वर्णों को गिना जाएगा।

इनपुट - String str = "ABCZXY"       First = 65, Last = 70 आउटपुट - दिए गए रेंज में आने वाले वर्ण हैं: A, B, C       गिनती: 3

व्याख्या - चूंकि A, B और C [65, 70] की रेंज में आते हैं, इसलिए इन वर्णों को गिना जाएगा।

नीचे दिए गए प्रोग्राम में उपयोग किया गया दृष्टिकोण

  • स्ट्रिंग, प्रारंभ और अंत मान इनपुट करें ताकि रेंज बनाई जा सके और इसे str जैसे चरों में संग्रहीत करें।

  • length() फंक्शन का उपयोग करके स्ट्रिंग की लंबाई की गणना करें जो स्ट्रिंग में स्पेस सहित अक्षरों की संख्या के अनुसार एक पूर्णांक मान लौटाएगा।

  • एक अस्थायी चर लें जो वर्णों की गिनती को संग्रहीत करेगा

  • लूप को i से 0 से शुरू करके i के स्ट्रिंग की लंबाई से कम होने तक शुरू करें

  • लूप के अंदर, जांचें कि क्या start, str[i] के बराबर या उससे कम है और str[i] end के बराबर या उससे कम है

  • अब, यदि शर्त सही है तो count को 1 से बढ़ाएं और str[i] प्रिंट करें

  • count लौटाएं

  • परिणाम प्रिंट करें

उदाहरण

#include <iostream>
using namespace std;

// रेंज [l, r] में ASCII मान वाले वर्णों की संख्या गिनने के लिए फंक्शन
int count_char(string str, int left, int right) {
    // गिनती को 0 से आरंभ करना
    int count = 0;
    int len = str.length();
    for (int i = 0; i < len; i++) {
        // गिनती बढ़ाएं
        // यदि मान कम है
        if (left <= str[i] and str[i] <= right) {
            count++;
            cout << str[i] << " ";
        }
    }
    // गिनती लौटाएं
    return count;
}

int main() {
    string str = "tutorialspoint";
    int left = 102, right = 111;
    cout << "Characters in the given range";
    cout << "\nand their count is " << count_char(str, left, right);
    return 0;
}

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो यह निम्नलिखित आउटपुट उत्पन्न करेगा -

Characters in the given range and their count is o i l o i n 6

  1. C++ प्रोग्राम: sin(x) और cos(x) का मान ज्ञात करना C++ प्रोग्राम: sin(x) और cos(x) का मान ज्ञात करना

    दिए गए कोण (angle) के लिए sin(x) और cos(x) के मान की गणना करना और परिणाम प्रदर्शित करना इस प्रोग्राम का उद्देश्य है। Sin(x) के लिए Sin(x) एक त्रिकोणमितीय फलन है जिसका उपयोग किसी कोण x के मान की गणना के लिए किया जाता है। सूत्र $$\sin (x) = \displaystyle\sum\limits_{k=0}^\infty \frac{(-1)^{k}}{(2k+

  1. - C++ में रेंज [A, B] में C से विभाज्य अधिकतम धनात्मक पूर्णांक

    यहां हम एक दिलचस्प समस्या देखेंगे। मान लीजिए हमारे पास तीन पूर्णांक A, B, और C हैं। हमें एक न्यूनतम पूर्णांक X ढूंढना है, जैसे कि X mod C = 0, और X रेंज [A, B] में नहीं है। यदि A, B और C के मान 5, 10 और 4 हैं, तो X का मान 4 होगा। समाधान प्राप्त करने के चरण: चरण − यदि C रेंज [A, B] में नहीं है

  1. - C++ में लिटरल और कॉन्स्टेंट में क्या अंतर है?

    एक लिटरल वह मान है जो स्वयं के रूप में व्यक्त किया जाता है। उदाहरण के लिए, संख्या 25 या स्ट्रिंग Hello World दोनों लिटरल हैं। एक कॉन्स्टेंट एक डेटा प्रकार है जो लिटरल को प्रतिस्थापित करता है। कॉन्स्टेंट्स का उपयोग तब किया जाता है जब किसी विशिष्ट, अपरिवर्तनीय मान का उपयोग प्रोग्राम के दौरान कई बार क