Четверг, 02.05.2024
Вопросы и ответы по КИТ
Меню сайта
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Задание 1 В книге Excel "Данные к тесту VBA", размещенной в учебных материалах к модулю, составьте функцию VBA с именем Fun9, которая в заданном диапазоне Листа Excel вычисляет  количество четных чисел диапазона.        Заголовок функции, который должен иметь вид: Function fun9(A As Variant), уже создан в модуле 1, необходимо только записать тело процедуры.  На листе 1 книги выполните функцию и полученное в ячейке B12 значение введите в ответ теста. 

Решение: 

Public Function fun9(a As Variant) As Double

Dim s As Double, i As Variant 

s = 0 

For Each i In a

If i Mod 2 = 0 Then s = s + 1 

Next i 

fun9 = s 

End Function 

Ответ: 7
Если нужно посчитать сумму, то нужно заменить If i Mod 2 = 0 Then s = s + 1 на If i Mod 2 = 0 Then s = s + i
 

Задание 2 В книге Excel "Данные к тесту VBA", размещенной в учебных материалах к модулю, составьте подпрограмму VBA с именем Proc1, которая в диапазоне  K1:L4 активного Листа Excel находит наименьшее число. Результат процедура должна вернуть в ячейку B14.  Заголовок процедуры, который должен иметь вид: Procedure Proc1(), уже создан в модуле 2, необходимо только записать тело процедуры.  На листе 1 книги выполните подрограмму и полученное в ячейке B14 значение введите в ответ теста.

Решение:

Public Sub Proc1() Dim a As Range, i As Variant, s As Double 

Set a = Range("K1:L4") 

Min = a(1, 1) 

For Each i In a  

If i < Min Then Min = i 

Next i 

Cells(14, 2).Value = Min

End Sub 

Ответ: -2

Источник: http://ffre.ru//merotrmerqasqas.html

Задание 3 В книге Excel "Данные к тесту VBA", размещенной в учебных материалах к модулю, составьте подпрограмму VBA с именем Proc2, которая в  выделенном диапазоне активного Листа Excel вычисляет количество четных положительных  чисел. Результат процедура должна вернуть в ячейку B15.  Заголовок процедуры, который должен иметь вид: Procedure Proc2(), уже создан в модуле 2, необходимо только записать тело процедуры.  На листе 1 книги выполните подрограмму и полученное в ячейке B15 значение введите в ответ теста. 

Решение: Public Sub Proc2() Dim a As Range, i As Variant, s As Double 

Set a = Selection 

s = 0

For Each i In a 

 If i Mod 2 = 0 And i > 0 

Then s = s + 1 

Next i 

Cells(15, 2).Value = s 

End Sub 

Ответ: 7

Источник: http://ffre.ru//merotrmerqasqas.html

Задание 4_1 В книге Excel "Данные к тесту VBA", размещенной в учебных материалах к модулю, составьте функцию VBA с именем Fun10, которая в заданном диапазоне активного Листа Excel вычисляет сумму чисел, оканчивающихся на К.    Заголовок функции, который должен иметь вид: Function fun10(A As Variant, K), уже создан в модуле 1, необходимо только записать тело процедуры.  На листе 1 книги выполните функцию и полученное в ячейке B13 значение введите в ответ теста. 

Решение:

Public Function fun10(a As Variant, k As Double) 

s = 0

For Each x In a    

If i abs(x) mod 10=k then s=s+x

Next  

fun10 = s 

End Function

Ответ: 5

Задание 4 В книге Excel "Данные к тесту VBA", размещенной в учебных материалах к модулю, составьте функцию VBA с именем Fun10, которая в заданном диапазоне активного Листа Excel вычисляет сумму чисел, кратных заданному числу К.    Заголовок функции, который должен иметь вид: Function fun10(A As Variant, K), уже создан в модуле 1, необходимо только записать тело процедуры.  На листе 1 книги выполните функцию и полученное в ячейке B13 значение введите в ответ теста. 

Решение:

Public Function fun10(a As Variant, k As Double) 

Dim s As Double, i As Variant 

s = 0

For Each i In a    

If i Mod k = 0 Then s = s + i 

Next i 

fun10 = s 

End Function

Ответ: 5

Источник: http://ffre.ru//merotrmerqasqas.html

