Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 06.07.2018
Сообщений: 5

Процедура, результатом работы которой является новая строка

06.07.2018, 13:50. Показов 913. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В текстовое поле вводится строка из трех слов, разделенных пробелами. При нажатии
кнопки «ОК» запускается процедура, результатом работы которой является новая строка,
отличающаяся от введенной тем, что первое и третье слова меняются местами. Эта строка
выводится во второе текстовое поле. Если введенная строка содержит меньше трех слов,
новая строка не формируется, вместо нее во второе поле выводится сообщение «В строке
должно быть три слова!».
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.07.2018, 13:50
Ответы с готовыми решениями:

Определите функцию vstavka, результатом работы которой является новая строка с добавленным символом справа
Опредилите функцию vstavka, результатом работы которой является новая строка с добавленным символом справа

Составить процедуру, результатом работы которой является символ
Составить процедуру, результатом работы которой является символ, заданный при обращении к процедуре, если этот символ не является буквой, и...

Составление функции, результатом работы которой является истинное значение
Составить функцию, результатом работы которой является истинное значение, если символ, заданный при обращении к процедуре, - прописная...

5
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
07.07.2018, 10:42
deadinside,
посмотри что написано в заголовке списка тем!
Задать вопрос
А ты тупо публикуешь учебное задание!
ЧТО СДЕЛАЛ? Что не получается?
0
690 / 487 / 251
Регистрация: 10.06.2016
Сообщений: 2,320
09.07.2018, 09:06
Между словами строго один пробел!
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Dim i  As Integer, j  As Integer, k(2) As Integer
Private Sub Command1_Click()
j = 0
For i = 1 To Len(Text1.Text)
If Mid$(Text1.Text, i, 1) = " " Then
j = j + 1
k(j) = i
End If
Next
If j = 1 Then
Text2.Text = "Должно быть три слова"
Else
Text2.Text = Mid$(Text1.Text, k(2) + 1, Len(Text1.Text) - k(2)) + " " + Mid$(Text1.Text, k(1) + 1, k(2) - k(1)) + " " + Mid$(Text1.Text, 1, k(1) - 1)
End If
End Sub
 
Private Sub Form_Load()
Text1.Text = "Слово1 Слово2 Слово3"
'Text1.Text = "Слово1 Слово2"
End Sub
0
1104 / 480 / 33
Регистрация: 05.07.2018
Сообщений: 1,870
Записей в блоге: 7
18.07.2018, 17:18
1. txt1 - первое окно, txt2 - второе окно, cmd1 - кнопка
2. число пробелов между словами любое

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
Option Explicit
 
Dim T As String
Dim k%, k2%, t1$, t2$, t3$
Const p = " "
Const p2 = p + p
 
Private Sub cmd1_Click()
    T = txt1
    Call Pro1
    k = InStr(T, p)
    k2 = InStr(k + 1, T, p)
    
    If k2 Then
        t1 = Left$(T, k - 1)
        t2 = Mid$(T, k2 + 1) + p
        t3 = Mid$(T, k + 1, k2 - k)
        txt2 = t2 + t3 + t1
    Else
        txt2 = "В строке должно быть три слова"
    End If
End Sub
 
Private Sub Pro1()
    Do
        k = InStr(T, p2)
        If k Then
            t1 = Left$(T, k)
            t2 = Mid$(T, k + 2)
            T = t1 + t2
        End If
    Loop Until k = 0
End Sub
0
4089 / 1469 / 401
Регистрация: 07.08.2013
Сообщений: 3,670
18.07.2018, 18:43
эх скукота
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Dim stroka$
stroka = "   слово1    слово2   слово3    "
stroka = Trim(stroka) ' убираем лидирующие и концевые пробелы
'прибиваем двойные(тройные, четверные и т.д)  пробелы
Do While InStr(1, stroka, "  ") > 0
stroka = Replace(stroka, "  ", " ")
Loop
'разбираем фразу на слова
Dim a() As String
a() = Split(stroka, " ")
'определяем количество слов если меньше 3 то выводим сообщение об ошибке если больше то меняем 3 слово и 1 слово местами
If UBound(a()) < 2 Then
MsgBox "Должно быть 3 слова"
Else
MsgBox a(2) & " " & a(1) & " " & a(0)
End If
надеюсь под себя подстроить сможете
1
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
18.07.2018, 19:11
Перестановка слов - классическая задача для RegExp
Visual Basic
1
2
3
4
5
6
7
8
9
10
Dim stroka$
stroka = "   слово1    слово2   слово3    "
With CreateObject("vbscript.regexp")
  .Pattern = "(\S+)\s+(\S+)\s+(\S+)"
  If .test(stroka) Then
    MsgBox .Replace(stroka, "$3 $2 $1")
  Else
    MsgBox "В строке должно быть три слова"
  End If
End With
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.07.2018, 19:11
Помогаю со студенческими работами здесь

Описать функцию, результатом работы которой является символ , заданный при обращении к процедуре
Описать функцию , результатом работы которой является символ , заданный при обращении к процедуре , если этот символ не является буквой , и...

Процедура, результатом которой будет выражение, являющееся факториалом числа
Написать процедуру, результатом которой будет выражение, являющееся факториалом числа, и в котором числа (сомножители) упорядочены в...

Разработать программу, результатом которой является очередь
Разработать программу, результатом которой является очередь, сформирована на основе последовательности вершин, полученных при обходе в...

Функции:Составить процедуру, результатом работы которой
Составить процедуру, результатом работы которой является истинное значение, если символ, заданный при обращении к процедуре, – буква, и...

Определить что является результатом работы программы
Определить что является результатом работы программы Program Example_74; Var n1, n2: Longint; k1, k2: Byte; Function Quantity...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru