اذهب إلى المحتوى
  • 0

دالة بلغة c++ لإستقبال سلسلة حرفية و حساب عدد الفراغات فيها؟

زيدان محمد

السؤال

Recommended Posts

  • 0

يمكنك تنفيذ المطلوب من خلال عدة خطوات

  • استخدام الدالة getline() لاستقبال النص 
  • ثم نستخدم  For() loop لحساب عدد الفراغات في النص عن طريق المرور على عناصر النص المدخل وإذا وجد مسافة في اي دورة يتم زيادة عدد الفراغات ويجب أن يبدأ من الصفر

كما في المثال التالي

#include<iostream>
#include<string>
using namespace std;
int main()
{
        string s;
        int a,i,count=0;
 
        cout<<"Enter The String: ";
        getline(cin,s);
 
        a=s.size();
 
        for(i=0;i<a;i++)
       {
                if(s[i]==' ')
                {
                  count++;
                }
       }
 
        cout<<" The Number Of Spaces In The String: "<<count;
 
        return 0;
}

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

في حال كان الدخل عبارة عن سلسلة نصية فقط، يمكن القيام بذلك عن طريق ما يلي:

#include <iostream>

using namespace std;

int main(){
 string s;
 int cnt = 0;
 while(cin >> s) cnt++;
 
 cout << cnt - 1 << endl;
  
  
}

حيث أن ال cin تقوم بالإدخال و تقف عند الفراغ، بالتالي عدد الفراغات سيساوي عدد الكلمات ناقص 1.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

اهلا زيدان,

هذه هي دالة في لغة الـ C++ تستلم سلسلة حروف وتحسب عدد الفراغات فيها:

 

#include <iostream>
#include <string>

int countSpaces(std::string str) {
    int count = 0;
    for (int i = 0; i < str.length(); i++) {
        if (str[i] == ' ') {
            count++;
        }
    }
    return count;
}

int main() {
    std::string str = "Hello, World!";
    std::cout << "Number of spaces in \"" << str << "\": " << countSpaces(str) << std::endl;
    return 0;
}

 

تستخدم الدالة for loop لتجربة مراجعة لكل حرف من السلسلة الإدخالية. إذا كان الحرف الحالي فراغاً (' ')، فسيتم زيادة متغير count. يتم إرجاع العدد النهائي للفراغات عن طريق الدالة.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...