ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 16.07.2025
Просмотров: 485
Скачиваний: 0
Введите число: 1 |
знакочередующейся |
Введите число: –13 |
|
Введите число: –10 |
|
Введите число: 0 |
26. Составьте блок-схему и программу на языке VBA, которая вычисляет сумму всех отрицательных членов из n чисел последовательности. Количество суммируемых чисел должно вводиться во время работы программы. Программа должна проверять правильность введенных пользователем данных и, если они неверные (n ≤ 0), выдавать сообщение об ошибке.
Исходные данные: |
Результат: |
|||||||||
1. Введите n: –6 |
1. Неверно введено n |
|||||||||
2. Введите n: 3 |
2. Сумма отрицательных чисел равна –4,6 |
|||||||||
Введите 1-е число: –1 |
||||||||||
Введите 2-е число: 5,6 |
||||||||||
Введите 3-е число: –3,6 |
||||||||||
3. Введите n: 4 |
3. Отрицательных чисел нет |
|||||||||
Введите 1-е число: 10,8 |
||||||||||
Введите 2-е число: 7,6 |
||||||||||
Введите 3-е число: 5,9 |
||||||||||
Введите 4-е число: 36 |
||||||||||
27. Составьте блок-схему и программу на языке VBA, которая вычисляет |
||||||||||
сумму первых n членов ряда -1+ |
x2 |
- |
x3 |
+ |
x4 |
-K, при |
x |
< 1. Количество |
||
2 |
3 |
4 |
||||||||
суммируемых членов ряда задается во время работы программы. Программа должна проверять правильность введенных пользователем данных и, если они неверные (n ≤ 0, x ³ 1), выдавать сообщение об ошибке.
Исходные данные: |
Результат: |
||
1. |
Введите n: 10 |
1. |
Неверно введены данные |
Введите x: 1 |
|||
2. |
Введите n: 4 |
2. |
Сумма первых 4 членов ряда |
Введите x: –0,6 |
равна –0,7156 |
||
28. Составьте блок-схему и программу на языке VBA, которая определяет, является ли последовательность возрастающей (длина последовательности не ограничена). Признаком конца последовательности является ввод нуля.
Исходные данные: |
Результат: |
1. Введите число: 1 |
1. Последовательность не является |
Введите число: –1,6 |
возрастающей |
Введите число: 13 |
|
Введите число: 1 |
|
Введите число: 0 |
|
2. Введите число: 0,7 |
2. Последовательность возрастающая |
Введите число: 12 |
|
Введите число: 13,7 |
|
Введите число: 0 |
29. Составьте блок-схему и программу на языке VBA, которая вычисляет количество отрицательных чисел во вводимой последовательности из n целых
26
чисел. Количество чисел последовательности должно вводиться во время работы программы. Программа должна проверять правильность введенных пользователем данных и, если они неверные ( n ≤ 0), выдавать сообщение об ошибке.
Исходные данные: |
Результат: |
||
1. |
Введите n: 0 |
1. |
Неверно введено n |
2. |
Введите n: 4 |
2. |
Количество отрицательных чисел равно 2 |
Введите 1-е целое число: 10 |
|||
Введите 2-е целое число: 0 |
|||
Введите 3-е целое число: –12 |
|||
Введите 4-е целое число: –30 |
|||
3. |
Введите n: 3 |
3. |
Отрицательных чисел нет |
Введите 1-е целое число: 15 |
|||
Введите 2-е целое число: 5 Введите 3-е целое число: 12
30. Составьте блок-схему и программу на языке VBA, которая вычисляет количество пар соседних равных членов в вводимой последовательности (длина последовательности не ограничена). Признаком конца последовательности является ввод нуля.
Исходные данные: |
Результат: |
1. Введите число: 1,5 |
1. Во введенной последовательности нет |
Введите число: –1 |
равных соседних членов |
Введите число: 2,3 |
|
Введите число: 7 |
|
Введите число: 0 |
|
2. Введите число: –11,5 |
2. Во введенной последовательности |
Введите число: 1 |
3 пар(а, ы) соседних равных элементов |
Введите число: 1 |
|
Введите число: 4 |
|
Введите число: 4 |
|
Введите число: 4 |
|
Введите число: 0 |
Часть 5. СОЗДАНИЕ ПРОГРАММ С МАССИВАМИ
Начальные сведения по решению задач данной части содержатся в части 6 учебно-методического пособия «Программирование на VBA».
Приступая к решению задач этого раздела, следует вспомнить, что:
üмассив – это структура данных, представляющая собой совокупность элементов одного типа;
üмассив должен быть объявлен в разделе объявления переменных;
üдоступ к элементу массива осуществляется путем указания индекса (номера) элемента, в качестве которого используется выражение целого типа, например, целая константа или переменная типа Integer;
üдля ввода, вывода и обработки массивов удобно применять инструкции циклов (For…Next, Do While, Do Until, Do…Loop While, Do…Loop Until).
1. Составьте программу на языке VBA, которая определяет минимальный
27
элемент и его номер из одномерного массива целых чисел. Программа должна проверять правильность введенных пользователем данных и, если они неверные ( n ≤ 0), выдавать сообщение об ошибке.
Исходные данные: |
Результат: |
||
1. |
Введите размерность |
1. |
Неверно введено n |
массива n: 0 |
|||
2. |
Введите размерность |
2. |
Минимальный элемент –7, его номер 2 |
массива n: 3 Массив: (−1 − 7 5)
2. Составьте программу на языке VBA, которая вычисляет сумму элементов по столбцам в двумерном массиве An×m . Программа должна проверять
правильность введенных |
пользователем данных и, если они неверные |
||||
( n ≤ 0, m ≤ 0), выдавать сообщение об ошибке. |
|||||
Исходные данные: |
Результат: |
||||
1. Введите количество |
1. Неверные исходные данные |
||||
строк массива n: 4 |
|||||
Введите количество |
|||||
столбцов массива m: –1 |
|||||
2. Введите количество |
2. Сумма 1-го столбца равна 9,00 |
||||
строк массива n: 3 |
сумма 2-го столбца равна 6,00 |
||||
Введите количество |
сумма 3-го столбца равна 10,00 |
||||
столбцов массива m: 4 |
сумма 4-го столбца равна 5,90 |
||||
æ1 |
3 |
4 |
7 |
ö |
|
ç |
6 |
- 9 |
1 |
3 |
÷ |
Массив: ç |
÷ |
||||
ç |
2 |
0 |
÷ |
||
è |
5 - 4,1ø |
||||
3. Составьте программу на языке VBA, которая сжимает одномерный массив A длинной n элементов путем удаления элементов, совпадающих с числом L , и указывает количество удаленных элементов. Программа должна проверять правильность введенных пользователем данных и, если они неверные ( n ≤ 0), выдавать сообщение об ошибке.
Исходные данные: |
Результат: |
||
1. |
Введите размерность |
1. |
Неверно введено n |
массива n: 0 |
|||
Введите число L: 3,3 |
|||
2. |
Введите размерность |
2. |
Массив: 1,6 5,7 9; 2 элемент(а, ов) |
массива n: 5 |
удален(о) |
||
Введите число L: 2 |
|||
Массив: (1,6 2 5,7 2 |
9) |
||
4. Составьте программу на языке VBA, которая транспонирует двумерную матрицу An×m (транспонированная матрица – матрица, полученная из исходной
матрицы, после замены строк одноименными столбцами; (aij )Tnm = (a ji )mn )
28
замена строк столбцами). Программа должна проверять правильность введенных пользователем данных и, если они неверные ( n ≤ 0, m ≤ 0), выдавать сообщение об ошибке.
Исходные данные: |
Результат: |
|
1. Введите количество |
1. Неверные исходные данные |
|
строк матрицы n: 0 |
||
Введите количество |
||
столбцов матрицы m: 5 |
||
2. Введите количество |
2. Матрица: |
|
1 |
0 |
|
строк матрицы n: 2 |
1,8 |
4 |
- 6 |
2,5 |
|
Введите количество |
||
столбцов матрицы m: 3 |
||
æ1 1,8 - 6 |
ö |
|
Матрица: ç |
÷ |
|
ç |
÷ |
|
è0 4 2,5 |
ø |
|
5. Составьте программу на языке VBA, которая вычисляет количество ненулевых элементов в одномерном массиве из n чисел. Программа должна проверять правильность введенных пользователем данных и, если они неверные ( n ≤ 0), выдавать сообщение об ошибке.
Исходные данные: |
Результат: |
||
1. |
Введите размерность |
1. |
Неверно введено n |
массива n: –3 |
|||
2. |
Введите размерность |
2. |
В массиве 3 ненулев(ой, ых) элемент(а, ов) |
массива n: 4 |
|||
Массив: (− 7,4 0 8 |
1) |
||
6. Составьте программу на языке VBA, которая вычисляет среднее арифметическое L квадратов отрицательных элементов квадратной матрицы An×n и заменяет положительные элементы главной диагонали на L . Программа
должна проверять правильность введенных пользователем данных и, если они неверные (n ≤ 0), выдавать сообщение об ошибке.
Исходные данные: |
Результат: |
|||||||
1. Введите размерность |
1. Неверно введено n |
|||||||
матрицы n: –2 |
||||||||
2. Введите размерность |
2. Среднее арифметическое квадратов |
|||||||
матрицы n: 3 |
отрицательных элементов равно 26. |
|||||||
æ1 |
0 |
- 4 |
ö |
Матрица : |
||||
26 |
0 |
- 4 |
||||||
ç |
9 |
- 6 |
7,5 |
÷ |
||||
Матрица: ç |
÷ |
9 |
- 6 |
7,5 |
||||
ç |
3 |
2 |
3 |
÷ |
||||
è |
ø |
3 |
2 |
26 |
||||
7. Составьте программу на языке VBA, которая вычисляет количество пар равных соседних элементов в одномерном массиве. Программа должна проверять
29
правильность введенных пользователем данных и, |
если они неверные (n ≤ 0), |
|
выдавать сообщение об ошибке. |
||
Исходные данные: |
Результат: |
|
1. Введите размерность |
1. Неверно введено n |
|
массива n: –7 |
||
2. Введите размерность |
2. 1 пар(а, ы) равных соседних элементов |
|
массива n: 4 |
||
Массив: (− 0,8 6 6 |
− 8) |
|
8. Составьте программу на языке VBA, которая вычисляет сумму |
||
диагональных элементов |
квадратной матрицы |
An×n . Программа должна |
проверять правильность введенных пользователем данных и, если они неверные ( n ≤ 0), выдавать сообщение об ошибке.
Исходные данные: |
Результат: |
|||
1. Введите размерность |
1. Неверно введено n |
|||
матрицы n: –2 |
||||
2. Введите размерность |
2. Сумма диагональных элементов матрицы |
|||
матрицы n: 3 |
равна 4,2 |
|||
æ0,4 |
- 5 |
-1,7ö |
||
ç |
0 |
2,5 |
5 |
÷ |
Матрица: ç |
÷ |
|||
ç |
1 |
6 |
2 |
÷ |
è |
ø |
|||
9. Составьте программу на языке VBA, которая выводит максимальный элемент, и если таких элементов несколько, то определяет их количество в одномерном массиве из n целых чисел. Программа должна проверять правильность введенных пользователем данных и, если они неверные (n ≤ 0), выдавать сообщение об ошибке.
Исходные данные: |
Результат: |
||
1. |
Введите размерность |
1. |
Неверно введено n |
массива n: –7 |
|||
2. |
Введите размерность |
2. |
Максимальный элемент 6, |
массива n: 5 |
этих элементов 2 |
||
Массив: (−17 6 5 − 7 |
6) |
||
10. Составьте программу на языке VBA, которая определяет строку с наибольшим числом нулей в двумерном массиве An×m . Программа должна
проверять правильность введенных пользователем данных и, если они неверные ( n ≤ 0, m ≤ 0), выдавать сообщение об ошибке.
Исходные данные: |
Результат: |
||
1. |
Введите количество |
1. |
Неверные исходные данные |
строк массива n: –3 |
|||
Введите количество |
|||
столбцов массива m: 5 |
|||
2. |
Введите количество |
2. |
Таких строк нет |
строк массива n: 2
30