استعمل الخوارزم.وسائط.شاشة؛
(۩۩
def bubble_sort(lst) -> list:
for element in lst:
for element_idx in range(len(lst)):
if element_idx < (len(lst) - 1):
if lst[element_idx] > lst[element_idx + 1]:
temp = lst[element_idx + 1]
lst[element_idx + 1] = lst[element_idx]
lst[element_idx] = temp
return lst
۩۩)
الدالة رتب (مصفوفة ۢصحيح) {
المتغير الفهرس_الخارجي صحيح طبيعي؛
المتغير الفهرس_الداخلي صحيح طبيعي؛
لاجل الفهرس_الخارجي := 0؛ الفهرس_الخارجي < طول(مصفوفة)؛ الفهرس_الخارجي := الفهرس_الخارجي + 1 {
لاجل الفهرس_الداخلي := 0؛ الفهرس_الداخلي < طول(مصفوفة)؛ الفهرس_الداخلي:= الفهرس_الداخلي + 1 {
اذا الفهرس_الداخلي < (طول(مصفوفة) + 1) {
اذا مصفوفة[الفهرس_الداخلي]> مصفوفة[الفهرس_الداخلي + 1] {
المتغير المتغير_المؤقت صحيح := مصفوفة[الفهرس_الداخلي + 1]؛
مصفوفة[الفهرس_الداخلي + 1] := مصفوفة[الفهرس_الداخلي]؛
مصفوفة[الفهرس_الداخلي] := المتغير_المؤقت؛
}
}
}
}
}
الدالة الاصل () {
المتغير أرقام [] صحيح := [5، 4، -2، 8، 9، 0]؛
المتغير فهرس صحيح طبيعي؛
اكتب("قبل الترتيب: /س")؛
لاجل فهرس := 0؛ فهرس < طول(أرقام)؛ فهرس := فهرس + 1 {
اكتب(أرقام[فهرس])؛
اكتب('/س')؛
}
رتب(ارقام)؛
اكتب("بعد الترتيب: /س")؛
لاجل فهرس := 0؛ فهرس < طول(أرقام)؛ فهرس:= فهرس + 1 {
اكتب(أرقام[فهرس])؛
اكتب('/س')؛
}
}
لا يطبع شيئا...ما العلل هنا؟