|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Действия с массивами
Пример. Задан одномерный массив Х (х1, х2,...,хn), состоящий из n элементов. 1. Найти произведение всех отличных от 0 элементов. Решение: Для нахождения произведения элементов массива, необходимо до начала циклических действий задать начальное значение произведения, равное 1. REM произведение элементов массива DIM X(1 TO N), N, P, I P = 1 FOR I = 1 TO N INPUT ''x”; X(I) IF X(I) <> 0 THEN P = P * X(I) END IF NEXT I PRINT” произведение P=”;P END
2. Найти максимальный элемент Xmax массива и его порядковый номер Imax. В качестве начального значения Xmax берется первый элемент массива и его значение сравнивается со значениями остальных элементов. Поскольку сравнивать первый элемент массива с собой не имеет смысла, цикл выполняется, начиная со второго значения.
REM максимальный элемент массива DIM X(1 TO N), N, I, XMAX, IMAX FOR I = 1 TO N INPUT ''x”; X(I) NEXT I XMAX = X(1): IMAX = 1 FOR I = 1 TO N IF XMAX < X(I) THEN XMAX = X(I) IMAX = I END IF NEXT I PRINT ”Xmax=”; XMAX;” Imax=”; IMAX END
3. Вычислить сумму положительных элементов каждого столбца матрицы А(M x N). Для вычисления суммы положительных элементов j - столбца матрицы необходимо организовать цикл с целью перебора всех элементов столбца, поэтому параметром этого цикла следует выбрать номер столбца i. Перед циклом нужно задать начальное значение суммы S(j) = 0 для j - столбца. После окончания цикла результат необходимо вывести на печать. Эти действия должны быть повторены во внешнем цикле, изменяя номер столбцов j.
В рассмотренной задаче внешний цикл должен быть обязательно по j (индексу столбцов), т.к. в противном случае были бы вычислены суммы положительных элементов каждой строки. Часто встречаются задачи, в которых не имеет значения, по какому параметру организовать внешний и внутренний цикл. REM сумма элементов строк массива DIM N, M, I, J DIM А(1 TO M, 1 TO N), S(1 TO N) FOR I = 1 TO M FOR J = 1 TO N INPUT ''A”; A(I, J) NEXT J NEXT I FOR J = 1 TO N S(J) = 0 FOR I = 1 TO M IF A(I, J) >= 0 THEN S(J) = S(J) + A(I, J) END IF NEXT J PRINT ”S(”; J;”)=”; S(J) NEXT I END Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.) |