Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ИНФОРМАТИКА 080100_62.doc
Скачиваний:
8
Добавлен:
12.09.2019
Размер:
4.51 Mб
Скачать

12.4. Контрольные вопросы

  1. Какие типы числовых данных использованы Вами в программе? Чем они отличаются?

  2. Объясните смысл использованных в программе выражений. Назовите использованные Вами встроенные функции.

  3. В чем заключается отличие между процедурой и функцией?

  4. Каким образом может быть организовано обращение к процедуре?

  5. * Как можно сохранить используемые значения параметров для последующей обработки?

  6. * Как может быть организован повторный ввод параметров в функцию, если их первоначальные значения были недопустимы? Предложите вариант программы.

  7. * Добавьте в процедуру блоки, реализующие выход из процедуры при нажатии кнопок Cancel.

13. Создание программ обработки символьной информации

Цель работы – изучение основ создания программ обработки символьной информации средствами языка программирования VBA.

После выполнения работы студент должен знать основы разработки программ обработки символьной информации, уметь создавать и отлаживать программы обработки символьной информации средствами VBA.

13.1. Справочная информация

Символьная информация постоянно присутствует во всех программах, как средство ведения диалога с пользователем, а также для отображения входных и выходных данных. Для ее описания используются типы данных String, Variant, а также символьные константы. При обработке символьной информации часто применяются функции обработки строк Asc(), Chr(), Lcase(), Ucase(), Left(), Rigt(), Mid(), Len(), Ltrim(), Rtrim(), Trim(), Spaсe(), String(), StrComp(), StrReverse(), InStr(), InStrRev(), Replace() (см. прилож. 14).

13.2. Пример программы

1. Требуется создать программу, позволяющую преобразовать начальную букву строковой переменной в заглавную, если это не пробел.

Пример 3.1

‘Лабораторная работа №3

Sub Lab_rab_3_1()

Dim p, v As String

'объявляем переменные р (входная) и v (выходная) - строковыми

M1: p = InputBox("Введите строку символов", _

"Ввод данных", " абвгдежзе")

'Метка М1: переменной р присваиваем значение строки символов, 'вводимой с клавиатуры

If p = Empty Then Exit Sub

'если нажата кнопка Cancel, тогда завершаем процедуру

If Asc(Left(p, 1)) = 32 Then

'если ASCII код первого символа строки есть "пробел", тогда

MsgBox "Первый символ - пробел. Повторите ввод", _

vbInformation + vbOKOnly, "Внимание!"

'вывод на экран сообщения

GoTo M1

'и переход на метку М1

Else

'иначе

v = UCase(Left(p, 1)) & Right(p, Len(p) - 1)

'Формирование выходной переменной

MsgBox v, vbOKOnly, "Результат"

'Вывод результата

End If

'закрывающая операторная скобка

End Sub

2. Требуется создать программу вывода на экран очередного символа строки. Реализовать режим повтора работы программы по запросу пользователя.

Пример 3.2

‘Лабораторная работа №3

Sub Lab_rab_3_2()

Dim p As String, i, n, k As Integer

met: p = InputBox("Введите строку символов", _

"Ввод данных", "абвгдеж")

If p = Empty Then Exit Sub

For i = 1 To Len(p)

'Цикл по I от 1 до количества символов строки

MsgBox Str(i) & " – тый символ строки - " & Mid(p, i, 1)

Next i

k = MsgBox("Продолжить работу программы", _

vbYesNo + vbQuestion)

'Переменной к присваивается значение, возвращаемое

'функцией MsgBox() в зависимости от нажатой пользователем

'кнопки Да или Нет

If k = vbYes Then GoTo met

End Sub