- •Лабораторная работа № 3
- •1. Оператор цикла с параметром (For…Next) 1
- •2. Циклы с предусловием и постусловием 2
- •3. Понятие массива и способы его объявления 5
- •4. Размещение элемента управления на рабочем листе ms Excel 9
- •1. Оператор цикла с параметром (For…Next)
- •2. Циклы с предусловием и постусловием
- •3. Понятие массива и способы его объявления
- •1) Одномерный статический массив
- •2) Двумерный статический массив
- •3) Динамический массив:
- •Пример 4. Сортировка элементов массива (методом выбора)
- •3.2 Типовые алгоритмы обработки двумерного массива Пример 5. Определить сумму и количество положительных элементов в массиве целых чисел.
- •Схемы для обращения к элементам на главной (побочной) диагоналях
- •3.3 Типовые алгоритмы обработки динамического массива
- •4. Размещение элемента управления на рабочем листе ms Excel
- •Порядок выполнения работы:
- •Задание 1.
- •Задание 2.
- •Контрольные вопросы:
Задание 1.
Написать программу вычисления значений функции на указанном отрезке с использование различных циклических операторов (For.. Next, Do While…Loop, While…Wend, Do Until…Loop, Do…Loop While, Do…Loop Until. Вариант задания выбрать из таблицы 3.1. Ввод/вывод данных производить на листы Excel (для каждой группы циклов – отельный лист с соответствующим названием) по нажатию кнопки на листе MS Excel. (см. Пример 4.1.)
Таблица 3.1 – Варианты заданий
№ п/п |
Вычисляемая функция |
Значение параметра |
Диапазон изменения аргумента функции |
Шаг аргумента функции |
|
|
t = 1,4 |
1,5 £ x £ 9,5 |
Dx = 0,25 |
|
|
p = 0,8 |
6 £ x £ 18 |
Dx = 0,25 |
|
|
b = 4,4 |
0,6 £ x £ 1,8 |
Dx = 0,05 |
|
|
p = 1,6 |
6 £ x £ 18 |
Dx = 0,25 |
|
|
a = 0,26 |
2 £ x £ 8.5 |
Dx = 0,25 |
|
|
p1= 0,8 |
1.5 £ x £ 5.5 |
Dx = 0,25 |
|
|
b = 1,68 |
2 £ x £ 8.8 |
Dx = 0,2 |
|
|
y =1,3 |
2 £ x £ 7.8 |
Dx = 0,2 |
|
|
t = 2,9 |
2 £ x £ 5.8 |
Dx = 0,2 |
|
|
z = 3,8 |
0,2 £ x £ 1,8 |
Dx = 0,05 |
|
|
y = 1,4 |
2 £ x £ 3,8 |
Dx = 0,2 |
|
|
p = 0,8 |
2 £ x £ 4.8 |
Dx = 0,2 |
|
|
t = 2.3 |
0,4 £ x £ 5,8 |
Dx = 0,05 |
|
|
z = 0.13 |
0,6 £ x £ 4,8 |
Dx = 0,05 |
|
|
t = 2.5 |
0,8 £ x £ 2,8 |
Dx = 0,05 |
|
|
y =1,3 |
2,5 £ x £ 3,5 |
Dx = 0,25 |
|
|
t = 2,9 |
2 £ x £12 |
Dx = 0.2 |
|
|
z = 0,8 |
0,5 £ x £ 8,25 |
Dx = 0,25 |
Задание 2.
Задание 2.1 Написать процедуры обработки одномерных массивов согласно заданиям из таблицы 3.2. Ввод данных для первого задания выполнить с помощью функции InputBox(), для второго задания – элементы массива сгенерировать случайным образом, задавая диапазон случайных значений. Количество элементов для первого задания определить с помощью константы (N >=15). Во втором задании количество элементов запрашивать у пользователя, т.е. массив значений объявляется как динамический массив, а затем переопределяется.
Таблица 3.2 – Варианты заданий (обработка одномерных массивов)
Вариант |
Задание |
1 |
1. Дан целочисленный вектор A(n). Найти наибольший из четных и количество нечетных элементов вектора. 2. Дан вектор A(n). Найти номер первого максимального и первого минимального значения среди отрицательных элементов. |
2 |
1. Дан целочисленный вектор A(n). Подсчитать количество элементов максимальных по величине и если оно больше 2, то все элементы вектора с четными индексами заменить на 1. 2. Дан вектор A(n). Найти номер первого максимального значения среди элементов, с индексами кратных трем. |
3 |
1. Дан целочисленный вектор A(n). Если наименьший элемент вектора A находится на четном месте, то все элементы расположенные на нечетных местах умножить на 2, а в противном случае все элементы на четных метах разделить на 2. 2. Дан вектор A(n). Найти максимальное значение среди отрицательных элементов, и минимальное значение среди положительных элементов массива. |
4 |
1. Дан целочисленный вектор A(n). Найти максимальный четный элемент вектора и определить количество нечетных элементов и сформировать на их основе новый вектор. 2. Дан целочисленный вектор A(n). Найти номер последнего максимального элемента среди положительных элементов, начиная с первого элемента, большего заданного числа t. |
5 |
1. Дан вектор A(n). Положительные элементы с четными индексами заменить на максимальный элемент вектора. 2. Дан вектор A(n). Найти минимальное значение среди положительных элементов, расположенных до первого элемента, равного нулю. |
6 |
1. Дан целочисленный вектор A(n). Преобразовать массив следующим образом: ко всем элементам с нечетными номерами добавить 1, а ко всем элементам с четными номерами добавить 2. 2. Дан вектор A(n). Найти минимальное значение среди положительных элементов и максимальное значение среди отрицательных элементов. |
7 |
1. Дан целочисленный вектор A(n). Получить новый вектор путем умножения элементов стоящих на четных местах на минимальный элемент вектора и – на нечетных местах на максимальный элемент вектора. 2. Дан вектор A(n). Сформировать два новых массива, в первом должны содержать отрицательные элементы, стоящие на нечетных местах, во втором – положительные элементы, стоящие на четных местах. Найти для этих массивов сумму и произведение элементов соответственно. |
8 |
1. Дан целочисленный вектор A(n). Найти наибольшее значение среди четных и наименьшее среди нечетных элементов вектора. 2. Дан вектор A(n). Найти номер минимального элемента среди четных положительных элементов. |
9 |
1. Дан целочисленный вектор A(n). Все четные числа, стоящие за максимальным элементом, домножить на минимальный элемент. 2. Дан вектор A(n). Найти номер максимального элемента среди элементов, лежащих в диапазоне [c, d]. |
10 |
1. Дан вектор A(2*n). Если в векторе сумма S1=a1+ a2+...+an равна сумме S2=an+1+ an+2+...+ a2n, то поменять местами первый и последний элементы вектора. 2. Дан вектор A(n). Найти номер минимального элемента среди элементов, больших t.. |
11 |
1. Дан вектор A(n). Поменять местами максимальный и минимальный элементы среди положительных значений вектора. 2. Дан целочисленный вектор A(n). Найти минимальное значение среди элементов, меньших заданного числа b, и расположенных до первого элемента, большего заданного числа с. |
12 |
1. Дан целочисленный вектор A(n). Найти наибольший из нечетных и количество четных элементов вектора. 2. Дан вектор A(n). Найти номер первого максимального и первого минимального значения среди положитеных элементов. |
13 |
1. Дан целочисленный вектор A(n). Подсчитать количество элементов минимальных по величине и если оно больше 2, то все элементы вектора с четными индексами заменить на 0. 2. Дан вектор A(n). Найти номер первого минимального значения среди элементов, с индексами кратных трем. |
14 |
1. Дан целочисленный вектор A(n). Если наименьший элемент вектора A находится на нечетном месте, то все элементы, расположенные на нечетных местах умножить на 2, а в противном случае все элементы на четных метах разделить на 2. 2. Дан вектор A(n). Найти максимальное значение среди положительных элементов, и минимальное значение среди отрицательных элементов массива. |
15 |
1. Дан целочисленный вектор A(n). Найти максимальный нечетный элемент вектора и определить количество четных элементов и сформировать на их основе новый вектор. 2. Дан целочисленный вектор A(n). Найти номер последнего максимального элемента среди положительных элементов, начиная с первого элемента, большего заданного числа t. |
16 |
1. Дан вектор A(n). Положительные элементы с нечетными индексами заменить на максимальный элемент вектора. 2. Дан вектор A(n). Найти минимальное значение среди отрицательных элементов, расположенных до первого элемента, равного нулю. |
17 |
1. Дан целочисленный вектор A(n). Преобразовать массив следующим образом: ко всем элементам с нечетными номерами добавить 1, а ко всем элементам с четными номерами добавить 2. 2. Дан вектор A(n). Найти минимальное значение среди положительных элементов и максимальное значение среди отрицательных элементов. |
18 |
1. Дан целочисленный вектор A(n). Получить новый вектор путем умножения элементов стоящих на нечетных местах на минимальный элемент вектора и – на четных местах на максимальный элемент вектора. 2. Дан вектор A(n). Сформировать два новых массива, в первом должны содержать отрицательные элементы, стоящие на нечетных местах, во втором – положительные элементы, стоящие на четных местах. Найти для этих массивов сумму и произведение элементов соответственно. |
Задание 3. Написать программу обработки двумерного массива. Вариант задания выбрать из таблицы 3.3. Ввод элементов производить с листа MS Excel. Результат также поместить на лист Excel, по нажатию кнопки “Выполнить”.
Таблица 3.3 – Варианты заданий (обработка двумерных массивов)
Вариант |
Задание |
|
Дана квадратная матрица порядка N. Найти произведение элементов побочной (главной) диагонали квадратной матрицы и вернуть вектор значений, полученный в результате деления элементов первой строки на найденное произведение. |
|
Дана квадратная матрица порядка N. Вывести столбец матрицы, в котором элемент, стоящий на (ниже) главной диагонали, минимален, среди элементов главной диагонали. |
|
Дана целочисленная квадратная матрица порядка N. Найти сумму положительных четных элементов матрицы, находящихся ниже (выше) главной диагонали. |
|
Дана квадратная матрица порядка N. Найти максимальный и минимальный по модулю элементы матрицы и поменять местами соответствующие им строку и столбец (строка для максимального элемента, столбец для минимального элемента) (и наоборот). |
|
Дана квадратная матрица порядка N. Вычислить среднее арифметическое положительных элементов матрицы, стоящих выше (ниже) главной диагонали. |
|
Дана квадратная матрица порядка N. В матрице вычислить среднее арифметическое положительных элементов, стоящих на главной (побочной) диагонали. |
|
Дана квадратная матрица порядка N. Вывести строку матрицы, в которой элемент, стоящий на главной (побочной) диагонали, максимален. |
|
В квадратной матрице найти количество положительных элементов побочной (главной) диагонали и вернуть вектор значений, полученный в результате деления элементов последнего столбца на найденное значения количества. |
|
Дана квадратная матрица порядка N. Найти произведение элементов побочной (главной) диагонали квадратной матрицы. |
|
Дана квадратная матрица порядка N. Вывести столбец матрицы, в котором элемент, стоящий на главной (побочной) диагонали, минимален, среди элементов главной диагонали. |
|
Найти сумму положительных элементов квадратной матрицы, находящихся ниже (выше) главной диагонали. |
|
Дана квадратная матрица порядка N. Найти максимальный и минимальный элементы матрицы и поменять местами соответствующие им строку и столбец (строка для максимального элемента, столбец для минимального элемента) (и наоборот). |
|
Дана квадратная матрица порядка N. Найти количество четных элементов квадратной матрицы, расположенных ниже (выше) побочной диагонали. |
|
Дана квадратная матрица порядка N. Вычислить среднее арифметическое положительных элементов матрицы, стоящих на (ниже) главной диагонали, и определить сколько элементов в матрице больше этого среднего значения. |
|
Дана квадратная матрица порядка N. В матрице вычислить среднее арифметическое положительных элементов, стоящих на главной (побочной) диагонали и определить сумму элементов матрицы больше найденного среднего значения. |
|
Дана квадратная матрица порядка N. Вывести сумму элементов той строки матрицы, в которой элемент, стоящий на (выше) главной диагонали, максимален. |
|
В квадратной матрице найти сумму положительных элементов побочной (главной) диагонали и вернуть вектор значений, полученный в результате деления на полученную сумму элементов второго столбца матрицы. |
|
Дана целочисленная квадратная матрица порядка N. Найти сумму положительных нечетных элементов матрицы, находящихся ниже (выше) главной диагонали. |

;
;
;