Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Действия с символьными строками



 

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

В таблице приведены примеры использования некоторых функций для работы с символьными строками.

 

Выражение Комментарий
N = Len (S) Длина строки S присваивается числовой переменной N
S1 = Left (S, n) Строковая переменная S1 получает n левых символов S
S1 = Right (S, n) Строковая переменная S1 получает n правых символов S
S1 = Mid (S, n, m) Строковая переменная S1 получает n символов S, начиная с m-го
N =Val (S) Числовая переменная N получает значение числа из строки S
S = Str (N) Строковая переменная S получает символьное представление числа N
N = Asc (C) N получает значение ASCII-кода символа С
С = Chr (N) С получает значение символа с кодом ASCII
S1 = Ucase (S) Преобразование всех букв строки S в прописные
S1 = Lcase (S) Преобразование всех букв строки S в строчные

 

Следует помнить, что коды заглавных и прописных букв разные. Коды заглавных букв от «А» до «Я» (без буквы «Ё») идут подряд от 192 до 223, а прописных – от 224 до 255 (т.е. для код каждой прописной буквы на 32 больше кода заглавной. Исключение – буква «Ё» (код 168) и «ё» (код 184).

Коды с 0 до 31 относятся не к символам, отображаемым на экране, а служат для обозначения управляющих команд. Так, например код 13 означает «возврат каретки», то есть переход к началу строки, а код 10 – переход на следующую строку.

 

Порядок выполнения:

 

1) создать экранную форму, разместив на ней необходимые элементы управления;

2) поместить на форму поясняющие надписи около этих элементов, а также фамилию, номер группы, текущую дату и номер варианта;

3) создать процедуры, реализующие разработанный алгоритм.

 

 

Варианты задания.

 

1. В текстовое поле вводится строка из трех чисел, разделенных пробелами. При нажатии кнопки «Решение» запускается процедура, которая вычисляет сумму этих чисел и выводит результат во второе текстовое поле. Если строка содержит не цифровые символы, то вместо суммы в это поле выводится сообщение «Строка содержит ошибку».

 

2. В текстовое поле вводится строка из цифр. При нажатии кнопки «Пуск» запускается процедура, которая подсчитывает количество цифр во введенной строке и вычисляет их сумму. Результаты выводятся в соответствующие текстовые поля. Если строка содержит не цифровые символы, подсчитывается только количество введенных символов, а сумма не вычисляется.

 

3. В текстовое поле вводится строка из нескольких слов. При нажатии кнопки «Обработка» запускается процедура, которая подсчитывает, сколько раз в этой строке появляются буквы «а» и «е» (как строчных, так и прописных). Результаты выводятся в соответствующие текстовые поля.

 

4. В текстовое поле вводится натуральное число. При нажатии кнопки «Перевод» запускается процедура, которая преобразует это число в двоичное, восьмеричное и 16-ричное. Результаты выводятся в соответствующие текстовые поля. Если строка содержит не цифровые символы, то выводится сообщение об ошибке.

 

5. В текстовое поле вводится натуральное число. При нажатии кнопки «Пуск» запускается процедура, которая определяет, есть ли в этом числе одинаковые цифры, и если есть, то сколько раз они там появляются. Результаты выводятся в виде таблицы. Если одинаковых цифр в числе нет, то вместо таблицы выводится сообщение об этом.

 

6. В два текстовых поля вводятся две строки символов. При нажатии кнопки «Сравнение» запускается процедура, которая определяет, есть ли в этих строках одинаковые символы, и если есть, то они выводятся в текстовое окно.

 

7. В два текстовых поля вводятся по строке символов, причем вторая строка короче первой. При нажатии кнопки «Поиск» запускается процедура, которая определяет, входит ли вторая строка в первую в качестве подстроки. Результат выводится в текстовое окно. В случае, если вторая строка окажется длиннее первой, выводится сообщение об ошибке.

 

