Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> सी प्रोग्रामिंग

सी प्रोग्राम एक स्ट्रिंग में प्रत्येक अंक की आवृत्ति खोजने के लिए

मान लीजिए कि हमारे पास एक स्ट्रिंग s है। s में अक्षर और अंक दोनों होते हैं। हमें प्रत्येक अंक की आवृत्तियों को खोजना होगा और उन्हें प्रदर्शित करना होगा। ऐसा करने के लिए हम प्रत्येक अंक (0 से 9) के लिए आकार 10 की एक सरणी बना सकते हैं, शुरू में सभी तत्व सरणी के अंदर 0 होते हैं, फिर जब हम एक अंक का सामना करते हैं तो बस उस सूचकांक के मूल्य को बढ़ाते हैं और अंत में उन सभी को प्रिंट करते हैं। पी>

इसलिए, यदि इनपुट s ="we85abc586wow236h69" जैसा है, तो आउटपुट होगा (नंबर 2, फ़्रीक 1) (नंबर 3, फ़्रीक 1) (नंबर 5, फ़्रीक 2) (नंबर 6, फ़्रीक 3) (नंबर 8, आवृत्ति 2) (नंबर 9, आवृत्ति 1)

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

  • आकार की एक सरणी आवृत्ति परिभाषित करें:10 और सभी तत्वों को 0 के साथ प्रारंभ करें

  • इनिशियलाइज़ करने के लिए:=0, जब मैं <साइज़ ऑफ़ s, अपडेट (i 1 से बढ़ाएँ), यह करें:

    • यदि s[i] सांख्यिक है, तो:

      • फ़्रीक [s[i] - '0' का ASCII] 1 तक बढ़ाएँ

  • प्रारंभ करने के लिए मैं:=0, जब मैं <10, अद्यतन (मैं 1 से बढ़ाएँ), यह करें:

    • अगर freq[i]> 0, तब:

      • डिस्प्ले (नंबर i , फ़्रीक फ़्रीक[i])

उदाहरण

आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -

#include <stdio.h>
#include <string.h>
void solve(char *s){
    int freq[10] = {0};
    for(int i = 0; i < strlen(s); i++){
        if(s[i] >= '0' && s[i] <= '9'){
            freq[s[i] - '0']++ ;    
        }
    }
    for(int i = 0; i<10; i++){
        if(freq[i] > 0)
            printf("(Number %d, Freq %d)\n", i, freq[i]);
    }
}
int main(){
    char *s = "we85abc586wow236h69";
    solve(s);
}

इनपुट

"we85abc586wow236h69"

आउटपुट

(Number 2, Freq 1)
(Number 3, Freq 1)
(Number 5, Freq 2)
(Number 6, Freq 3)
(Number 8, Freq 2)
(Number 9, Freq 1)

  1. पायथन में एक स्ट्रिंग को विभाजित करने के तरीकों की संख्या खोजने के लिए कार्यक्रम

    मान लीजिए कि हमारे पास एक बाइनरी स्ट्रिंग है, हम s को 3 गैर-रिक्त स्ट्रिंग्स s1, s2, s3 में विभाजित कर सकते हैं जैसे कि (s1 concatenate s2 concatenate s3 =s)। हमें उन तरीकों की संख्या ज्ञात करनी है जिन्हें s विभाजित किया जा सकता है ताकि s1, s2, और s3 में वर्णों की संख्या 1 समान हो। उत्तर बहुत बड़ा ह

  1. पायथन का उपयोग करके एक स्ट्रिंग में विभिन्न पूर्णांकों की संख्या खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास एक लोअरकेस अल्फ़ान्यूमेरिक स्ट्रिंग s है। हम प्रत्येक गैर-अंकीय वर्ण को एक स्थान से बदलने के लिए दाढ़ी बनाते हैं, लेकिन अब हमारे पास कुछ पूर्णांक रह गए हैं जो कम से कम एक स्थान से अलग हो गए हैं। हमें s पर प्रतिस्थापन संक्रिया करने के बाद विभिन्न पूर्णांकों की संख्या ज्ञात करनी

  1. पायथन में एक स्ट्रिंग में प्रत्येक शब्द की आवृत्ति पाएं

    टेक्स्ट एनालिटिक्स के एक भाग के रूप में, हमें अक्सर शब्दों को गिनने और उन्हें विभिन्न एल्गोरिदम में प्रोसेसिंग के लिए वेटेज असाइन करने की आवश्यकता होती है, इसलिए इस लेख में हम देखेंगे कि हम किसी दिए गए वाक्य में प्रत्येक शब्द की आवृत्ति कैसे पा सकते हैं। जैसा कि नीचे दिखाया गया है, हम इसे तीन तरीकों