Сформировать массив В из элементов строк массива А, в которых нули и единицы не чередуются - QBasic
Формулировка задачи:
Задан двумерный массив А целых чисел из М строк и N столбцов.Массив состоит из нулей и единиц. Сформировать новый одномерный массив В мз элементов тех строк массива А,в которых нули и единицы не чередуются. Из массива В удалить те нули,которые окружены единицами и указать количество удаленных нулей.
Решение задачи: «Сформировать массив В из элементов строк массива А, в которых нули и единицы не чередуются»
textual
Листинг программы
- CLS
- RANDOMIZE TIMER
- m = 15
- n = 3
- DIM A(1 TO m, 1 TO n) AS INTEGER
- DIM X(1 TO m) AS INTEGER
- FOR i = 1 TO m
- FOR j = 1 TO n
- A(i, j) = RND
- PRINT USING "###"; A(i, j);
- NEXT j: PRINT
- NEXT i: PRINT
- FOR i = 1 TO m
- FOR j = 1 TO n - 1
- IF A(i, j) = A(i, j + 1) THEN
- k = k + 1
- X(i) = 1
- EXIT FOR
- END IF
- NEXT j, i
- IF k > 0 THEN
- p = 1
- DIM B(1 TO k * n) AS INTEGER
- FOR i = 1 TO m
- IF X(i) = 1 THEN
- FOR j = 1 TO n
- B(p) = A(i, j)
- p = p + 1
- NEXT j
- END IF
- NEXT i
- FOR i = 1 TO k * n
- PRINT B(i);
- NEXT i
- FOR i = 2 TO k * n - 1
- IF B(i) = 0 AND B(i - 1) + B(i + 1) = 2 THEN
- FOR j = i TO k * n - 1
- B(j) = B(j + 1)
- NEXT j
- p0 = p0 + 1
- END IF
- NEXT i
- LOCATE 12, 20
- PRINT "NULLi ="; p0
- LOCATE 20, 1
- FOR i = 1 TO k * n - p0
- PRINT B(i);
- NEXT i
- END IF
- END
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д