Сортировка символьного массива по алфавиту - QBasic
Формулировка задачи:
Доброго времени суток. Есть вопрос по одной задачке.
Условие. Дан массив с фамилиями. Цель - отсортировать его по алфавиту.
Я додумался только до того, как отсортировать по первой букве. Заполнил еще один массив с буквами алфавита и при помощи сравнения с ним отсортировал. но проблема в том, что при совпадении первой буквы, нужно проверять по второй, третьей и так далее. тут моих знаний не хватило)
Прошу вашей помощи по этому вопросу. если вам не хочется писать сам код, помогите хотя бы советом, а дальше я сам.
Решение задачи: «Сортировка символьного массива по алфавиту»
textual
Листинг программы
DEFSTR A DEFINT I-J OPTION BASE 1 DIM A(n) FOR j=1 TO n-1 FOR i=1 TO n-1 IF A(i)>A(i+1) THEN AR=A(i) A(i)=A(i+1) A(i+1)=AR END IF NEXT i NEXT j END
Объяснение кода листинга программы
- DEFSTR A - объявление переменной A типа строка
- DEFINT I-J - объявление переменных I и J типа integer
- OPTION BASE 1 - установка основания системы счисления в 10
- DIM A(n) - объявление массива A размером n, где n - количество элементов в массиве
- FOR j=1 TO n-1 - цикл, который выполняется n-1 раз
- FOR i=1 TO n-1 - вложенный цикл, который выполняется n-1 раз
- IF A(i)>A(i+1) THEN - проверка, больше ли элемент A(i) элемента A(i+1)
- AR=A(i) - присваивание значения A(i) переменной AR
- A(i)=A(i+1) - присваивание значения A(i+1) элементу A(i)
- A(i+1)=AR - присваивание значения AR элементу A(i+1)
- END IF - закрытие условного оператора
- NEXT i - переход к следующему циклу
- NEXT j - переход к следующему циклу
- END - конец программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д