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

ساعدوني في المصفوفات لو سمحتم

بدأه BUTCHI في 6 مايو 2009 · 4 رد · 684 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

يا جماعة انا مطلوم مني اني اعمل بي السي بلس بلس كود

يعمل الآتي

اني اعمل فايل وادخل في اسماء الطلاب وارقامهم والسنه الي هما فيها

وعشان اعمل كده

انا محتاج (index file)

عشان ارتبهم واعرضهم للمستخدم بالرقم بتاع الطالب

والكلام ده كلو

انا عرفت انو انا هجيب طول الريكورد بواسطة tellp()

وبعدين احطها في array

وبعدين اجيب رقم الطالب

واحطو في array

نفس الاآريي الي فات

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

وبعدين طبعا هنسخ الحاجات الي في المصفوفة الي فايل آخر وتعاملي هيبقى مع الفايل ده

من حيث اظهار العشر الأوائل على حسب التراكمي

او حدف طالب

وشكرا

#2

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

لديك نوعين من الملفات تستطيع التعامل معهم ، ملفات تتابعيه تستطيع فيها الاضافه وعمليه التعديل والحذف غير جيده ،، حيث لا يوجد وصول مباشر ،، النوع الأخر binary وهو الذي تستطيع فيه الوصول لأي منطقه ، فقط تحدد البايت الذي تريد الوصول اليه ..

أولا عليك بعمل Record يكون بطول معين ،، مثلا 5 حروف لأسم الطالب ، ورقم int لرقم الطالب ، ومثلا 5 أحرف للسنه الحاليه ،، بالتالى يكون حجم السجل بالكامل هو 5+5+4 = 14 بايت .. طبعا بفرض أنك ببتعامل مع ansi character ..

الأن بعد عمل السجل ، قم بكتابه في الملف بالداله المخصصه للكتابه ،، تريد التعديل على الطالب رقم 5 ، كل ما عليك هو معرفه أين موقع ذلك الطالب في الملف وذلك بحساب 5*14 ويخرج لك البايت الذي يبدأ فيه سجل ذلك الطالب وتبدأ بالقرائه من هنا ..

تريد ترتيب جميع السجلات ، أقرا الملف بالكامل في مصفوفه من السجلات ، رتب تلك المصفوفه باستخدام أحدى دوال الترتيب ، ورجع الناتج من المصفوفه ..

تريد حذف طالب ، هنا سوف تبدأ المشاكل :) ،،

يمكن أن تقوم كما في التعديل ولكن قم بتصفيير جميع المعلومات في تلك الخانه ..

يمكن أن تقوم بقرائه كل محتويات الملف ما عدا سجل الطالب المحذوف ، وقم بانزال المحتويات مره أخرى .

قد توجد طرق أخرى غير ذلك ،،

هذه الفكره العامه ،، جرب وهات المحاوله ولن يقصر الشباب ان شاء الله ،،

بالتوفيق ،

http://informatic-ar.com منصة تعليمية عربية في علوم الحاسب والبرمجة

https://moalfat.com  للكتب الالكترونية والكورسات التعليمية

Everything we see now is just an engineering solution based on old science

#3

اخوي هو فعلان انا بدأ في الشروع وكنت عامل كل الي قولتلي عليه

وكتبت في الفايل

واستخدمت fexed lingth

عشان تحديد طول الريكورد

انا كل الي عايزو يعني ازاي استخدم tellp()

عشان جيب رقم الريكورد واحطو في آرايي

والكلام الي انا قولتو فوق وشكرا لردك عليا

#4

الداله tellp ترجع الموقع الحالي في الملف ،، ولن تستطيع من خلالها الذهاب لموقع معين ،،

الداله seekp تستخدم للذهاب للموقع المعين التي ترسله لها كمعامل ..

انظر للأخر مثالين هنا :

http://www.cplusplus.com/doc/tutorial/files/

بالتوفيق ،

http://informatic-ar.com منصة تعليمية عربية في علوم الحاسب والبرمجة

https://moalfat.com  للكتب الالكترونية والكورسات التعليمية

Everything we see now is just an engineering solution based on old science

#5

السلام عليكــم ورحمـة الله وبركاتــه ،،

اخي الفاضل

اتمنى ان تجد اجابتك في الروابط التي بتوقيعي

لكم مني خالص التقدير

*********************

دروس الاكسس

قاعدة بيانات بالسي++

قاعدة بيانات اخرى بالسي++

الفريق العربي للبرمجه

*********************

كان الله في عون العبد مادام العبد في عون اخيه

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