Задание 5 В книге Excel "Данные к тесту VBA", размещенной в учебных материалах к модулю, составьте функцию VBA с именем Fun9, которая в заданном диапазоне Листа Excel вычисляет сумму положительных чисел диапазона.        Заголовок функции, который должен иметь вид: Function fun9(A As Variant), уже создан в модуле 1, необходимо только записать тело процедуры.  На листе 1 книги выполните функцию и полученное в ячейке B12 значение введите в ответ теста.

Решение: 

Public Function fun9(a As Variant) As Double

Dim s As Double, i As Variant 

s = 0 

For Each i In a If i > 0 Then

s = s + i 

Next i 

fun9 = s 

End Function 

Ответ:25

Источник: http://ffre.ru//merotrmerqasqas.html

Задание 7 В книге Excel "Данные к тесту VBA", размещенной в учебных материалах к модулю, составьте подпрограмму VBA с именем Proc2, которая в  выделенном диапазоне активного Листа Excel вычисляет  сумму четных  отрицательных  чисел. Результат процедура должна вернуть в ячейку B15.  Заголовок процедуры, который должен иметь вид: Procedure Proc2(), уже создан в модуле 2, необходимо только записать тело процедуры.  На листе 1 книги выполните подрограмму и полученное в ячейке B15 значение введите в ответ теста

. Решение: 

Public Sub Proc2() 

Dim a As Range, i As Variant, s As Double 

Set a = Selection

s = 0 

For Each i In a  

If i Mod 2 = 0 And i < 0 Then 

s = s + i 

Next i 

Cells(15, 2).Value = s

End Sub 

Ответ: -6

Источник: http://ffre.ru//merotrmerqasqas.html

Задание 8: В книге Excel "Данные к тесту VBA", размещенной в учебных материалах к модулю, составьте функцию VBA с именем Fun9, которая в заданном диапазоне Листа Excel вычисляет  количество положительных чисел диапазона.        Заголовок функции, который должен иметь вид: Function fun9(A As Variant), уже создан в модуле 1, необходимо только записать тело процедуры.  На листе 1 книги выполните функцию и полученное в ячейке B12 значение введите в ответ теста. 

Решение:

Public Function fun9(a As Variant) As Double 

Dim s As Double, i As Variant 

s = 0 

For Each i In a If i > 0 Then

s = s + 1

Next i 

fun9 = s 

End Function 

Ответ: 8

Источник: http://ffre.ru//merotrmerqasqas.html

Задание 9: В книге Excel "Данные к тесту VBA", размещенной в учебных материалах к модулю, составьте подпрограмму VBA с именем Proc1, которая в  диапазоне K1:N4 активного Листа Excel вычисляет  сумму   отрицательных  чисел. Результат процедура должна вернуть в ячейку B14.  Заголовок процедуры, который должен иметь вид: Procedure Proc1(), уже создан в модуле 2, необходимо только записать тело процедуры.  На листе 1 книги выполните подрограмму и полученное в ячейке B14 значение введите в ответ теста. 

Решение: 

Public Sub Proc1() 

Dim a As Range, i As Variant, s As Double 

Set a = Range("K1:N4") 

s = 0 

For Each i In a  If i < 0 Then

s = s + i 

Next i 

Cells(14, 2).Value = s 

End Sub 

Ответ: -6

Источник: http://ffre.ru//merotrmerqasqas.html

Задание 10: В книге Excel "Данные к тесту VBA", размещенной в учебных материалах к модулю, составьте подпрограмму VBA с именем Proc2, которая в  выделенном диапазоне активного Листа Excel находит наибольшее число. Результат процедура должна вернуть в ячейку B15.  Заголовок процедуры, который должен иметь вид: Procedure Proc2(), уже создан в модуле 2, необходимо только записать тело процедуры.  На листе 1 книги выполните подрограмму и полученное в ячейке B15 значение введите в ответ теста.

Решение: 

Public Sub Proc2() 

Dim a As Range, i As Variant, s As Double 

Set a = Selection 

Max = a(1, 1) 

For Each i In a  If i > Max Then

Max = i

Next i

Cells(15, 2).Value = Max 

End Sub 

Ответ: 140

Источник: http://ffre.ru//merotrmerqasqas.html

