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

C# में स्ट्रिंग में स्वरों और व्यंजनों की गिनती

स्ट्रिंग में स्वरों (vowels) और व्यंजनों (consonants) दोनों की गिनती के लिए हम प्रत्येक कैरेक्टर को जांचते हैं: क्या यह स्वर है? क्या यह अक्षर है लेकिन स्वर नहीं? (व्यंजन)।

उदाहरण

using System;

public class Demo {
    public static void Main() {
        string myStr = "Jack Sparrow";
        int vowel_count = 0, cons_count = 0;
        int len = myStr.Length;

        for (int i = 0; i < len; i++) {
            char c = myStr[i];

            if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u' ||
                c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U') {
                vowel_count++;
            }
            else if ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z')) {
                cons_count++;
            }
            // स्पेस, अंक, प्रतीक नजरअंदाज किए जाते हैं
        }

        Console.Write("\nVowel in the string: {0}\n", vowel_count);
        Console.Write("Consonant in the string: {0}\n\n", cons_count);
    }
}

आउटपुट

Vowel in the string: 3
Consonant in the string: 8

बेहतर दृष्टिकोण: Char मेथड्स का उपयोग

foreach (char c in myStr) {
    if (char.IsLetter(c)) {
        char lower = char.ToLower(c);
        if (lower == 'a' || lower == 'e' || lower == 'i' || lower == 'o' || lower == 'u')
            vowel_count++;
        else
            cons_count++;
    }
}

LINQ के साथ

using System.Linq;

string vowels = "aeiouAEIOU";
int vowelCount = myStr.Count(c => vowels.Contains(c));
int consonantCount = myStr.Count(c => char.IsLetter(c) && !vowels.Contains(c));

यूनिकोड/अंतर्राष्ट्रीय वर्णमाला के लिए

// char.IsLetter यूनिकोड अक्षरों को पहचानता है
// लेकिन स्वर/व्यंजन वर्गीकरण जटिल है
// सरल दृष्टिकोण: लैटिन-आधारित भाषाओं के लिए सामान्यीकृत करें
string normalized = myStr.Normalize(NormalizationForm.FormD);
var baseChars = normalized.Where(c => char.GetUnicodeCategory(c) != UnicodeCategory.NonSpacingMark);

मुख्य बिंदु

  • स्पेस, अंक, विराम चिह्न न तो स्वर हैं न व्यंजन।
  • char.IsLetter यूनिकोड अक्षरों के लिए काम करता है।
  • केस-इनसेंसिटिव जांच के लिए char.ToLower या ToUpper उपयोग करें।
  • 'y' को स्वर माना जाए या नहीं, आवश्यकताओं पर निर्भर करता है।
  1. Python प्रोग्राम से सेट का उपयोग करके दी गई स्ट्रिंग में स्वरों की संख्या गिनना Python प्रोग्राम से सेट का उपयोग करके दी गई स्ट्रिंग में स्वरों की संख्या गिनना

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक स्ट्रिंग दी गई है, हमें सेट का उपयोग करके दी गई स्ट्रिंग में स्वरों की संख्या गिनने की आवश्यकता है। यहां हम पूरी स्ट्रिंग को पार करते हैं और जांचते हैं कि प्रत्येक वर्ण स्वर है या नहीं और काउंट बढ़ाते हैं। आ

  1. - पायथन प्रोग्राम: सेट का उपयोग करके दिए गए स्ट्रिंग में वॉवेल्स की संख्या गिनना

    इस प्रोग्राम में, एक यूजर इनपुट स्ट्रिंग दी गई है। हमें इस स्ट्रिंग में वॉवेल्स की संख्या गिननी है। यहां हम पायथन में सेट का उपयोग करते हैं। सेट एक अनऑर्डर्ड कलेक्शन डेटा टाइप है जो इटरेबल, म्यूटेबल है और इसमें कोई डुप्लिकेट एलिमेंट्स नहीं होते।उदाहरणInput str1=pythonprogram Output 3एल्गोरिदमचरण 1:

  1. - पायथन प्रोग्राम: सेट का उपयोग करके दिए गए स्ट्रिंग में वॉवेल्स की संख्या गिनना

    इस प्रोग्राम में, एक यूजर इनपुट स्ट्रिंग दी गई है। हमें इस स्ट्रिंग में वॉवेल्स की संख्या गिननी है। यहां हम पायथन में सेट का उपयोग करते हैं। सेट एक अनऑर्डर्ड कलेक्शन डेटा टाइप है जो इटरेबल, म्यूटेबल है और इसमें कोई डुप्लिकेट एलिमेंट्स नहीं होते।उदाहरणInput: str1=pythonprogram Output: 3एल्गोरिदमचरण 1