الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

طلب امثلة

مغلق
بدأه igi2000 في 4 نوفمبر 2005 · 11 رد · 1,114 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

اخواني انا اتعلم السي بلس بلس ووصلت لمرحلة البرمجة كائنية التوجيه وتعمقت فيها

فأرجوا إذا كان في واحد عنده فكرة مثال يعطيني اياه وانا ابرمجه إن شاء الله

بشرط أن لا اعرض هذه الامثلة على المنتدى (يعني حتى اتعود على البرمجة)

والسلام عليكم

اخوكم زيد

تم تعديل هذه المشاركة بواسطة igi2000 في 4 نوفمبر 2005 في 01:05

#2

يوجد مثال متقدم نسبياً على المبتدئين ولكن لو تنجح في حله .. فأنت بالفعل سيكون لك مستقبل

بالاعتماد على معلومات السلاسل في لغـة السي .. قم بكتابة كلاس شبيه بأنماط البيانات وقم بتسميته بالاسم string .. يتميز بقدرته على حل مشاكل الكتابة خارج حدود السلسلة .. وعلى قدرته على البحث عـن حرف أو كلمة معينـة وعـلى قدرتـه على مسح حرف أو رقم عـنصر من السلسلة

باختصار شبيه بالكلاس string الموجود في مكتبة القوالب القياسية string ...

أقل شيء ومع المراعاة في عدد الأسطر 150 سطر

#3

السلام عليكم

شكرا اخي سلطان

بس كنت اتمنى امثلة اقل تقدما بشوي

انا ا اقدر احله مع قليل من التفكير

بس خطوة خطوة وبعدين

فأرجوا امثلة على قد روحنا

للآن ما جربت احله

فارجو امثلة متوسطة(بين البيسط والصعب)

وشكرا

اخوك زيد

تم تعديل هذه المشاركة بواسطة igi2000 في 7 نوفمبر 2005 في 19:54

#4

المثال ليس صعباً فقط فكر و حاول أن تبحث فيجب أن يضيف المثال أشياء جديدة الى معلوماتك

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#5

أخي العـزيز igi2000 .... حتى تستطيع أن تحل هذا المثال فعليك أن تكون عارفاً بموضوع التحـميل الزائد للمعاملات....

إذا أردت البدء بحل المثال فبإمكاني إخبارك عـن المشاكل التي ستواجهـك أو كيفية تصميم مثل هذا الكلاس

#6

السلام عليكم

اخي انا عارف بموضوع التحميل الزائد للمعاملات

انا بدأت من امس بالحل واذا احتجت شي ما اتردد بطلبه إن شاء الله

#7

ونحن معـك

#8

شكرا اخي سلطان

بس ممكن تشرح الكلاس لي قبل البدء وتخبرني عن المشاكل التي ستحصل لي

لأنه الصراحة حصلت لي مشكلة بس ابدأ انت

وبعد ما تخلص اقلك

وشكرا

#9

أخوتي لدي طلب بسيط إذا ذكرتم مصطلح بالعربي ياليت تذكروه بالانجليزي

لاني فعلا اضيع وماعرف وش تقصدون بالسلاسل والاشياء هذي

عشان الكل يستفيد اذكروه بالعربي والانجليزي

(( واسفة على تطفلي))

#10

ليس هـناك أي تطفل أختي مبرمجـة C++ الذي أقصده بالسلاسل هـو strings ....

===========================================

أخ igi2000 :

أول شيء لا بد أن تعرفـه أن الكلاس string الذي ستصنعـه سيقوم بتغيير حجمـه دائماً بناءً على الجملة أو السلسلة أو الكلمة التي تريد تخزينه فيها.....

فمثلاً قد يأتي مستخدم الكلاس ، ويكتب:

string a=" s";
a="bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";

في السطر الأول لم يوجد إلا حرف واحد فقط , ثم قمنا بعـملية إعادة إسناد ليصل حجم الكلاس إلى 100 حرف أو أكثر....

هذه هـي أول مشكلة ستقابلها تغيير حجم الكلاس حسب الطلب ... وسيلتك إلى ذلك هي المؤشرات....

الآن عليك أن تعرف ما هي مكونات الكلاس string ، وحسب رأيي فإن أول مكون هـو مؤشر char ... وستقوم دائماً بتغيير حجمـه عبر الطلب.. بإمكانك إطلاق مسمـى pString على هذا المؤشر..

فمثلاً إذا قام المتسعـمل (مستعمل الكلاس) بكتابة هذا الأمر:

string a="xxxxxxxxx";
a="Ahmed";

فإن من المفترض على الكلاس أن يقوم في السطر الأول بتخـزين السلسلة xxxxxxxxxxxxxx داخل المؤشر pString .. عليه أولاً أن يقوم بعـدّ الأحرف الذي يريد المستخدم تخزينها ثم يحجز ذاكرة للمؤشر pString حسب عدد الأحرف ويقوم بتخزين المحارف فيها....

نأتي الآن إلى السطر الثاني وعـما سيفعله الكلاس سيقوم أولاً بإلغاء المؤشر pString ... ثم يقوم بعـد الأحرف الموجودة في السلسلة Ahmed ويحجز ذاكرة جديدة للمؤشر pString ويخزن فيها السلسلة Ahmed .......

لا تنسى أيضاً أن المؤشر pString هـو مصفوفة ديناميكية تنتهي بالمحرف الصفري ....

أيضاً أتـمنى أن تقول ما هي المشاكل أو المشكلة التي واجهتها

لا تنسى أيضاً بأنه يجب عليك أن يكون لديك خبرة كافية في التعامل مع السلاسل في لغـة السي.... وشكراً

#11

السلام عليكم

اخي سلطان انا ليست لدي ادنى خبرة بلغة السي (لا سلاسل ولا هم يحزنون )

لانه ليس من الضروري تعلم لغة السي لاتقان السي بلس بلس (اليس كذلك)

فهل لدي فرصة لعمل الكلاس

واسف على تأخر الرد لأني مشغول جدا جدا هذي الايام

#12

نعـم ليس هـناك ضرورة .. ولكن في الغالب تجد أن من يتقن السي بلس بلس يتقن لغـة السي....

بالنسبة لموضوع السلاسل في لغـة السـي فهـو نفسـه في لغـة السي بلس بلس ، ليس هـناك فرق ... لا جـديد في لغـة السي بلس بلس عـن السلاسل في لغـة السي ... ربما فقط وجود الكلاس string ، وحتى هذا الكلاس فأغلب تركيبـه هـو الدوال الموجودة في لغـة السي...

أهـم شيء يجب أن تعرفـه أن أي سلسلة string في لغـة السي أو لغـة السي بلس بلس يجب أن تنتهي بالمحرف الصفري ' 0\ ' ، إذا لم تضعـه في نهاية السلسلة فلن يعرف البرنامج أنك تتعامل مع سلسلة ...

هذه هي أهـم معلومـة في الكلاس string ... بإمكانك الاستمرار في كتابة وإنشاء هذا الكلاس بدون أي مشاكل حتى من غير معرفة مسبقة بالسلاسل في لغـة السي (غير انتهاءها بالمحرف الصفري) لن يكون هـناك أي مشاكل ولكن سيزيد وقتك وستضطر لمعالجـة مشاكل لن يكون لها أي داع لو استخدمت الدوال الموجودة في لغة السي

هذا الموضوع مغلق.

مواضيع مشابهة