8. В текстовое поле вводится строка, состоящая из букв и цифр. При нажатии кнопки «Обработка» запускается процедура, которая из данной строки удаляет цифры и формирует новую строку, в которой остаются только введенные буквы. Результат выводится в во второе текстовое поле.

9. В текстовое поле вводится строка, состоящая из русских строчных букв. При нажатии кнопки «ОК» запускается процедура, которая из данной строки формирует другую из тех же букв, но упорядоченных по алфавиту (например: «казак» Þ «аазкк»). Результат выводится во второе текстовое поле.

 

10. При нажатии кнопки «Пуск» запускается процедура, которая с помощью датчика случайных чисел формирует массив из 10 чисел в диапазоне от 0 до 100. Эти числа выводятся в текстовое окно. При нажатии кнопки «Обработка» запускается другая процедура, которая в сформированном массиве определяет наибольшее и наименьшее значения и выводит их в текстовые окна.

Указание. Случайное число из интервала (0, 1) возвращает функция rnd. Пример: переменная Х получит значение из интервала (0, 100) после выполнения оператора X=100*rnd

 

11. В текстовое поле вводится строка из трех слов, разделенных пробелами. При нажатии кнопки «ОК» запускается процедура, результатом работы которой является новая строка, отличающаяся от введенной тем, что первое и третье слова меняются местами. Эта строка выводится во второе текстовое поле. Если введенная строка содержит меньше трех слов, новая строка не формируется, вместо нее во второе поле выводится сообщение «В строке должно быть три слова! ».

 

12. В текстовое поле вводится строка из русских букв. При нажатии кнопки «Решение» запускается процедура, которая подсчитывает количество гласных и согласных букв в строке. Результат выводится во второе текстовое поле.

 

13. В текстовое поле вводится строка из трех чисел, разделенных пробелами. При нажатии кнопки «Решение» запускается процедура, которая определяет наибольшее и наименьшее из этих чисел и выводит результат во второе текстовое поле. Если строка содержит не цифровые символы, то вместо суммы в это поле выводится сообщение «Строка содержит ошибку».

 

14. В текстовое поле вводится целое число. При нажатии кнопки «Пуск» запускается процедура, которая определяет, каких цифр в числе больше – четных или нечетных. Соответствующее сообщение выводится в текстовое окно.

 

15. В текстовое поле вводится строка из русских букв прописных и заглавных. При нажатии кнопки «Обработка» запускается процедура, которая формирует из этой строки новую, в которой все прописные буквы заменены заглавными, а заглавные – прописными. Новая строка выводится во второе окно.

 

16. В текстовое поле вводится натуральное число в восьмеричной системе счисления (Цифры от 0 до 7). При нажатии кнопки «Перевод» запускается процедура, которая преобразует это число в десятичную систему. Результат выводится во второе текстовое поле. Если введенная строка содержит цифры 8 или 9, то выводится сообщение «Число не восьмеричное».

 

17. В текстовое поле вводится натуральное число. При нажатии кнопки «Пуск» запускается процедура, которая определяет, делится ли это число без остатка на 2, 3, 5 и 7. Для вывода слов «Да» или «Нет» используются четыре текстовых поля, рядом с которыми помещены поясняющие надписи («число делится на 2», «число делится на 3» и т.д.). Если во введенной строке кроме цифр есть другие символы (точка, буквы), то выводится сообщение об ошибке.

 

18. В два текстовых поля вводятся две строки символов одинаковой длины. При нажатии кнопки «ОК» запускается процедура, которая формирует новую строку, в которой символы, стоящие на нечетных местах берутся из первой введенной строки, а стоящие на четных – из второй (например: «парк», «лего» Þ «перо»). Эта строка выводится в третье текстовое поле. Если введенные строки имеют разную дину, выводится сообщение об ошибке.

 

