Заменить все отрицательные элементы массива на нуль - QBasic
Формулировка задачи:
Нужна помощь...)
В массиве R, состоящим из N элементов заменить все отрицательные элементы на нуль. Результат распечатать в виде:
Число элементов:
Исходный массив:
Новый массив:
Вторая прога:
Найти сумму модулей компонентов вектора z
Если zi=(фигурная скобочка-система)
9 S = Σ |Zi| i=1
sin i при cos i < 0,5
ctg i^2 при cos i >= 0,5.
Решение задачи: «Заменить все отрицательные элементы массива на нуль»
textual
Листинг программы
- DECLARE SUB Noll (a%(), n!)
- CLS
- RANDOMIZE TIMER
- INPUT "N = "; n
- DIM a(1 TO n) AS INTEGER
- PRINT "CHISLO ELEMENTOV"; n
- PRINT "ISHODNY MASSIV"
- FOR i = 1 TO n
- a(i) = 40 * RND - 20
- PRINT a(i);
- NEXT i
- PRINT : PRINT
- CALL Noll(a(), n)
- PRINT "NOVY MASSIV"
- FOR i = 1 TO n
- PRINT a(i);
- NEXT i
- END
- SUB Noll (a() AS INTEGER, n)
- IF n = 0 THEN EXIT SUB
- IF a(n) <= 0 THEN a(n) = 0
- CALL Noll(a(), n - 1)
- END SUB
Объяснение кода листинга программы
Детали кода:
DECLARE SUB Noll (a%(), n!)
- Эта строка определяет подпрограмму с именемNoll
, которая принимает два аргумента типаa%()
, который является массивом целых чисел, иn!
, который является целым числом.CLS
- Очищает экран перед началом программы.RANDOMIZE TIMER
- Эта строка инициализирует генератор случайных чисел, чтобы каждый раз получать разные случайные числа.INPUT
N =; n
- Запрашивает у пользователя ввод количества элементов для массива.DIM a(1 TO n) AS INTEGER
- Создает массив целых чисел с заданным количеством элементов.PRINT
CHISLO ELEMENTOV; n
- Выводит количество элементов массива.PRINT
- Отображает горизонтальную строку для улучшения читаемости.PRINT
ISHODNY MASSIV`` - Выводит заголовок для исходного массива.FOR i = 1 TO n
- Начинает цикл, который проходит через каждый элемент массива.a(i) = 40 * RND - 20
- Этот код присваивает каждому элементу массива случайное целое число, которое может быть отрицательным.PRINT a(i);
- Выводит значение текущего элемента массива.NEXT i
- Переходит к следующему элементу массива.PRINT : PRINT
- Выводит горизонтальную строку для улучшения читаемости.CALL Noll(a(), n)
- Вызывает подпрограммуNoll
, передавая ей массив и количество элементов.PRINT
NOVY MASSIV`` - Выводит заголовок для нового массива.FOR i = 1 TO n
- Начинает цикл, который проходит через каждый элемент массива.PRINT a(i);
- Выводит значение текущего элемента массива.NEXT i
- Переходит к следующему элементу массива.END
- Конец программы.SUB Noll (a() AS INTEGER, n)
- Эта строка определяет подпрограмму с именемNoll
.IF n = 0 THEN EXIT SUB
- Если количество элементов равно нулю, подпрограмма завершается.IF a(n) <= 0 THEN a(n) = 0
- Если последний элемент массива отрицательный, он заменяется на ноль.CALL Noll(a(), n - 1)
- Подпрограмма вызывается рекурсивно с уменьшенным количеством элементов. Этот код генерирует случайный массив целых чисел, затем заменяет все отрицательные числа на ноль с помощью рекурсивной подпрограммы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д