Отсортировать слова по количеству букв - QBasic

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

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

Задан одномерный массив слов А длины М. Слова составлены из символов. Отсортировать слова по количеству букв: самое короткое слово должно быть в начале массива, самое длинное - в конце. Слова с одинаковым количеством букв должны быть упорядочены по алфавиту. Помогите пожалуйста

Решение задачи: «Отсортировать слова по количеству букв»

textual
Листинг программы
CLS
RANDOMIZE TIMER
DIM A(1 TO 10) AS STRING
DIM n AS INTEGER
DIM m AS INTEGER
 
FOR i = 1 TO 10
   n = 1 + 9 * RND
   FOR j = 1 TO n
      m = 128 + 31 * RND
      A(i) = A(i) + CHR$(m)
   NEXT j
   PRINT A(i)
NEXT i: PRINT : PRINT
 
FOR i = 1 TO 9
FOR j = 1 TO 9
   IF LEN(A(j)) > LEN(A(j + 1)) THEN SWAP A(j), A(j + 1)
NEXT j, i
 
FOR i = 1 TO 9
FOR j = 1 TO 9
   IF LEN(A(j)) = LEN(A(j + 1)) AND A(j) > A(j + 1) THEN
      SWAP A(j), A(j + 1)
   END IF
NEXT j, i
 
FOR i = 1 TO 10
   PRINT A(i)
NEXT i
END

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

  1. Объявлены переменные:
    • A(1 TO 10) AS STRING - массив из 10 строк
    • n AS INTEGER - переменная для хранения количества букв в строке
    • m AS INTEGER - переменная для хранения кода буквы
    • i, j - индексы для обхода массива
  2. Заполнение массива A строками случайным образом
  3. Вывод на экран содержимого массива A
  4. Сортировка массива A по длине строки:
    • Первая сортировка по возрастанию длины строки
    • Вторая сортировка по убыванию длины строки и алфавиту (большие буквы после маленьких)
  5. Вывод на экран отсортированного массива A

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


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

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

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