Метод пузырька, как уменьшить число полных циклов при сортировке? - QBasic

Узнай цену своей работы

Формулировка задачи:

как можно доработать программу, чтобы уменьшилось кол-во полных циклов(проходов) при сортировке?

Решение задачи: «Метод пузырька, как уменьшить число полных циклов при сортировке?»

textual
Листинг программы
   rem массив A(n)
 
   DO
 
       c=0
 
       FOR i=1 TO n-1
           IF A(i) > A(i+1) THEN 
              SWAP A(i),A(i+1) 
              c=c+1
           END IF
       NEXT i
 
       IF c=0 THEN EXIT DO '::: Если перестановок не было - массив отсортирован
 
   LOOP

Объяснение кода листинга программы

  1. Массив A(n)
  2. Цикл DO с ограничением на количество полных циклов (вероятно, 20)
  3. Переменная c инициализируется значением 0
  4. Цикл FOR i=1 TO n-1
  5. Если A(i) больше A(i+1), то происходит перестановка элементов A(i) и A(i+1)
  6. Значение переменной c увеличивается на 1
  7. Цикл FOR завершается
  8. Если переменная c равна 0, то цикл DO завершается (массив отсортирован)
  9. Цикл LOOP начинается заново с пункта 3

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.154 из 5
Похожие ответы