Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
28
Добавлен:
02.05.2014
Размер:
34.82 Кб
Скачать

Лабораторная работа №5_3. Разработка функций обработки целых чисел.

Примеры функций

  • функция нахождения суммы цифр целого числа n;

Public Function сумма_цифр_числа(n)

s = 0

While n <> 0

c = n Mod 10

s = s + c

n = n \ 10

Wend

сумма_цифр_числа = s

End Function

  • функция нахождения НОД двух натуральных чисел a и b

Public Function НОД(a, b)

While a <> b

If a > b Then

a = a - b

Else

b = b - a

End If

Wend

НОД = a

End Function

Задания

На VBA составить функции для:

  1. получения числа, записанного цифрами заданного числа в обратном порядке;

  2. нахождения суммы делителей числа N.

  3. нахождения НОД и НОК двух (трех) заданных целых чисел;

  4. вычисления суммы первых n чисел Фибоначчи (числа Фибоначчи 1,1,2,3,5,8 и т.д., т.е. каждое последующее число равно сумме двух предыдущих).

  5. определения, является ли число простым (число называется простым, если оно делится только на 1 и на само число)

  6. определения, является ли заданное число N совершенным. Число называется совершенным, если оно равно сумме своих делителей (6=1+2+3).

  7. определения, является ли заданное число N автоморфным. Число называется автоморфным, если после возведения в квадрат оно совпадает с младшими разрядами числа (52=25, 252=625).

  8. определения, является ли заданное число P числом Армстронга. Число, состоящее из n цифр, называется числом Армстронга, если оно равно сумме n-х степеней своих цифр (153= 13+53+33).

  9. определения, является ли заданное число N полиндромом. Полиндромом называется число, которое читается одинаково слева направо и справа налево (121,676 и т.д.).

  10. На отрезке [n, m] найти все простые числа.

  11. На отрезке [n, m] найти все совершенные числа.

  12. На отрезке [n, m] найти все автоморфные числа.

  13. На отрезке [n, m] найти все полиндромы.

  14. На отрезке [n, m] найти все числа Армстронга.

  15. На отрезке [n, m] найти все числа близнецы. Два простых числа называются близнецами, если расстояние между ними равно 2.

Лабораторная работа №5_4. Разработка процедур и функций обработки массивов

Примеры функций

  • функция вычисления суммы элементов массива А

1-й способ

Public Function Сумма_массива(A As Variant)

Dim s, x

s = 0

For Each x In A

s = s + x

Next x

Сумма_массива = s

End Function

2-й способ

Public Function SumMas(a As Variant)

n = a.Columns.Count 'количество столбцов

m = a.Rows.Count ' количество строк

s = 0

For r = 1 To m

For c = 1 To n

s = s + a(r, c)

Next c

Next r

SumMas=s

End Function

  • функция подсчета количества положительных элементов массива А

Public Function CountP(a As Variant)

n = a.Columns.Count

m = a.Rows.Count

k= 0

For r = 1 To m

For c = 1 To n

If a(r,c) > 0 Then k=k+1

Next c

Next r

CountP=k

End Function

  • нахождения максимального и минимального значения массива А

Public Function max_min_A(a As Variant)

n = a.Columns.Count

m = a.Rows.Count

minimal = a(1, 1)

maximal = a(1, 1)

For r = 1 To m

For c = 1 To n

If a(r, c) < minimal Then minimal = a(r, c)

If a(r, c) > maximal Then maximal = a(r, c)

Next c

Next r

max_min_A = "Минимальный эл-т:" + Str(minimal) + ", максимальный эл-т:" + Str(maximal)

End Function

Задания

На VBA составить функции для:

  1. нахождения суммы (количества) положительных (отрицательных) элементов массива;

  2. нахождения суммы (количества) элементов массива стоящих на четных (нечетных) местах;

  3. нахождения произведения отрицательных (положительных) элементов массива;

  4. подсчета количества отрицательных (положительных, нулевых, кратных k) элементов массива;

  5. нахождения суммы четных (нечетных, кратных n) элементов массива;

  6. нахождения НОД (НОК) элементов массива;

  7. нахождения минимального (максимального) элемента массива и места его расположения в массиве (номера строки и номера столбца);

  8. нахождения максимального среди отрицательных (минимального среди положительных элементов массива);

  9. нахождения двух самых больших (самых маленьких) элементов массива.

  10. расположения элементов массива в следующем порядке – положительные, отрицательные и нулевые;

  11. упорядочивания по возрастанию (убыванию) элементов массива;

  12. в упорядоченном массиве, найти такие два элемента, произведение которых максимально (минимально);

  13. из двух упорядоченных по возрастанию массивов, получить третий, упорядоченный по возрастанию.

Соседние файлы в папке Лабораторные работы8