المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : liste chaine ??


malak54
2015-11-02, 20:41
ممكن تصحيح حلي الخاص و شكراا :) :)
action trier (varl : liste )
var p,q: liste;
x:entier;
trouve:boolean;
debut
p:=l;
q:=l^.succ;
tq (p<>nil) et ( trouve=faux) fair
si p^.val>q^.val alors
x:=p^.val;
p^.val:=q^.val;
q^.val:=x;
trouve:=vrai;
fin si;
p:=p^.succ;
q:=q^.succ;
fin tq;
fin .




lprofe 9ali akii ghal6a mais masa7olich :/ plzzzzzzzzz 9ololi win la faut et mrc khawtii

حمزة_89
2015-11-03, 10:27
وعليكم السلام

الشرط الموضوع في :

tq (p<>nil) et ( trouve=faux) fair

يعني لازم يتحقق الشرطان مع بعض لكي يدخل في الحلقة التكرارية TQ

و لو فرضنا ان liste هي 5,3,1,4,2 ( اتجاه ال list من اليسار الي اليمين )

عند دخول خوارزميتك للمرة الأولى ستغير مكان 5 و 3 لتصبح 3,5,1,4,2

وتغير أيضا trouve الى vrai وهنا عندما تحاول الدخول الى الحلقة التكرارية مرة أخرى تجد الشرط غير متوفر

( أنت واضع يجب ان لاتكون نهاية اللائحة و لاتكون قيمة trouve هي faux مع بعض ، يعني يجب ان يتحقق الشرطان معا)

-----
أنا لا أرى داعي لاستخدام trouve

أن كانت غاب عني شيء فنبهني واعذرني

و الله أعلم

malak54
2015-11-03, 18:21
شكراا على الشرح اخي بارك الله فيك :)

Abe_sparrow1
2015-11-04, 21:31
ما هو الهدف من هذا الإجراء؟

حمزة_89
2015-11-09, 13:36
ما هو الهدف من هذا الإجراء؟

الهدف من هذا الاجراء هو ترتيب لائحة ( List )

يعني كما شرحت سابقا 5,3,1,4,2 ( اتجاه ال list من اليسار الي اليمين )

ستصبح بعد الترتيب 1،2،3،4،5 ( اتجاه ال list من اليسار الي اليمين )