Сортировка массива по возрастанию суммы делителей элементов этого массива - QBasic
Формулировка задачи:
Задан массив, заполненный случайными целыми
положительными числами. Произвести его сортировку
в порядке возрастания сумм всех делителей каждого
элемента массива
примечание
Само число не считается для себя делителем.
DECLARE FUNCTION SD! (n!) CLS RANDOMIZE TIMER n = 12 DIM A(1 TO n) FOR i = 1 TO n A(i) = FIX(80 * RND) + 10 PRINT A(i); NEXT PRINT : PRINT FOR i = 1 TO n - 1 FOR j = i + 1 TO n IF SD(A(i)) > SD(A(j)) THEN SWAP A(i), A(j) NEXT j, i FOR i = 1 TO n PRINT A(i); NEXT END FUNCTION SD (n) FOR i = 2 TO n / 2 IF n MOD i = 0 THEN s = s + i END IF NEXT SD = s + 1 END FUNCTION
Код к задаче: «Сортировка массива по возрастанию суммы делителей элементов этого массива - QBasic»
FOR i=2 TO SQR(n)
6 голосов, оценка 4.167 из 5
СОХРАНИТЬ ССЫЛКУ