- •Курс лекций
- •Лекция 1. Технология программирования - основа разработки качественных программных средств
- •1.1. Программа как формализованное описание процесса обработки данных. Понятие «программное средство».
- •Определение требований к программному средству.
- •1.3. Спецификация качества программного средства.
- •Технология программирования как технология разработки качественных программных средств.
- •. Этапы развития технологии программирования.
- •2.1. Специфика разработки программных средств.
- •Виды программных продуктов и специализация программистов
- •Лекция 2. Общие принципы разработки программных средств
- •2.2. Основные этапы решения задач на эвм и их характеристика.
- •Основные этапы решения задач на эвм и их характеристика
- •Постановка задачи.
- •Формализация задачи.
- •Построения алгоритма
- •Составление программы на языке программирования.
- •Отладка и тестирование программы
- •Разработка документации.
- •Сопровождение опытной эксплуатации.
- •2.3. .Источники ошибок в программных средствах
- •2.3.1. Интеллектуальные возможности человека
- •2.3.2. Неправильный перевод как причина ошибок в программных средствах.
- •Модель перевода.
- •Основные пути борьбы с ошибками.
- •Лекция 3. Разработка структуры программы и модульное программирование.
- •3.1. Основные классы архитектур программных средств.
- •Структура программы. Методы разработки структуры программы. Блок - схема программы
- •Модульное программирование. Основные характеристики модуля.
- •Основные характеристики программного модуля.
- •Спецификация программного модуля содержит,
- •Порядок разработки программного модуля.
- •Контроль структуры программы.
- •Лекция 5. Представление основных структур программы в языках высокого уровня
- •Основные языки программирования и их характеристика.
- •Структура данных в языках программирования высокого уровня
- •Типы данных
- •6. Лекция 6. Стандартные типы данных в языках программирования Visual Basic.
- •Простые целые и вещественные типы переменных. И операции с ними
- •Логические типы данных и операции с ними.
- •7. Лекция 7. Представление строковых типов данных, типы данных Date и Variant.
- •Строковые типы данных и функции работы сними.
- •7.1.1. Операции со строковым типом данных.
- •Переменные типа Data и стандартные функции работы с ними.
- •Лекция 8. Структуры ветвления (операторы условного перехода) и повторения ( циклы) и особенности их использования в программах.
- •Операторы ветвления
- •8.2. Структуры повторения (Циклы).
- •Лекция 9. Структурированные типы данных. Массивы и пользовательские типы данных, их использование в программах
- •Типы данных, определяемые пользователем.
- •9.1. Массивы. Статические массивы.
- •9.2. Динамические массивы
- •9.3. Функции, предназначенные для работы с массивами.
- •9.4. Типы данных, определяемые пользователем.
- •Лекция 10. Основные строительные блоки программы, процедуры и функции.
- •Процедуры, назначение, написание, размещение.
- •10.2. Процедуры обработки событий.
- •Процедуры общего назначения.
- •Вызов процедуры.
- •Выход из процедуры до ее завершения.
- •Лекция 11. Функции . Области видимости переменных, функций и процедур
- •Функции. Стандартные функции
- •Функции, создаваемые пользователем
- •Модульная конструкция программы. Модули, формы. Стандартные модули, модули класса.
- •Области видимости переменных, процедур и функций
- •Лекция 12. Хранение информации в файлах.
- •12.1. Файлы с последовательным доступом.
- •12.1. Открытие файла с последовательным доступом.
- •12.3. Чтение данных из файла с последовательным доступом.
- •12.3. Запись информации в файл с последовательным доступом.
- •12.4. Работа с файлами произвольного доступа.
- •12.5. Ввод и вывод информации записями
- •Лекция 13. Операции с файлами.
- •13.1. Операции работы с файлами
- •13.2. Установка атрибутов файлов
- •Стандартные объекты для работы с файлами.
- •13.4. Вывод информации на печать
- •Лекция 14. Методы структурного программирования. Методы доказательства и отладки программ. Вопросы:
- •Методы структурного программирования
- •14.2. Пошаговая детализация и понятие о псевдокоде.
- •Пример пошагового составления программы
- •Доказательство свойств программы.
- •14.3.1. Обоснования программ. Формализация свойств программ.
- •Свойства простых операторов.
- •Свойства основных конструкций структурного программирования.
- •14.4.4. Завершимость выполнения программы.
- •Пример доказательства свойства программы.
- •Лекция 15 Отладка программы
- •15.1. Типы ошибок в программе
- •15.2. Программные средства для обнаружения ошибок.
- •Ошибки в структуре программы.
- •Перехват и устранение ошибок
- •15.5. Инструменты отладки
- •6. Отображение значений переменных и функций.
- •Лекция 16. Обьекто - ориентированное программирование.
- •16.1. Основные понятия объекто – ориентированного программирования.
- •16.2. Стандартные объекты управления, свойства, методы, события
- •16.3. . Пользовательские элементы управления
- •Лекция 17. Применение технологии ole в программировании и завершение проекта.
- •17.1.. Применение технологии ole в программировании на языках высокого уровня
- •Объект управления ole Container
- •Технология ole Automation.
- •17.4. Состав проекта
- •Создание дистрибутива программного средства
- •Документирование программных средств
- •Аттестация программного средства.
7. Лекция 7. Представление строковых типов данных, типы данных Date и Variant.
Вопросы
1. Строковые типы данных и функции работы сними.
2. Типы данных Date и Variant и функции работы сними.
Строковые типы данных и функции работы сними.
В языках программирования признано необходимым иметь дело с текстами, записываемыми с помощью некоторого набора печатных знаков – литер ( символов). Этот набор в языке обычно не фиксируется и зависит от реализации языка. Обычно набор литер совпадает с набором знаков, доступных (с теми или иными ухищрениями ) на клавиатуре , экране мониторов и в принтерах. В число литер обязательно входит пробел. Значения из доступного набора литер относятся к типы литерный Это еще не тексты, а только знаки из которых составляется текст. В языке Турбо – Паскаль литерные (символьный) тип данных обозначается как Char.
Строковый тип данных представляет последовательность символов. Каждый символ занимает 1 байт. В Visual Basic символьный и строковый типы объединены в один, обозначаются как String. Значение, присваемое строковому типу данных представляет собой литерал и должно быть заключено в двойные кавычки.
Например, wordStr = “ Изучаем технологию программирования” ‘Строковой переменной
WordStr присваивается строка.
Длина строки может составлять от одного символа до 2 миллиардов символов. При использовании строковых переменных может указываться её фиксированная длина
Например, Dim Exampel As String * 1048, - строковая переменная содержит 1049 байт (символов).
( В языке Турбо – Паскаль строковый тип данных относится к структурированным типам и обозначается String, Длина строки может находиться в пределах 0 – 255 символов}
Строковая константа есть последовательность символов, заключенная в двойные кавычки ( в Т-П - в апострофы).
Например, b = “ Изучаем технологию программирования”.
В таблице 7.1 приведены характеристики строковых типов данных для языков Турбо- Паскаль и Visual Basic
Таблица 7.1.
Строковые типы данных и функции
Тип в Т-П |
Тип в VB |
Хранимая величина |
Занимаемая память |
Диапазон значений |
Char |
- |
Символьный тип |
1 байт |
Все символы кода ASCII |
String |
String |
Строковая переменная |
1 байт на символ |
Последовательность символов, заключенная в ковычки 65500 символов -16 разрядный код и 2Е32 символов – 32 разрядный код |
- |
String *(длина) |
Строковая переменная, ограниченной длины |
1 байт на символ |
|
7.1.1. Операции со строковым типом данных.
К строковым типам данных (String) применимы следующие операции и функции:
Для соединения двух строк путем подстыковки к концу первой начала второй служит операция КОНКАТЕНАЦИЯ. Visual Basic предоставляет два оператора для соединения строк: + и &. Оба оператора выполняют одну и ту же работу. Но поскольку знак + является также арифметическим оператором, то рекомендуется использовать знак &.
Замечание. Перед и после оператора конкатенации должны быть пробелы. Редактор VB автоматически ошибку в написании оператора конкатенации почему-то не исправляет.
Для форматирования и преобразования текста в строковых переменных применяются следующие основные фунуции, представленные в Таблице 7.2.
Таблица 7.2..
Основные функции , для работы со строковыми переменными
Функция |
Синтаксис функции |
Назначение |
Format |
Format (txtZip.Text, “0000”
|
Функция гарантирует получение вводимого числа в форме переменной типа String |
UCase |
UpperString = Ucase(inputstring) |
Функция преобразует все буквы переменной inputstring в верхний регистр (в прописные) |
LCase |
LowerString = Lcase(inputstring) |
Функция преобразует все буквы переменной inputstring в нижний регистр (в строчные) |
Если записать строку Option compare Text в начале вашей программы то будет использоваться «нормальный» алфавитный порядок без учета регистра. |
||
LSet |
LSet LeftStr = Inputsting |
Позволяет выровнять текст относительно левой границы |
RSet |
RSet RightStr = Inputsting |
Позволяет выровнять текст относительно правой границы |
InStr |
Result = InStr ([startpos,] sourcestr, searchstr [, compare]) startpos – позиция, с которой начинается поиск, sourcestr – строка, в которой осуществляется поиск, searchstr – строка, которую надо найти, compare - аргумент, определяющий различие между прописными и строчными буквами, 0 – различие учитывается, 1 - нет |
Позволяет выполнить в строке поиск символа , слова, или группы слов. В переменной Result записывается номер позиции в исходной строке, в которой начинается найденная строка. |
Result |
result = Len (inputstr) |
Определяет число символов в переменной или в выражении типа string или variant . |
LTrim |
Result = LTrim (inputstr) |
Удаляет пробелы в начале строки |
RTrim |
Result = RTrim (inputstr) |
Удаляет пробелы в конце строки |
Trim |
result = Ttrim (inputstr) |
Удаляет пробелы в середине строки |
Left |
Newstr = Left (sourcestr, numchars ) |
Удаление символов с начала строки |
Right |
newstr=Right (sourcestr, numchars ) |
Удаление символов с конца строки |
Like |
FirstStr Like SecondStr |
Сравнение строк, сравнение строки с шаблоном |
Mid |
newstr = Mid (sourcestr, startpos [, numchsrs ]), sourcestr – строка, содержащая информацию, startpos – позиция, с которой начинается удаление символов, numchsrs – количество извлекаемых символов |
Удаление символов из середины строки |
Mid |
Mid (sourcestr, startpos [, numchsrs ]) = replstr
|
Замена части строки другой строкой |
Cstr |
Numstr = Cstr (inptnum) |
Преобразование числа в строку |
Cint |
Numint = Cint (inptstr) |
Преобразование строки в целое число |
Clng |
Numling = Cling (inptstr) |
Преобразование строки в длинное целое число |
Csng |
Numsng = Csng (inptstr) |
Преобразование строки в десятичное число |
Cdbl |
Numdbl = Cdbl (inptstr) |
Преобразование строки в десятичное число |
Val |
Numer = Val (instr) |
Преобразование строки в любое число |
Chr |
Chr ( N), где N код символа. |
Вставляет значение типа String, содержащая символ, соответствующий указанному коду символа набора, такого как набор символов ANSI |
Оператор Like позволяет не только определить совпадающие слова, но и сравнить слово с шаблоном. Например, проверить, будет ли набор символов, введенный сотрудником страховой компании будет состоять из трех букв, дефиса, затем двух цифр, снова дефис и четырех цифр?
Выражение для сравнения будет выглядеть так:
TxtSSNum.Text Like “ ? ? ? - # # - # # # # “
Операнд в левой части должен быть строкой как обычно, но операнд в правой части должен быть шаблоном. Шаблоны могут быть довольно сложными.Рассмотрим базовые правила.
Символ ? указывает, что здесь может быть одиночный символ.
Символ * указывает, что здесь может быть любое количество символов.
Символ # указывает, что здесь может быть только цифра.
Любой другой символ указывает, что здесь может быть именно этот символ.
Список символов в квадратных скобках означает, что можно использовать какой –нибудь один из них, и никакой другой Например, “[abc]” указывает, что в данной позиции может находиться либо “а”, либо “b”, либо “с”.
Если первым символом в скобках является восклицательный знак, то для сравнения используется символ, не входящий в список. Например, “[!а]” указывает, что здесь может быль любой символ кроме “а “.
Выражение типа « символ, дефис, символ» внутри скобокберет для сравнения один символ из указанного диапазона. Например, выражение “[a – g]” , что здесь может быть один из символов из указанного диапазона, включая границы, и ни какой другой. Первый символ, используемый для задания границ диапазона, должен быть меньше второго. В противном случае машина выдаст ошибку.
Дефис “ – ” в начале или конце выражения в скобках не обозначает диапазон, а является просто символом.
Шаблон “[]” трактуется как пыстой и игнорируется.
Вне скобок дефис “- “ представляет себя точно также, как и любой другой символ. Внутри скобок вы должны поставить его первым (или сразу после восклицательного знака) или последним , чтобы он представлял себя, а не диапазон.
Восклицательный знак “!” вне скобок представляет собой символ, внутри скобок он является символом только если он не первый.
Правая квадратная скобка ( ] ) представляет символ , если ей не предшествуел левая квадратная скобка. Например строка «а??]d??» требует правой скобки в четвертой позиции. Нельзя использовать правую скобку внутри квадратных скобок.
Символы ?, *, [ и # нельзя использовать вне скобок, чтобы представить их как символы. Если вы хотите сравнить их друг с другом, вы должны заключить их в квадратные скобки.Например, строка «# #[?]» требует двух цифр и знака , в третей позиции.
Если вы используете записьOption CompareText в начале программы, то игнорируется верхний/нижний регистры в сравнениях Like?, так, что[X – Z] сравнивает X c x,или Х,Y c y или Y и Z c z или Z.