Задание 1,2 В книге Excel "Данные к тесту VBA", размещенной в учебных материалах к модулю, доработайте пользовательскую форму VBA с именем UserForm2 (уже создана), которая  на интервале от M до N находит сумму простых чисел. Результат  должен быть получен в текстовом поле TextBox3 (Результат).  Имена полей, форм  и кнопок изменять не надо. Требуется только написать операторы в тело процедуры кнопки Выполнить, уже созданой в форме UserForm2.  На листе 1 книги выполните форму UserForm2 и полученное в ячейке B19 значение введите в ответ теста. 

Решение:

Открываем Userform2, 2 раза щёлкаем по кнопке Выполнить 

Сначала пишем прогу для простых чисел

Public Function prostoe(ByVal n As Long) As Boolean

Dim i As Long

prostoe = True 

If n > 1 Then    

For i = 2 To Sqr(n)     

   If n Mod i = 0 Then    

        prostoe = False      

      Exit For     

   End If   

  Next i

Else   

 prostoe = False 

End If

End Function

Потом пишем форму 

Private Sub CommandButton1_Click() 

m = Val(TextBox1.Text) 

n = Val(TextBox2.Text) 

Dim i As Long, s As Double 

s = 0 

For i = m To n  

  If prostoe(i) = True Then 

s = s + i 

Next i 

TextBox3.Text = Format(s) 

End Sub 

Нажимаем выполнить UserForm2 и, в появившемся окне, нажимаем на выполнить 

Ответ: Сумма простых : 72  

Если нужно найти количество , то вместо этого  If prostoe(i) = True Then s = s + i, пишем If prostoe(i) = True Then s = s + 1 

Ответ: Количество : 6

Источник: http://ffre.ru//merotrmerqasqas.html

Задание 3,4. В книге Excel "Данные к тесту VBA", размещенной в учебных материалах к модулю, доработайте пользовательскую форму VBA с именем UserForm1 (уже создана), которая  среди трех заданых в форме чисел  A, B, C , задающих коэффициенты квадратного уравнения, находит сумму корней уравнения. Если корней не существует, возвращает сово "нет". Результат  должен быть получен в текстовом поле TextBox4 (Результат).  Имена полей, форм  и кнопок изменять не надо. Требуется только написать операторы в тело процедуры кнопки Выполнить, уже созданой в форме UserForm1.  На листе 1 книги выполните форму UserForm1 и полученное в ячейке B18 значение введите в ответ теста. 

Решение: 

Private Sub CommandButton1_Click() 

a = Val(TextBox1.Text)

b = Val(TextBox2.Text)

c = Val(TextBox3.Text) 

Dim d As Double, x1 As Double, x2 As Double, s As Double 

d = b ^ 2 - 4 * a * c If d >= 0 Then    

x1 = (-b + Sqr(d)) / (2 * a)   

 x2 = (-b - Sqr(d)) / (2 * a)  

  s = x1 + x2    

TextBox4.Text = Format(s) 

Else 

TextBox4.Text = "Нет" 

End If

End Sub 

Ответ: 8

Если произведение корней, то вместо этого    s = x1 + x2, пишем s = x1 * x2

Ответ: 15

Источник: http://ffre.ru//merotrmerqasqas.html

Задание 2 В книге Excel "Данные к тесту VBA" из учебных материалов к модулю, составьте функцию VBA в модуле 1 с именем fun5_1, которая вычисляет сумму S=1-2^3+3^3-...-n^3.   Заголовок функции, который должен иметь вид: Function fun5_1(n), уже создан в модуле 1, необходимо только записать тело процедуры.   На листе 1 книги выполните функцию и полученное в ячейке B8 значение введите в ответ теста. 

Решение: 

Public Function fun5_1(N As Integer) 

Dim s As Double Dim i As Integer Dim z As Integer 

s = 0 z = 1 

For i = 1 To N 

s = s + z * (i ^ 3)

z = -z

Next i

fun5_1 = s

End Function

Источник: http://ffre.ru//merotrmerqasqas.html

Задание: В книге Excel "Данные к тесту VBA" из учебных материалов к модулю, составьте функцию VBA в модуле 1 с именем fun8_1, которая подсчитывает количество русских букв "а" и "е" в заданом тексте S.   Заголовок функции, который должен иметь вид: Function fun8_1(S As String), уже создан в модуле 1, необходимо только записать тело процедуры. На листе 1 книги выполните функцию и полученное в ячейке B11 значение введите в ответ теста.  

Решение: 

Public Function fun8_1(s As String)

Dim i As Integer Dim p As Integer 

