Заменить все отрицательные элементы массива на нуль - 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 PRINT "ISHODNY MASSIV" PRINT FOR i = 1 TO n a(i) = 40 * RND - 20 PRINT a(i); NEXT i PRINT : PRINT CALL Noll(a(), n) PRINT "NOVY MASSIV" PRINT 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)
- Подпрограмма вызывается рекурсивно с уменьшенным количеством элементов. Этот код генерирует случайный массив целых чисел, затем заменяет все отрицательные числа на ноль с помощью рекурсивной подпрограммы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д