19. В первое текстовое поля вводится строка из русских букв, во второе – одна буква. При нажатии кнопки «Поиск» запускается процедура, которая определяет, встречается ли эта буква в строке и если да, то сколько раз. Результат выводится в третье текстовое поле.

20. В текстовое поле вводится строка, состоящая из русских и латинских букв. При нажатии кнопки «Обработка» запускается процедура, которая из данной строки удаляет латинские буквы и формирует новую строку, в которой остаются только русские буквы. Результат выводится в во второе текстовое поле.

 

21. При нажатии кнопки «Пуск» запускается процедура, которая с помощью датчика случайных чисел формирует массив из 10 чисел в диапазоне от -100 до 100. Эти числа выводятся в текстовое окно. При нажатии кнопки «Обработка» запускается другая процедура, которая в сформированном массиве определяет количество отрицательных, положительных и нулевых значений и результат выводит в текстовые окна.

Указание. Случайное число из интервала (0, 1) возвращает функция rnd. Пример: переменная S получит значение из интервала (–100, 100) после выполнения оператора S=200*rnd – 100.

 

22. В текстовое поле вводится строка из трех слов, разделенных запятыми. При нажатии кнопки «ОК» запускается процедура, результатом работы которой является новая строка, отличающаяся от введенной тем, что второе и третье слова меняются местами, а разделяющие слова запятые заменяются пробелами. Эта строка выводится во второе текстовое поле. Если введенная строка содержит меньше трех слов, новая строка не формируется, вместо нее во второе поле выводится сообщение «В строке должно быть три слова! ».

 

23. В текстовое поле вводится строка из русских и латинских букв, а также цифр. При нажатии кнопки «Решение» запускается процедура, которая подсчитывает количество цифр, русских и латинских букв в строке. Результат выводится во второе текстовое поле.

 

24. В текстовое поле вводится натуральное число N. При нажатии кнопки «Пуск» запускается процедура, которая с помощью датчика случайных чисел формирует массив из N целых чисел в диапазоне от 192 до 233 (коды заглавных букв от А до Я). Эти числа выводятся в текстовое окно. При нажатии кнопки «Обработка» запускается другая процедура, которая преобразует последовательность числовых кодов в строку символов и выводит ее в текстовое окно.

 


Лабораторная работа № 5

Построение графиков

На форме или в графическом поле можно рисовать различные графические примитивы с использованием графических методов. В табл. 5.6 приведены примеры использования этих методов. В качестве объекта object, куда выводятся графические примитивы, может служить сама форма (в этом случае имя объекта Form можно не указывать) или графическое окно PictureBox.

Таблица 1.Графические примитивы

Наименование Синтаксис и комментарии
Точка object.Pset (X, Y), С X, Y – координаты точки, С – цвет.
Окружность object.circle (X, Y), R, С X, Y – координаты центра в выбранной системе координат, R – радиус, C – цвет.
Дуга окружности object.circle (X, Y), R, С, А, В X, Y – координаты центра, R – радиус, C – цвет. A, B – углы дуги в радианах. дуга строится против часовой стрелки от А к В.
Круговой сектор object.circle (X, Y), R, С, –А, –В Минус перед углами означает, что из центра к концам дуги строятся отрезки прямых, образуя угловой сектор.
Овал object.circle (X, Y), R, С,,, K K – коэффициент сжатия овала. При 0 < K< 1 сжатие по горизонтали, при K> 1 – по вертикали.
Отрезок линии object.Line (Xl, Y1) –(X2, Y2), С XI, Yl – координаты точки начала отрезка, Х2, Y2 – его конца, С – цвет.
Прямоугольник object.Line(Xl, Y1) –(X2, Y2), С, В XI, Yl — координаты левой верхней вершины пря­моугольника, Х2, Y2 — координаты правой нижней вершины, С – цвет.
Прямоугольник закрашенный object.Line (Xl, Y1) –(X2, Y2), С, ВF XI, Yl — координаты левой верхней вершины пря­моугольника, Х2, Y2 — координаты правой нижней вершины, С – цвет.
Очистка нарисованного object.Cls
Возвращение цвета точки с указанными ко­ординатами object.Point (X, Y)
Вывод строки символов object.Print [output] В качестве output может быть строковое или чи­словое выражение. Вывод осуществляется от последней построенной точки изображения. Для указания точки вывода можно использовать метод Pset(X, Y).
Масштабирование окна вывода object.Scale (XI, Yl) – (X2, Y2) (XI, Yl) и (X2, Y2) – «мировые» координаты выводимого изображения, левой верхней и правой нижней вершины окна соответственно

 

