Расположить в массиве в(20) сначала все положительные а затем все отрицательные элементы...

0 голосов
124 просмотров

Расположить в массиве в(20) сначала все положительные а затем все отрицательные элементы массива а(20) БЕЙСИК


Информатика (15 баллов) | 124 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

'MS-DOS QBasic 1.0
DIM a(1 TO 20) AS SINGLE, b(1 TO 20) AS SINGLE
CLS
RANDOMIZE TIMER
PRINT "Massiv a"
j = 0
FOR i = 1 TO 20
   a(i) = 10 * RND - 5
   PRINT a(i);
   IF a(i) > 0 THEN
      j = j + 1
      b(j) = a(i)
   END IF
NEXT i
FOR i = 1 TO 20
   IF a(i) <= 0 THEN<br>      j = j + 1
      b(j) = a(i)
   END IF
NEXT i
PRINT
PRINT "Massiv b"
FOR i = 1 TO j
   PRINT b(i);
NEXT i
PRINT

Тестовое решение:
Massiv a
-1.726111  1.835247 -4.176585  4.217188  4.836039  4.953975  .551706  .2788973
-1.588834  1.447831  1.91242 -3.830101  3.318729  1.483444  .0306803 -.3601742
 1.934826  1.057516 -2.458627  .9090161
Massiv b
 1.835247  4.217188  4.836039  4.953975  .551706  .2788973  1.447831  1.91242
 3.318729  1.483444  .0306803  1.934826  1.057516  .9090161 -1.726111 -4.176585
-1.588834 -3.830101 -.3601742 -2.458627

(142k баллов)
0

А может проще отсортировать массив по убыванию и переслать в массив b ??

0

Конечно проще! Но о сортировке нигде не сказано, зато сказано, что нужно расположить сначала положительные, потом отрицательные. Откуда следует, что можно изменять порядок следования среди положительных и отрицательных элементов?

0

Понял. Спасибо.