В двумерном массиве для найденных максимума и минимума найти их индексы - QBasic
Формулировка задачи:
В двумерном массиве для найденных максимума и минимума найти их индексы. Имеем такую программу:
На выходе имеем:
Добавил строку условия: IF P = X(i, j) THEN P = i, j
и в конце – строку: PRINT “ Индекс самого большого числа: “; i, j
но ничего не получилось. Программа отказала.
И в же дело?
Решение задачи: «В двумерном массиве для найденных максимума и минимума найти их индексы»
textual
Листинг программы
CLS DIM x(6, 6) P = 200 P1 = 1 ip = 1 jp = 1 ip1 = 1 jp1 = 1 FOR i = 1 TO 6 FOR j = 1 TO 6 x(i, j) = INT(100 * RND) PRINT USING "####"; x(i, j); IF P > x(i, j) THEN P = x(i, j) ip = i jp = j END IF IF P1 < x(i, j) THEN P1 = x(i, j) ip1 = i jp1 = j END IF NEXT: PRINT NEXT: PRINT PRINT "P("; ip; ","; jp; ") ="; P PRINT "P1("; ip1; ","; jp1; ") ="; P1
Объяснение кода листинга программы
Вот что делается в этом коде:
- Создается двумерный массив x размером 6x6.
- Задаются начальные значения переменных P, P1, ip, jp, ip1, jp1 равными 200, 1, 1, 1, 1, 1 соответственно.
- Два вложенных циклах проходят по всем элементам массива x.
- Каждый элемент массива x выводится на экран.
- Если текущий элемент массива x больше значения P, то значение P обновляется, а индексы ip и jp сохраняют индексы текущего элемента.
- Если текущий элемент массива x меньше значения P1, то значение P1 обновляется, а индексы ip1 и jp1 сохраняют индексы текущего элемента.
- После завершения циклов выводятся значения P и P1, а также их индексы ip и jp.