p = 0

For i = 1 To Len(s) 

If Mid(s, i, 1) = "a" Then    

p = p + 1 

ElseIf Mid(s, i, 1) = "e" Then   

 p = p + 1 

End If

Next i  

  fun8_1 = p

End Function

Источник: http://ffre.ru//merotrmerqasqas.html

Задание: В книге Excel "Данные к тесту VBA" из учебных материалов к модулю, составьте функцию VBA с именем fun3_1 для нахождения из трех произвольных чисел  A, B, C  суммы двух найбольших чисел.   Заголовок функции, который должен иметь вид: Function fun3_1(a,b,c), уже создан в модуле 1, необходимо только записать тело процедуры.             

На листе 1 книги выполните функцию и полученное в ячейке B6 значение введите в ответ теста.

Решение: 

Public Function fun3_1(a, b, c) 

If a < b Then 

fun3_1 = c + b 

Else If b < c Then 

fun3_1 = c + a 

Else 

fun3_1 = b + a 

End If

End If

End Function

Источник: http://ffre.ru//merotrmerqasqas.html

Задание: В книге Excel "Данные к тесту VBA", размещенной в учебных материалах к модулю, составьте подпрограмму VBA с именем Proc1, которая  в  диапазоне L1:R4 активного Листа Excel находит наибольшее число. Результат процедура должна вернуть в ячейку B14.  Заголовок процедуры, который должен иметь вид: Procedure Proc1(), уже создан в модуле 2, необходимо только записать тело процедуры. На листе 1 книги выполните подрограмму и полученное в ячейке B14 значение введите в ответ теста. 

Решение:

Public Sub Proc1()

Dim a As Range, i As Variant, s As Double 

Set a = Range("L1:R4")

Max = a(1, 1) 

For Each i In a  

If i > Max Then 

Max = i 

Next i 

Cells(14, 2).Value = Max 

End Sub

Источник: http://ffre.ru//merotrmerqasqas.html

Задание: В книге Excel "Данные к тесту VBA", размещенной в учебных материалах к модулю, доработайте пользовательскую форму VBA с именем UserForm2 (уже создана), которая  на отрезке [m+20;n] находит сумму простых чисел. Результат  должен быть получен в текстовом поле TextBox3 (Результат).  Имена полей, форм  и кнопок изменять не надо. Требуется только написать операторы в тело процедуры кнопки Выполнить, уже созданой в форме UserForm2. На листе 1 книги выполните форму UserForm2 и полученное в ячейке B19 значение введите в ответ теста. 

Решение: 

Private Sub CommandButton1_Click() 

M = Val(TextBox1.Text) + 20 

N = Val(TextBox2.Text) 

Dim i As Long, s As Double

s = 0 

For i = M To N   

 If prostoe(i) = True Then

s = s + i 

Next i 

TextBox3.Text = Format(s) 

End Sub 

Private Sub CommandButton2_Click() 

UserForm2.Hide 

End Sub 

Public Function prostoe(ByVal N As Long) As Boolean

Dim i As Long 

prostoe = True 

If N > 1 Then   

 For i = 2 To Sqr(N)   

     If N Mod i = 0 Then  

          prostoe = False    

        Exit For   

     End If   

  Next i 

Else    

prostoe = False 

End If 

End Function

Источник: http://ffre.ru//merotrmerqasqas.html

Задание: В книге Excel "Данные к тесту VBA" из учебных материалов к модулю, составьте функцию VBA в модуле 1 с именем fun7_1, которая вычисляет количество простых чисел на отрезке [10..N]. Заголовок функции, который должен иметь вид: Function fun7_1(n), уже создан в модуле 1, необходимо только записать тело процедуры. На листе 1 книги выполните функцию и полученное в ячейке B10 значение введите в ответ теста.    

Решение: 

Public Function fun7_1(n As Long)  

  Dim s As Long   

 Dim i As Long  

  Dim str As String   

s = 0   

 str = 0    

For i = 10 To n       

 For j = 1 To i           

 If i Mod j = 0 Then          

    s = s + 1        

    End If       

 Next j    

If s = 2 Then 

str = str + 1    

s = 0    

Next i    f

un7_1 = str 

End Function

Вход на сайт
Поиск
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Mozila Firefox
  • Инструкции для uCoz
  • Copyright MyCorp © 2024
    Конструктор сайтов - uCoz