Главная
Решение задач.
Справочные данные.
Формулы.
Программирование.
Как в Windows?
Разное.
Утилиты Windows.
Несправности принтеров.
BIOS по алфавиту.
Тесты.
Карта сайта.
|
Сортировка массива методом Шелла.
10 lens = 10: REM Количество элементов массива
20 diap = 100: REM Диапазон значений
30 DIM A(lens)
40 mit = 0: REM Переменная для перестановки
50 st = 0: REM Шаг
60 i = 0
70 j = 0
80 CLS
90 RANDOMIZE (time): REM Инициализация случайного выбора
100 FOR i= 1 ТО lens
110 A(i) = INT(RND*diap): REM Заполнение массива
120 NEXT i
130 st = lens\2: REM Вычисление шага
140 FOR i=1 TO lens
150 PRINT A(i);" ";: REMРаспечатка массива
160 NEXT i
170 PRINT
180 IF st <= 0 GOTO 340
190 REM Основной цикл с уменьшением шага
200 FOR j = lens - st TO 1 STEP -1: REM Цикл по массиву
210 i = j
220 IF i > lens - st GOTO 310: REM Цикл сравнения через шаг
230 REM Если больше, то элементы меняются местами
240 IF A(i) > A(i + st) THEN mit = A(i): A(i) = A(i + st): A(i + st) = mit
250 i = i + st
260 GOTO 260
270 NEXT j
280 st = st \ 2: REM Уменьшение шага
290 GOTO 220
300 FOR i = 1 TO lens
310 PRINT A(i);" ";
320 NEXT i
330 END
Web программирование Pascal&Delphi Бeйсик
|
|
|