Страница 1 из 1

Написать логическую функцию, принимающую значения True,

Добавлено: 13 май 2013, 10:03
Vika190593
Помогите пожалуйста Написать логическую функцию, принимающую значения True, если в строковой переменной, являющейся единственным аргументом этой функции, отсутствуют гласные русские буквы.

Re: Написать логическую функцию, принимающую значения True,

Добавлено: 13 май 2013, 20:25
pashulka

Код: Выделить всё

Private Function IsValidChar(Text As String) As Boolean
    Const ValidChars = "аеёиоуыэюя"
    
    Dim iCount As Integer
    For iCount = 1 To 10 'Len(ValidChars)
        If InStr(1, Text, Mid(ValidChars, iCount, 1), vbTextCompare) > 0 Then
           Exit Function
        End If
    Next
    IsValidChar = True
End Function

Re: Написать логическую функцию, принимающую значения True,

Добавлено: 14 май 2013, 22:16
pashulka
P.S. Если же подобная задача встретится в реальной жизни(работе), где уже не будет необходимости демонстрировать преподавателю свои знания пройденного материала (цикл, работа со строками, в т.ч. получение n-го символа и т.д.), то в этом случае, можно будет воспользоваться оператором Like, т.е.

Код: Выделить всё

Private Function IsValidChar(Text As String) As Boolean
    IsValidChar = Not LCase(Text) Like "*[аеёиоуыэюя]*"
End Function