Learn Typing Programming Basics SQL HTML CSS JavaScript Python C++ Java JavaFX Swing Computer Fundamentals English English Conversations Problem Solving

تحديات برمجية التحدي الثالث - حل التمرين الأول بلغة C++

المطلوب

قم بتعريف دالة إسمها CountWords, عند استدعاءها نمرر لها نص, فترجع عدد الكلمات الموجودة في هذا النص.
بعدها قم بتجربة هذه الدالة في البرنامج.

مثال: إذا قمنا باستخدام الدالة CountWords() و تمرير النص "Programming is easy to learn." فإنها سترجع الرقم 5.


الحل بلغة C++

#include <iostream>
#include <string>

int countWords(std::string s) {

	if (s.empty())
	{
		return 0;
	}

	int counter = 0;
	
	// هذه الإضافة سببها هو سواء كان يوجد مسافة فارغة في آخر النص أم لا يوجد, فإنها لن تؤثر على النتيجة
	s += " ";

	for (int i = 0; i < s.length() - 1; i++)
	{
		if (s[i] != ' ' && s[i+1] == ' ')
		{
			counter++;
		}

	}

	return counter;
}

int main() {

	std::string text = "Programming is easy to learn.";
	int numberOfWords = countWords(text);

	std::cout << "Total words: " << numberOfWords;

	char end; std::cin >> end;
	return 0;

}
		

سنحصل على النتيجة التالية عند التشغيل.

Total words: 5
		

الدورات

أدوات مساعدة

أقسام الموقع

دورات
مقالات كتب مشاريع أسئلة