В
Все
У
Українська література
Г
Геометрия
Д
Другие предметы
Э
Экономика
Г
География
О
ОБЖ
М
Математика
М
МХК
Х
Химия
Қ
Қазақ тiлi
Л
Литература
У
Українська мова
О
Обществознание
Ф
Физика
А
Английский язык
А
Алгебра
И
История
Б
Беларуская мова
Б
Биология
М
Музыка
П
Право
И
Информатика
П
Психология
В
Видео-ответы
Н
Немецкий язык
Ф
Французский язык
О
Окружающий мир
Р
Русский язык
AnfisaCat
AnfisaCat
21.09.2022 08:30 •  Информатика

Дан массив n*m. удалить 3 строку. на qbasic

Ответ:
Shamorinka
Shamorinka
05.10.2020 16:35
MS DOS QBasic 1.0

DIM n AS INTEGER, m AS INTEGER
CLS
INPUT "n,m=", n, m
IF n < 3 THEN
   PRINT "n<3"
   SYSTEM
END IF
REDIM a(1 TO n, 1 TO m) AS INTEGER
RANDOMIZE TIMER
FOR i = 1 TO n
   FOR j = 1 TO m
      a(i, j) = INT(50 * RND)
      PRINT USING "###"; a(i, j);
   NEXT j
   PRINT
NEXT i
PRINT
FOR i = 4 TO n
   FOR j = 1 TO m
      a(i - 1, j) = a(i, j)
   NEXT j
NEXT i
FOR i = 1 TO n - 1
   FOR j = 1 TO m
      PRINT USING "###"; a(i, j);
   NEXT j
   PRINT
NEXT i

Пример

n,m=5,8
 43  6 19 48 44  6 28 10
  5 48 44  1 31 30 25 33
 19 30 46 27 29 34 45  8
 17 37 43  1 37 46 25 45
 48 48 27 21 36 48 44 37

 43  6 19 48 44  6 28 10
  5 48 44  1 31 30 25 33
 17 37 43  1 37 46 25 45
 48 48 27 21 36 48 44 37

Замечание
Поскольку QBasic не поддерживает сохранение содержимого при изменении размеров динамического массива, для упрощения было решено не заниматься созданием вс массива, копирования в него всех строк, кроме последней, затем изменение размера исходного массива и обратное копирование в него. Просто считается, что n уменьшилось на 1.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?