
- •7. Одномерные массивы 114
- •8. Обработка двумерных массивов (матриц) 162
- •9. Обработка строк 183
- •10. Тип данных, определенный пользователем. Структуры 214
- •11. Использование подпрограмм 228
- •Приложение 52 310 Список литературы 313 Введение
- •1. Этапы создания Windows-приложения
- •2. Среда Visual Basic 2005
- •2.1. Структура среды Visual Basic 2005
- •2.2. Создание нового проекта
- •2.3. Сохранение проекта
- •2.4. Выполнение приложения
- •2.5. Основные команды среды Visual Basic 2005
- •2.6. Методы тестирования
- •2.7. Отладка приложений в среде vb
- •3. Разработка интерфейса в среде vb. Основные элементы управления
- •3.1. Метка
- •3.2. Текстовое поле
- •3.3. Кнопка
- •3.4. Окно списка
- •3.5. Выравнивание положения элементов управления
- •4. Программа линейной структуры
- •4.1. Понятие переменной
- •4.2. Типы данных
- •4.3. Объявление переменных
- •4.4. Оператор присваивания
- •Оператор присваивания работает справа налево.
- •4.5. Константы
- •4.6. Арифметические операции
- •4.7. Математические функции
- •4.8. Арифметическое выражение
- •4.9. Окно ввода (InputBox)
- •4.10. Окно вывода сообщения (MsgBox)
- •4.11. Пример. Вычисление площади треугольника
- •4.12. Пример. Нахождение цифр числа
- •5. Организация ветвлений
- •5.1. Логические константы и переменные
- •5.2. Операции сравнения
- •5.3. Логические операции
- •5.4. Логическое выражение
- •5.5. Условный оператор
- •5.6. Функция iIf
- •5.7. Оператор множественного ветвления ElseIf
- •5.8. Оператор выбора Select Case
- •5.9. Оператор безусловного перехода GoTo
- •5.10. Пример. Решение линейного уравнения
- •5.11. Пример. Программа-калькулятор
- •6. Программирование повторений
- •6.1. Цикл со счетчиком
- •6.1.1. Табуляция функции
- •6.1.2. Вычисление факториала
- •6.1.3. Обработка совокупности чисел с известным числом элементов
- •6.2. Цикл с условием
- •6.2.1. Ввод с проверкой
- •6.2.2. Обработка совокупности чисел с неизвестным числом элементов
- •6.2.3. Вычисление суммы ряда по общей формуле
- •Вычисление суммы ряда с использованием рекуррентного соотношения
- •6.2.5. Вычисление произведения ряда
- •Решение нелинейных уравнений методом простой итерации
- •7. Одномерные массивы
- •Массивы всегда обрабатываются в цикле.
- •7.1. Ввод массива
- •Вывод массива в окно списка и в текстовое поле
- •7.3. Вычисление суммы и произведения элементов массива
- •7.4. Определение количества элементов массива, удовлетворяющих некоторому условию
- •7.5. Вычисление среднего арифметического и среднего геометрического элементов массива, удовлетворяющих некоторому условию
- •7.6. Нахождение максимального элемента массива
- •7.7. Нахождение минимального элемента массива, удовлетворяющего некоторому условию
- •7.8. Поиск первого элемента массива, удовлетворяющего некоторому условию
- •7.9. Поиск последнего элемента массива, удовлетворяющего некоторому условию
- •7.10. Замена одного элемента массива
- •7.11. Замена всех элементов массива, удовлетворяющих некоторому условию
- •7.12. Перестановка местами двух элементов массива
- •7.13. Формирование нового массива из некоторых элементов исходного массива
- •7.14. Проверка совпадения всех элементов массива
- •7.15. Проверка упорядоченности всех элементов массива
- •7.16. Сортировка массива методом пузырька
- •7.17. Линейная сортировка массива (методом поиска минимума)
- •Никогда нельзя использовать одновременно оба способа перестановки элементов массива.
- •8. Обработка двумерных массивов (матриц)
- •8.1. Ввод прямоугольной матрицы
- •8.2. Вывод прямоугольной матрицы в окно списка и в текстовое поле
- •8.3. Поиск максимального элемента матрицы
- •8.4. Обработка матрицы по строкам
- •8.5. Обработка матрицы по столбцам
- •8.6. Обработка квадратных матриц
- •Для обработки элементов, стоящих на любой диагонали, достаточно одного цикла. Для обработки элементов, принадлежащих к одному из треугольников, необходимо использовать вложенные циклы.
- •9. Обработка строк
- •9.1. Основные функции обработки строк
- •9.2. Посимвольная обработка строки
- •9.3. Формирование массива слов строки
- •9.4. Формирование строки из массива слов
- •9.5. Слова-палиндромы
- •9.6. Выделение чисел из строки
- •9.7. Сравнение строк
- •9.8. Обработка многострочного текста
- •10. Тип данных, определенный пользователем. Структуры
- •10.1. Описание структуры. Область видимости. Понятие метода
- •10.2. Оператор With
- •10.3. Ввод массива структур
- •10.4. Вывод массива структур
- •10.5. Поиск в массиве структур
- •10.6. Формирование нового массива из некоторых элементов исходного массива
- •10.7. Сортировка массива структур
- •11. Использование подпрограмм
- •11.1. Определение процедуры и функции. Описание процедуры и функции
- •11.2. Передача параметров по ссылке и по значению
- •11.3. Формальные параметры и фактические переменные
- •11.4. Локальные и глобальные переменные
- •11.5. Static-переменные
- •Приложение 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
- •Приложение 34
- •Приложение 35
- •Приложение 36
- •Приложение 37
- •Приложение 38
- •Приложение 39
- •Приложение 40
- •Приложение 41
- •Приложение 42
- •Приложение 43
- •Приложение 44
- •Приложение 45
- •Приложение 46
- •Приложение 47
- •Приложение 48
- •Приложение 49
- •Приложение 50
- •Приложение 51
- •Приложение 52
- •Список литературы
4.1. Понятие переменной
Переменная – это элемент программы, предназначенный для хранения данных в процессе выполнения программы. Переменная представляет собой зарезервированное место в оперативной памяти для временного хранения данных. Каждая переменная имеет имя и значение. Имя переменной уникально и не может меняться в процессе выполнения программы. Значение переменной может многократно меняться в процессе выполнения программы.
Имя переменной – это строка символов, которая отличает эту переменную от других элементов программы. Иначе имя переменной называют идентификатор (от английского identify – распознавать, устанавливать идентичность). Имя переменной задается программистом. Оно должно подчиняться правилу имен и быть уникальным. Правило имен состоит из шести следующих пунктов.
В имени переменной можно использовать буквы3, цифры и знак подчеркивания.
Первым символом имени должна быть буква.
Остальные символы имени – буквы, цифры и знак подчеркивания.
Имя переменной не должно содержать пробелы, скобки, знаки препинания и математических операций.
Длина имени не должна превышать 255 символов.
Имя переменной не должно совпадать ни с одним ключевым словом Visual Basic 2005.
Значение переменной – это данные, которые хранятся и обрабатываются в процессе выполнения программы. Способ обработки и хранения данных зависит от того, к какому типу данных принадлежит значение переменной.
4.2. Типы данных
Типом данных называется способ хранения и представления данных в компьютерной систем. В Visual Basic 2005 выделено 16 типов данных, которые делятся на две основные группы: числовые и нечисловые. Числовые типы данных предназначены для хранения и обработки чисел. Они в свою очередь делятся на целые типы и рациональные. Нечисловые типы данных предназначены для хранения нечисловой информации. В эту категорию попадают символьные типы данных, логические и прочие. Полная классификация типов данных приведена на рис. 17.
Рис. 17.Классификация типов данных
Рассмотрим характеристики каждого типа данных.
Byte– целое число без знака. Тип предназначен для хранения небольших целых неотрицательных чисел. Занимает 1 байт памяти. Диапазон значений от 0 до 255.
UShort – целое число без знака. Тип предназначен для хранения целых неотрицательных чисел. Занимает 2 байта памяти. Диапазон значений от 0 до 65 535.
UInteger– целое число без знака. Тип предназначен для хранения больших целых неотрицательных чисел. Занимает 4 байта памяти. Диапазон значений от 0 до 4 294 967 295.
ULong– целое число без знака. Тип предназначен для хранения очень больших целых неотрицательных чисел. Занимает 8 байт памяти. Диапазон значений от 0 до 18 446 744 073 709 551 615.
SByte– целое число со знаком. Тип предназначен для хранения небольших целых чисел, как отрицательных, так и положительных. Занимает 1 байт памяти. Диапазон значений от -128 до 127.
Short– целое число со знаком. Тип предназначен для хранения положительных и отрицательных целых чисел. Занимает 2 байта памяти. Диапазон значений от -32 768 до 32 767.
Integer– целое число со знаком. Тип предназначен для хранения больших целых чисел, как отрицательных, так и положительных. Занимает 4 байта памяти. Диапазон значений от -2 147 483 648 до 2 147 483 647.
Long– целое число со знаком. Тип предназначен для хранения очень больших целых чисел, как отрицательных, так и положительных. Занимает 8 байт памяти. Диапазон значений от -9 233 372 036 854 775 808 до 9 233 372 036 854 775 807.
Single– рациональное число одинарной точности с плавающей точкой. Число с плавающей точкой представляется в виде произведения мантиссы и 10 в некоторой степени. Мантисса – это рациональное число в диапазоне
. Например, запись 1.234E2 соответствует рациональному числу
. Число с плавающей точкой может иметь и отрицательный показатель степени. Например,
. Такая форма записи позволяет хранить в одной переменной как очень большие, так и очень маленькие числа. Одинарная точность означает, что в дробной части мантиссы 7 цифр. В Visual Basic 2005 дробная часть отделяется от целой точкой (а не запятой). Переменная этого типа занимает 4 байта памяти. Диапазон отрицательных чисел от -3.4028235E38 до -1.401298E-45. Диапазон положительных чисел от 1.401298E-45 до 3.4028235E38.
Double– рациональное число двойной точности с плавающей точкой. Двойная точность означает, что в дробной части мантиссы 17 цифр. Переменная этого типа занимает 8 байт памяти. Диапазон отрицательных чисел от -1.79769313486231570E308 до -4.94065645841246544E-324. Диапазон положительных чисел от 4.94065645841246544E-324 до 1.79769313486231570E308.
Decimal– рациональное число с фиксированной точкой. В отличие от чисел с плавающей точкой, числа данного типа не имеют множителя «десять в степени…» Это позволят избежать ошибок округления. Такие числа применяются для очень точных расчетов, например, финансовых. Дробная часть такого числа содержит 28 знаков. Занимает 16 байт памяти. Диапазон значений от -7,9228162514264337593543950335 до 7,9228162514264337593543950335.
Boolean– тип данных для хранения логических величин. Может иметь только два значения: True (Истина) и False(Ложь). При переводе числовых данных значений в логические значения ноль становится False, а все другие значения – True. При обратном преобразовании False становится нулем, а True – единицей. Объем памяти, занимаемой переменной этого типа, различен и зависит от операционной системы и особенностей установки Microsoft Visual Studio.
Char– этот тип предназначен для хранения одного символа в формате Unicode. Занимает 2 байта памяти.
String– тип данных для хранения текстовой информации. В одной переменной этого типа может храниться строка длиной от 0 до примерно 2 миллиардов символов в кодировке Unicode. Объем памяти для хранения таких переменных зависит от длины строки и может меняться в процессе выполнения программы.
Date– предназначен для хранения информации о дате и времени. Занимает 8 байт памяти. Минимальное значение даты – 1 января 0001 года. Максимальное значение даты – 31 декабря 9999 года. Минимальное значение времени – 0:00:00. Максимальное значение времени – 23:59:59.
Object– может хранить различные данные и менять их тип во время выполнения программы. Как правило, используется для хранения ссылок на объекты, в частности, на элементы управления. Объем памяти зависит от информации, хранящейся в переменной.