Переведите, пожалуйста код с Паскаля на QBasic и отредактируйте код под условие задачи
Формулировка задачи:
Ниже расположено условие задачи.
Даны натуральное числоm
, целые числа и целочисленная квадратная матрица порядкаm
. Строку с номером матрицыi
назовем отмеченной, если , и неотмеченной в противном случае. а) Нужно все элементы, расположенные в отмеченных строках матрицы, преобразовать по правилу: отрицательные элементы заменить на -1, положительные — на +1, а нулевые оставить без изменения. б) Подсчитать число отрицательных элементов матрицы, расположенных в отмеченных строках.Далее код программы который написан на паскале.
Переведите код с паскаля на QBasic и проверьте работоспособность кода.
Отредактируйте так, что-бы обе матрицы заполнялись рандомными числами. И что-бы на экран выводилась матрица по условию задачи ( то есть состоящая из 1, -1, и 0).
Если в коде допущены ошибки то исправьте их и укажете на ошибки.
Заранее спасибо и с меня плюсики тем кто поможет))
Решение задачи: «Переведите, пожалуйста код с Паскаля на QBasic и отредактируйте код под условие задачи»
textual
Листинг программы
INPUT "m="; m
DIM a(1 TO m) AS INTEGER, b(1 TO m, 1 TO m) AS INTEGER
FOR i = 1 TO m
PRINT "A("; i; ")=";
INPUT a(i)
NEXT
cnt = 0
FOR i = 1 TO m
FOR j = 1 TO m
PRINT "B("; i; ","; j; ")=";
INPUT b(i, j)
IF a(i) > 0 THEN
IF b(i, j) < 0 THEN
cnt = cnt + 1
b(i, j) = -1
ELSEIF b(i, j) > 0 THEN
b(i, j) = 1
END IF
END IF
NEXT
NEXT
PRINT "Результат:"
PRINT "A=", "B="
FOR i = 1 TO m
PRINT a(i);
FOR j = 1 TO m
PRINT , b(i, j);
NEXT
PRINT
NEXT
PRINT "Отрицательных элементов в отмеченных строках: "; cnt
Объяснение кода листинга программы
- Пользователю предлагается ввести значение переменной m с помощью команды INPUT
m=. - Затем объявляются две матрицы: a(1 TO m) AS INTEGER и b(1 TO m, 1 TO m) AS INTEGER.
- Далее, с помощью двух циклов FOR, пользователю предлагается ввести все значения матрицы a и b.
- В каждой ячейке матрицы b значение проверяется на отрицательность, и если оно отрицательное, то заменяется на -1.
- Если значение в ячейке матрицы b положительное, то оно заменяется на 1.
- Выводится сообщение
Результат:, а затем выводятся значения матрицы a и b. - Выводится сообщение
Отрицательных элементов в отмеченных строках:, а затем выводится значение переменной cnt, которая подсчитывает количество отрицательных элементов в матрице b.