Показать сообщение отдельно

Поделись своей логикой
  #1  
Старый 01.10.2008, 16:56
bopoh13
Участник форума
Регистрация: 31.10.2006
Сообщений: 212
Провел на форуме:
1073612

Репутация: 50
По умолчанию Поделись своей логикой

vb, но это не важно.
Важно: как можно меньше упростить алгоритм.
Код:
Function Ulica(ul As String, dom As String, text As Boolean) As String
' ul - название улицы
' dom - строка с номером дома и (если есть) корпусом
' text = true - вывести текстом
Dim i As Integer, j As Integer
    i = InStr(dom, " к. ") - 1
    j = InStr(dom, "/")
    
    ul = Replace(ul, " ул.", "")
    
    If text = True Then
        If i > 0 Then
            Ulica = "ул. " + ul + ", дом " + Replace(dom, " к. ", " корпус ")
        Else
            Ulica = "ул. " + ul + ", дом " + dom
        End If
    Else
        If j > 0 Then
            If i > 0 Then
                Ulica = ul + " " + Replace(Replace(dom, " к. ", ")-"), "/", "(")
            Else
                Ulica = ul + " " + Replace(dom, "/", "(") + ")"
            End If
        Else
            If i > 0 Then
                Ulica = ul + " " + Replace(dom, " к. ", "-")
            Else
                Ulica = ul + " " + dom
            End If
        End If
    End If
End Function
Варианты?
 
Ответить с цитированием