Заменить каждое третье слово в строке - VB

Узнай цену своей работы

Формулировка задачи:

Помогите написать процедуру для задания: В заданной строке, состоящей из слов, разделенных одним или более пробелами, заменить каждое третье слово «инфа» словом «информатика» и подсчитать количество проведенных замен. Заранее спасибо !

Решение задачи: «Заменить каждое третье слово в строке»

textual
Листинг программы
Option Explicit
Option Compare Text
 
Sub main()
Dim s As String, ss As String, a() As String, I As Long, n As Long, c As Long
s = "В заданной строке инфа , инфа состоящей из слов, разделенных инфа одним или более пробелами, заменить инфа  каждое третье слово инфа словом «информатика» и подсчитать  инфа  количество проведенных  инфа  замен."
ss = s
While InStr(1, ss, "  ")
  ss = Replace(ss, "  ", " ")
Wend
a = Split(ss)
For I = 0 To UBound(a)
  If a(I) = "инфа" Then
    n = n + 1
    If n Mod 3 = 0 Then a(I) = "информатика": c = c + 1
  End If
Next I
ss = Join(a)
MsgBox "В заданной строке""" & s & """" & vbLf & "Количество замен: " & c & " ." & vbLf & "Результат: " & ss
End Sub

Оцени полезность:

11   голосов , оценка 4 из 5
Похожие ответы