السلام
هذا برنامج عن simple linked list with head node ليستفيد منه الأعضاء
ماذا اقصد simple linked list with head node
هذا مثال عليها
10<-4<-3<-11<-1-<5
اول عصر من list من اليسار الذي هو رقم 5 يحتوي على عدد عناصر list ويعتبر head node of list وعند الطباعه لايطبع head node
شرح البرنامج ؟
=======
طريقة ادخال input تكون عبر ملف اسمه hw03.txt نقوم بوضع الأوامر التي نريدها ويقوم البرنامج بالعمليات التاليه :
======================================================
a x
which main add integer x to list
d y
which mean delete integer y from list
p
which mean print the current list
s
which mean print the summation of current list
c
which mean print number of element in list
n
which mean create new list
g z
which mean create list of first z prime number
e.g
when z=4
the list is
7<-5<-3<-2<-4
وهذا مثال للأوامر التي تكون داخل الملف hw03.txt
========================
a 3
ادخل الرقم 3 داخل list في نهاية list واذا كانت موجود لاتدخله
d 3
احذف العنصر 3 من list واذا لم يكن موجود اطبع مسج انه غير موجود
p
اطبع list
s
اطبع مجموع العناصر داخل list
c
اطبع عدد العناصر داخل list
q
خروج من البرنامج
g 3
ادخل اول ثلاث عناصر تكون prime وتكون بدايه من رقم 2
n
أنشأ خليه جديده
وحبيت اقولكم على شغلتين :
=============
1-قبل بداية البرنامج يحب ان أدخل على while loop يجب ان انشأ خليه جديده لتنفيذ عليها عمليات مختلفه.
2-عند القيام بادخال n or g 3يجب مسح جميع محتويات الlist سابقه بواسطة الداله deleteAllList
مثال على ذلك:
عندما نقرا من الملف hw03.txt الاوامر التاليه
a 1
a 2
a 3
هناك تتكون لدينا list من 3 عناصر كالتالي
3<-2<-1<-3 حيث الرقم 3 من اليسار هو الذي يحتوي على عدد عناصر list
وعندما ادخل بعد a 3
g 3
تختفي محتويات list السابقه وتتكون لدينا الجديده 5<-3<-2<-3 حيث تحتوي على اول 3 ارقام أوليه( prime)
وكذلك ينطبق الحال عدنما ادخل n.
وفي شفله بعد
وهي موجوده بالبرنامج
int AC=0; // how many times allocate was called.
int DC=0; // how many times deallocate() was called.
هالعنصرين يحسبون جم سوينا new & delete بالبرنامج في نهاية البرنامج ينطبعون
وكل مانريد نعمل new or delete بالبرنامج تكون عبر الدالتين التاليتين:
deallocate for delete operation
allocate for new operation
وأي سؤال انا حاضر للشرح
يلا
سلملم ;)