При построении изображения в графическом окне или на самой форме важным является выбор масштаба по вертикальной и горизонтальной осям. Масштаб устанавливается с помощью метода Scale.

При выводе текста в графическое окно можно задавать тип и размер шрифта, а также цвет выводимых символов и линий. Для этого используются свойства объекта FontName, FontSize и ForeColor. Кроме того, свойство FontTransparent позволяет сделать текст «прозрачным», то есть не закрывающим линии графика.

Программно цвет можно задать тремя способами.

1) Используя константы цветов. В этом случае цвет указывается непосредственно, например:

Form1.ForeColor = vbRed

2) С помощью функции rgb (Red-Green-Blue). Зна­чение каждого из цветов меняется от 0 до 255. Например,

Form1.ForeColor = RGB( 255, 0, 0)

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

Порядок выполнения

 

Необходимо построить в графическом окне график функции y=f(x) на заданном интервале a ≤ x ≤ b. В графическом окне должны быть также построены координатные оси с делениями и числовыми значениями около них в соответствии с выбранным масштабом.

Работа выполняется в два этапа.

На первом этапе заданная функция табулируется, т.е. для заданной функции y=f(x)выводятся на экран пары чисел xi, yi=f(xi) (i=1, …, N). По этим значениям оценивается интервал изменений значений функции на заданном интервале.

На втором этапе осуществляется построение координатных осей и вывод графика функции в графическое окно.

Пример. Построить график функции y = ex× sin(2px) на интервале [–1, 1].

Табулирование этой функции на заданном интервале показало, что ее значения лежат в интервале [–2, 2].

Ниже приведена процедура построения осей координат и графика функции в графическом окне Picture1. Запускается процедура по нажатию кнопки Command1.

 

Private Sub Command1.Click ( )

Const PI = 3.141529

Picture1.Scale (–1, 2 ) – (1, –2) ’ Задание масштаба

Picture1.Line (–1, 0) – (1, 0) ‘ Построение координатных осей

Picture1.Line (0, –2) – (0, 2)

For I = –1 To 1 Step 0.25 ‘ Вывод надписей на оси X

Picture1.PSet ( I, 0)

Picture1.Print I

Next I

For I = –2 To 2 ‘ Вывод надписей на оси Y

Picture1.PSet (0, I)

Picture1.Print I

Next I

For X = –1 To 1 Step 0.002 ‘ Вывод точек графика функции

Y = exp (X) * sin (2 * PI * X ) )

Picture1.PSet ( X, Y )

Next X

End Sub

 

 

На рисунке показан вид экранной формы с графическим окном для данного примера.

Варианты задания.

 

функция интервал
[0, 1]
[-1, 1]
[-2, 2]
[0, 2]
[-1, 2]
[-1, 1]
[-1, 2]
[0, 3]
[-2, 2]
[-3, 1]
[-2, 1]
[-2, 2]
[-3, 3]
[-2, 3]
[-1, 1]
[0, 4]
[-2, 2]
[-1, 2]
[0, 2]
[-3, 3]
[-1, 1]
[0, 3]
[-2, 2]
[0, 2]

Лабораторная работа № 6


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-03-17; Просмотров: 1812; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.038 с.)
Главная | Случайная страница | Обратная связь