Базовые алгоритмические конструкции. Базовая структура «следование»: определение, блок-схема и пример использования структуры

12.4.1. Базовая структура «следование» (линейная структура)

 

Логическая структура любого алгоритма может быть представлена комбинацией трех базовых структур: следования, ветвления и цикла.

Характерной особенностью базовых структур является наличие в них одного входа и одного выхода.

Базовая структура «следование» образуется последовательностью действий, следующих одно за другим. Это самый простой вид алгоритмов, его структура изображена на рисунке 12.4.1.

 

Рисунок 12.4.1. – Линейная базовая структура.

 

Пример 12.4.1. Составить алгоритм вычисления функции вида y=x+3z, для заданных значений x и z.

Схема алгоритма показана на рисунке 12.4.2.

В этом алгоритме вводятся значения x и z. Вычисляется значение функции по формуле y =x+3z и производится вывод полученного результата (значение y). В алгоритме нет разветвлений и повторений, все действия производятся в естественном порядке, следовательно, алгоритм имеет линейную структуру.

 

 

Рисунок 12.4.2. – Блок-схема алгоритма

вычисления функции вида y=x+3z.

12.4.2. Базовая структура «ветвление»

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

Базовая структура «ветвление» обеспечивает выбор одного из альтернативных путей работы алгоритма в зависимости от результата проверки условия (да или нет).

12.4.3. Базовая структура «цикл»

Базовая структура «цикл» обеспечивает многократное выполнение некоторой совокупности действий. Повторяющаяся совокупность действий называется –телом цикла.

Величина, с которой связано многократное выполнение тела цикла называется – параметром цикла. Параметр цикла имеет начальное и конечное значения.

Шаг цикла – величина на которую изменяется значение параметра цикла при каждом выполнении цикла.

Существует три вида циклов:

– цикл с заранее известным числом повторений (цикл с параметром);

– цикл с предусловием (цикл «пока»);

– цикл с постусловием (цикл «до»).

25.Базовая структура «ветвление»:определение; «полное и неполное» ветвление, их блок-схемы и примеры использования структуры. Базовая структура «ветвление» обеспечивает выбор одного из альтернативных путей работы алгоритма в зависимости от результата проверки условия (да или нет). Структура «ветвление» существует в трёх основных вариантах: если-то-иначе (рисунок 12.4.3.а); если-то (рисунок 12.4.3.б); выбор-иначе (рисунок 12.4.3.в).

При выполнении условия помещенного в символе «решение», поток управления направлен по ветви, которая обозначена словом «да» или знаком плюс, при невыполнении условия – по ветви, которая обозначена словом «нет» или знаком минус (рисунок 12.4.3.а и б). Ветвь «нет» может не содержать действий, в этом случае имеем неполное ветвление(рисунок 12.4.3.б).

 

Рисунок 12.4.3. – Базовая структура ветвление:

а) ветвление, б) неполное ветвление, в) многоальтернативный выбор.

 

Применение символа «решение» при разветвлении на число ветвей, большее двух называется – переключателем. От символа «решение» выходит одна линия (рисунок 12.4.3.в) которая затем разветвляется на соответствующее число линий.

Возможные значения переключателя приводятся в разрыве линии управления через запятую, при этом определяется действие для данной ветви (рисунок 12.4.5).

Если значение переключателя не совпадает ни с одним из перечисленных в ветвях значением, выполняется ветвь «иначе».

Ветвь «иначе» может отсутствовать, в этом случае при значении переключателя, не совпадающем с перечисленными в ветвях значениями, не выполняется никакого действия.

В алгоритме каждое значение переключателя может присутствовать только в одной из ветвей.

26.Базовая структура «ветвление»,ее виды. Определение структуры «многоальтернативный выбор»,блок-схема и пример использования структуры. Базовая структура «ветвление» обеспечивает выбор одного из альтернативных путей работы алгоритма в зависимости от результата проверки условия (да или нет). Структура «ветвление» существует в трёх основных вариантах: если-то-иначе (рисунок 12.4.3.а); если-то (рисунок 12.4.3.б); выбор-иначе (рисунок 12.4.3.в).

При выполнении условия помещенного в символе «решение», поток управления направлен по ветви, которая обозначена словом «да» или знаком плюс, при невыполнении условия – по ветви, которая обозначена словом «нет» или знаком минус (рисунок 12.4.3.а и б). Ветвь «нет» может не содержать действий, в этом случае имеем неполное ветвление(рисунок 12.4.3.б).

 

Рисунок 12.4.3. – Базовая структура ветвление:

а) ветвление, б) неполное ветвление, в) многоальтернативный выбор.

 

Применение символа «решение» при разветвлении на число ветвей, большее двух называется – переключателем. От символа «решение» выходит одна линия (рисунок 12.4.3.в) которая затем разветвляется на соответствующее число линий.

Возможные значения переключателя приводятся в разрыве линии управления через запятую, при этом определяется действие для данной ветви (рисунок 12.4.5).

Если значение переключателя не совпадает ни с одним из перечисленных в ветвях значением, выполняется ветвь «иначе».

Ветвь «иначе» может отсутствовать, в этом случае при значении переключателя, не совпадающем с перечисленными в ветвях значениями, не выполняется никакого действия.

В алгоритме каждое значение переключателя может присутствовать только в одной из ветвей.

 

27.Базовая структура «цикл»: определение ,виды .Характеристика «циклов с заранее неизвестным числом повторений»,блок-схемы и пример использования структуры. Базовая структура «цикл» обеспечивает многократное выполнение некоторой совокупности действий. Повторяющаяся совокупность действий называется –телом цикла.

Существует три вида циклов:

– цикл с заранее известным числом повторений (цикл с параметром);

– цикл с предусловием (цикл «пока»);

– цикл с постусловием (цикл «до»).

Структура цикла с заранее заданным числом повторенийизображена на рисунке 12.4.6.

Такой цикл изображается на схеме с помощью символа «подготовка», внутри которого параметру цикла p присваивается начальное значение n и происходит выполнение тела цикла. Далее значение параметра цикла увеличивается на величину шага h(шаг, равный единице в схеме можно не указывать) и проверяется условие: текущее значение параметра цикла должно быть меньше конечного kзначения или равно ему (p<= k). Цикла будет повторяться до тех пор, пока это условие истинно. Как только p станет больше k (p > k) произойдет выход из цикла,

 

Рисунок 12.4.6. – Структура цикла

с заранее заданным числом повторений.

 

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

Кроме циклов с заранее известным числом повторений существуют циклы, число повторений которых заранее неизвестно, а условия выхода из циклов определяются при их выполнении.

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

28.Базовая структура «цикл»:определение, виды. Характеристика «цикла с постусловием»,блок схема и пример использования структуры. Базовая структура «цикл» обеспечивает многократное выполнение некоторой совокупности действий. Повторяющаяся совокупность действий называется –телом цикла.

Существует три вида циклов:

– цикл с заранее известным числом повторений (цикл с параметром);

– цикл с предусловием (цикл «пока»);

– цикл с постусловием (цикл «до»).

В циклах с предусловием и с постусловием перед циклом, как правило, выполняется подготовительный процесс (задаются начальное n и конечное k значения параметра цикла p и величина шага h), а в теле цикла значение параметра цикла увеличивается на величину шага h.

Структура цикла с предусловием показана на рисунке 12.4.7.

Рисунок 12.4.7. – Структура цикла с предусловием.

 

Из схемы видно, что после процесса подготовки проверяется условие выполнения цикла: если условие истинно, то выполняется тело цикла.Затем управление вновь передается на проверку условия.

Выход из цикла происходит в случае невыполнения условия. Если условие ложно изначально, тело цикла не выполнится ни разу.

Структура цикла с постусловиемизображена на рисунке 12.4.8.

Из рисунка видно, что после процесса подготовки выполняется тело цикла, затем проверяется условие выполнения цикла. Если условие истинно, то управление вновь передается на тело цикла.

Выход из цикла происходит в случае невыполнения условия. Если условие ложно изначально, тело цикла обязательно выполнится хотя бы раз.

 

Рисунок 12.4.8. – Структура цикла с постусловием.

 

 

29.Определение базовой структуры «цикл». Понятия тела и параметра цикла. Характеристика «цикла с заранее заданным числом повторений»,блок-схема и пример использования структуры. Базовая структура «цикл» обеспечивает многократное выполнение некоторой совокупности действий. Повторяющаяся совокупность действий называется –телом цикла.

Величина, с которой связано многократное выполнение тела цикла называется – параметром цикла. Параметр цикла имеет начальное и конечное значения.

Шаг цикла – величина на которую изменяется значение параметра цикла при каждом выполнении цикла.

Существует три вида циклов:

– цикл с заранее известным числом повторений (цикл с параметром);

– цикл с предусловием (цикл «пока»);

– цикл с постусловием (цикл «до»).

Структура цикла с заранее заданным числом повторенийизображена на рисунке 12.4.6.

Такой цикл изображается на схеме с помощью символа «подготовка», внутри которого параметру цикла p присваивается начальное значение n и происходит выполнение тела цикла. Далее значение параметра цикла увеличивается на величину шага h(шаг, равный единице в схеме можно не указывать) и проверяется условие: текущее значение параметра цикла должно быть меньше конечного kзначения или равно ему (p<= k). Цикла будет повторяться до тех пор, пока это условие истинно. Как только p станет больше k (p > k) произойдет выход из цикла,

 

Рисунок 12.4.6. – Структура цикла

с заранее заданным числом повторений.

 

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

Кроме циклов с заранее известным числом повторений существуют циклы, число повторений которых заранее неизвестно, а условия выхода из циклов определяются при их выполнении.

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

30.Общая характеристика языка программирования Си. Алфавит языка. Понятие переменной и константы в языке программирования Си, их типы. Примеры. Язык программирования Си был разработан в 1972 году сотрудником фирмы “Bell” Д.Ритчи. Язык Си отличается от других языков программирования лаконичностью и сочетанием преимуществ языков программирования высокого и низкого уровней, является основным языком профессионального программирования.

В 1973 году Д. Ритчи разработал операционную систему “UNIX” на языке Си. Это был первый случай разработки операционной системы на языке высокого уровня. С этого времени язык Си считается языком системного программирования.

В 1980 году Б. Страуструп разработал объектно-ориентированное расширение языка Си, которое получило название Си++. Интегрированная среда Borland C++ версии 3.1 пригодна для компиляции программ как с языка Си, так и с языка Си++. При этом файлы исходных модулей на языке Си должны иметь расширение *.c, на языке Си++ – расширение *.cpp. В дальнейшем на основе языка Си++ были разработаны 2 визуальные среды программирования: Visual C++ и C++ Builder, несколько отличающиеся своими интерфейсами. C++ Builder по интерфейсу похож на интегрированную среду разработки приложений Delphi, в которой языком программирования является Pascal. Визуальные среды программирования предназначены для разработки приложений, выполняющихся в операционной системе Windows.

В алфавит языка программирования Си включаются латинские буквы (прописные и строчные), цифры и некоторые специальные знаки: скобки круглые “(“ и “)” , квадратные “[“ и “]” , фигурные “{“ и “}” , восклицательный знак “!”– знак отрицания, “&” – амперсанд (знак логического умножения «И» а также адрес переменной), “|” –вертикальная черта (знак логического сложения «ИЛИ»), “;” – точка с запятой (конец оператора), “,” – запятая, “:” – двоеточие, “%” – процент, “$” – знак доллара, “?” – знак вопроса, “<” и “>” – знаки «меньше» и «больше» , “=” – знак равенства (знак присваивания), “/” и “\” – слэш и бэкслэш, “+” и “–“ – знаки плюс и минус, “*” – звездочка, “^” – карат, “#” – знак номера, апостроф и кавычки, “~” – тильда.

Кроме одиночных символов, в алфавит языка входят пары символов (лексемы): “<=” (меньше или равно), “>=” (больше или равно), “!=” (не равно), “==” – два знака равенства подряд, означающие отношение равенства, “//” – два слэша, означающие однострочный комментарий, “/*” и “*/” – начало и конец многострочного комментария, “&&” и “||” – логические «И» и «ИЛИ». Символы лексем нельзя разделять пробелом, переносом на другую строку, символами табуляции.

Ключевыми (зарезервированными) словами языка являются слова: “for”, “while”, “if”, “else”, “switch”, “case” и другие, рассматриваемые в процессе изучения языка. Их написание однозначно, их нельзя употреблять в качестве идентификаторов (имен) переменных, констант и функций.

Русские буквы (символы кириллицы) в алфавит языка не входят, их допускается использовать только в строках символов

Константа – величина, не меняющаяся в процессе исполнения программы. Переменная – величина, меняющаяся при исполнении программы. Для переменных и констант выделяется оперативная память в соответствии с их типом. Переменные и константы бывают следующих типов: арифметические, символьные, строковые, перечисления, указатели. Специального логического типа в языке Си нет, в этом качестве используются переменные и константы любого целого типа.

Переменные и константы могут быть знаковыми и беззнаковыми, для их различения используют модификаторы signed и unsigned соответственно. Модификатор signed может быть опущен, он подразумевается по умолчанию. Знаковые переменные и константы могут быть как положительными, так и отрицательными, беззнаковые – только неотрицательными. Символьные переменные и константы могут быть односимвольными (тип char) и двухсимвольными (тип int). Символьные константы заключаются в апострофы, например, ‘d’, ‘bd’.Возможно использование эскейп-последовательностей в символьных константах. Эскейп-последовательность начинается с символа «бэкслэш», например ‘\n’ – переход на новую строку.

Строковые переменные и константы содержат несколько символов. Строковые константы заключаются в кавычки, например, “Мы изучаем язык Си”.

Перечислимые (перечисляемые) константы вводятся с помощью ключевого слова “enum”, например, enum{one=1, two=2, three=3}. Присваивания по умолчанию начинаются с 0 и увеличиваются на 1, например, enum{zero, one, two} означают 0, 1, 2. Возможно задание перечислимого типа, например, enum week{sunday, monday, tuesday, wednesday, thursday, friday, saturday}. Перечислимый тип week (неделя), дни недели начинаются с воскресенья (sunday, значение 0) и заканчиваются субботой (saturday, значение 6).

31.Виды операций и стандартных функций в языке программирования Си, правила их записи и порядок выполнения. Примеры. Операции в языках Си и Си++ делятся на унарные (с одним операндом), бинарные (с двумя операндами) и тернарные (с тремя операндами). Операнд – объект, с которым производятся действия, например, число или переменная.

К унарным операциям относятся: унарный минус (изменение знака числа, обозначение “–“), унарный плюс (сохранение знака числа, обозначение “+”), поразрядное инвертирование внутреннего двоичного кода (замена нулей на единицы и обратно, обозначение “~”), логическое отрицание НЕ (обозначение “!”), инкремент (увеличение переменной на единицу, обозначение “++”), декремент (уменьшение переменной на единицу, обозначение “--”), взятие адреса переменной (обозначение “&”, т.е. знак амперсанда), разадресация (другие названия: обращение по адресу, разыменование, операнд – адрес, результат – значение того объекта, на который указывает операнд, обозначение “*”).

К бинарным арифметическим операциям относятся: сложение целых и вещественных чисел (обозначение “+”), вычитание целых и вещественных чисел (обозначение “–”), умножение целых и вещественных чисел (обозначение “*”), деление целых и вещественных чисел (обозначение “/”, для целочисленного деления результат округляется до целого), остаток от деления целых чисел (обозначение “%”, например, 13 % 4 = 1).

Переменные любого целого типа могут использоваться в качестве логических переменных, принимающих только два возможных значения: ложь (false, значение 0) и истина (true, значение не 0). Унарная логическая операция отрицания (логическое НЕ, обозначение “!”) меняет истинность на противоположную, т.е. истину на ложь и наоборот. Обозначая истину через 1, а ложь через 0, получим !0 = 1, !1 = 0.

Бинарная логическая операция конъюнкции (логическое И, логическое умножение, обозначение “&&”), дает истину только тогда, когда истинны оба операнда: 0 && 0 = 0, 0 && 1 = 0, 1 && 0 = 0, 1 && 1 = 1.

Бинарная логическая операция дизъюнкции (логическое ИЛИ, логическое сложение, обозначение “||”), дает истину тогда, когда истинен хотя бы один операнд: 0 || 0 = 0, 0 || 1 = 1, 1 || 0 = 1, 1 || 1 = 1.

К бинарным поразрядным логическим операциям относятся: поразрядная конъюнкция (логическое И, логическое умножение, обозначение “&”, операция проводится для каждого двоичного разряда, например, 20 & 12 = 4, или поразрядно 00010100 & 00001100 = 00000100), поразрядная дизъюнкция (логическое ИЛИ, логическое сложение, обозначение “|”, операция проводится для каждого двоичного разряда, например, 20 | 12 = 28, или поразрядно 00010100 | 00001100 = 00011100), поразрядное исключающее ИЛИ (сложение по модулю 2, обозначение “^”, для каждого разряда операция проводится по правилу 0 ^ 0 = 0, 0 ^ 1 = 1, 1 ^ 0 = 1, 1 ^ 1 = 0, так что 20 ^ 12 = 24 или поразрядно 00010100 ^ 00001100 = 00011000).

Операции сдвига для целых операндов осуществляют сдвиг влево или вправо двоичного представления первого операнда на число разрядов, равное второму операнду, разряды, вышедшие за пределы разрядной сетки, теряются: сдвиг влево (обозначение “<<”, пример 5 << 2 = 20 или поразрядно 00000101 << 2 = 00010100), сдвиг вправо (обозначение “>>”, пример 5 >> 2 = 1, или поразрядно 00000101 >> 2 = 00000001).

Если результат сдвига находится в пределах разрядной сетки, сдвиг влево эквивалентен умножению первого операнда на 2 в степени, равной второму операнду, сдвиг вправо эквивалентен получению неполного частного от деления первого операнда на 2 в степени, равной второму операнду.

Бинарная операция присваивания (обозначение “=”) присваивает переменной, стоящей в левой части операции, значение, равное правой части операции.

С целью сокращения размеров программы в Си и Си++ введена операция составного присваивания, объединяющая присваивание с бинарной операцией. Например, вместо обычной записи x = x + a записывают x + = a. Вместо операции сложения может быть любая бинарная операция, за исключением операций && и ||. Например x * = a в обычной записи означает x = x * a. Имя переменной указывается один раз, вместо двух раз в обычной записи.

Бинарные операции отношения (сравнения) следующие: равно (обозначение “= =”, два знака равенства подряд), не равно (обозначение “!=”), больше (обозначение “>”), больше или равно (обозначение “>=”), меньше (обозначение “<”), меньше или равно (обозначение “<=”).

Тернарная операция в языке Си одна (условная операция, сокращенная запись a ? b : c). Первый операнд a – целое число в качестве логического значения. Если a истинно (не равно нулю), результат равен второму операнду b, если a ложно (равно нулю), то результат равен третьему операнду c. Пример: оператор y = x < 0 ? – x : x ; присваивает y значение модуля (абсолютной величины) x.

Арифметическое выражение состоит из одного или нескольких операндов, символов операций и круглых скобок. Примеры выражений: a+b, x-10*y, k/3, 6*s1+2*(a+3*b). В арифметических выражениях допустимы следующие операции: + (сложение или унарная операция +), – (вычитание или унарная операция изменения знака), * (умножение), / (деление, применяется как для целых, так и вещественных чисел), % (остаток от целочисленного деления первого операнда на второй, применяется только для целых чисел).

Следует обращать особое внимание на тип операнда при делении, т.к. при делении целых чисел результат также имеет целый тип, дробная часть отбрасывается, например, 3/2 = 1; 1/2 = 0; 5/2 = 2. Чтобы производить вычисления с вещественными числами, следует тип хотя бы одного из операндов взять вещественным, например, поставив точку после целой части. Пример: 3./2 = 3/2. = 3./2. =1.5; 1./2 = 0.5; 5/2. = 2.5.

В арифметических выражениях можно использовать стандартные функции, например, синус, косинус, экспоненту и т.п. Прототипы этих функций (т.е. программы их вычисления) содержатся в стандартных заголовочных файлах. В частности, математические функции содержатся в файле math.h. Для использования этих функций следует их подключить, записав в программе директиву #include <math.h> . Кроме указанного, существуют и другие заголовочные файлы. Функции ввода–вывода содержатся в файле stdio.h, функции работы со строками в файле string.h. Подключение этих файлов производится директивами #include<stdio.h> и #include<string.h> .

Для тригонометрических функций аргумент должен быть задан в радианах, аргументы арксинуса и арккосинуса по абсолютной величине должны быть не более 1, аргументы логарифмов должны быть положительными, аргумент квадратного корня должен быть неотрицательным, основание x в функции pow(x,y) должно быть положительным, т.к. функция вычисляется с применением логарифмов.

 

32.Структура программы, написанной на языке программирования Си. Понятие оператора в языке программирования Си. Оператор присваивания, его назначение, формат записи. Пример. Операторы языка программирования выполняют определенные действия: оператор присваивания с форматом <переменная> = <выражение>; присваивает переменной значение выражения, оператор безусловного перехода goto <метка>; обеспечивает переход к указанной метке и т.д. После каждого оператора ставится точка с запятой.

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

Весьма важным в программировании является понятие подпрограммы. Подпрограмма – именованная часть программы, выполняющая определенные действия. Полезность подпрограмм заключается в том, что подпрограмма описывается один раз, а вызываться по имени может любое число раз из различных мест программы.

Подпрограмма содержит список параметров, заключаемый в круглые скобки. С помощью параметров можно управлять вызовами подпрограммы из различных мест программы. Для каждого параметра должен быть указан его тип, параметры в списке параметров отделяются друг от друга запятыми.

Структура подпрограммы аналогична структуре программы: необязательный, но желательный комментарий, заголовок подпрограммы с именем и списком параметров, раздел описаний, раздел операторов. Если список параметров пуст, круглые скобки ставятся все равно, чтобы отличить подпрограмму от простой переменной. Тело подпрограммы заключается в операторные скобки (фигурные скобки).

В языке Си имеется единственный вид подпрограмм – функции. В каждой программе должна присутствовать функция main – точка входа в программу. Кроме того, могут присутствовать и другие функции, как стандартные, так и разработанные программистом (или группой программистов). Они называются функциями пользователя.

Чаще всего большая программа на языке Си состоит из описаний функций пользователя и функции main, из которой эти функции вызываются. Такое структурирование программы позволяет разбить большую задачу на части, разработку которых можно поручить разным программистам. Это обеспечивает параллельную работу группы программистов и сокращает срок разработки больших программ.

 

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

Структурные операторы содержат внутри себя другие операторы. Это составной оператор, условный оператор, оператор варианта (переключатель), оператор цикла. Прежде чем использовать переменную в программе, ей необходимо присвоить значение. Самый простой способ присвоения заключается в использовании оператора присвоения "=", который имеет следующий синтаксис:

переменная = выражение

Аргумент переменная задает имя переменной, которой будет присвоено значение выражения, стоящего справа от знака равенства. Например:

sngFirst = 10

strLastname = "Иванов"

Справа от знака равенства может стоять не только константа, но и более сложное выражение. Например:

sngResult = sngFirst + 255

strName = "Иванов" & ": " & strTeam

 

33.Организация ввода и вывода данных в языке программирования Си, форматы записей. Примеры. Достаточно часто в диалоговом окне необходимо не только нажать кнопки выбора действия, но и ввести определенную информацию, которая затем анализируется программой. Для выполнения такого рода действий в Visual Basic можно использовать диалоговое окно ввода информации InputBox Функция InputBox имеет следующий синтаксис:

InputBox (prompt [, title] [, default] [, xpos] [, ypos] [, helpfile, context])

где:

prompt — текст сообщения в диалоговом окне. Максимальная длина текста 1024 символа. В этот текст можно вставить в качестве разделителей строк перевод каретки Chr(13), перевод строки Chr(10) или их комбинацию;

title — текст заголовка диалогового окна;

default — значение текстового поля ввода по умолчанию. Если параметр отсутствует, строка остается пустой;

xpos — позиция по горизонтали левого верхнего угла диалогового окна относительно левого верхнего угла экрана. По умолчанию присваивается значение, соответствующее середине экрана;

ypos — позиция по вертикали левого верхнего угла диалогового окна

относительно левого верхнего угла экрана. По умолчанию присваивается значение, соответствующее середине экрана;

helpfile — ссылка на файл справочной системы;

context — ссылка на содержание в файле справочной системы.

Для примера введите в командном окне среды проектирования Immediate следующую команду:

strUserTest = InputBox ("Введите пароль", "Запуск приложения", "****")

В окне InputBox всегда имеются только две кнопки управления: ОК и Cancel. Кнопка ОК подтверждает ввод данных, кнопка Cancel — закрывает диалоговое окно без ввода данных.

 

Окно сообщения (MsgBox)

Диалоговое окно сообщения не требует проектирования и вызывается из программы командой MsgBox или с помощью аналогичной функции MsgBox , имеющей следующий синтаксис:

MsgBox (prompt[, buttons] [, title] [, helpfile, context])

где:

prompt — текст сообщения в диалоговом окне. Максимальная длина текста 1024 символа. В этот текст можно вставить в качестве разделителей строк перевод каретки Chr(13), перевод строки Chr(lO) или их комбинацию;

buttons — числовое выражение, которое задает параметры для кнопок

управления и значков в диалоговом окне и составлено из констант,

указанных в табл. 7.8 и 7.9. Если значение не указано, то по умолчанию присваивается значение 0;

title — текст заголовка диалогового окна;

helpfile — ссылка на файл справочной системы;

context — ссылка на содержание в файле справочной системы.

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

Для примера введите в командном окне среды проектирования Immediate следующую команду и нажмите клавишу <Enter>:

MsgBox "Приветствуем Вас!", vbYesNo + vbExclamation,"Окно сообщений"

Константы параметров для значков диалогового окна сообщения

Константа Значение Тип сообщения

vbExclamation 48 Предупреждение

vbQuestion 32 Запрос

vbInformation 64 Информация

vbCritical 16 Ошибка

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

Константы параметров наличия кнопок в окне сообщения и установки фокуса на кнопку

Константа Значение Набор кнопок в диалоговом окне

vbOkOnly 0 OK

vbOkCancel 1 OK, Отмена

vbAbortRetryIgnore 2 Стоп, Повтор, Пропустить

vbYesNoCancel 3 Да, Нет, Отмена

vbYesNo 4 Да,Нет

vbRetryCancel 5 Повтор, Отмена

В зависимости от выбора кнопки диалоговое окно MsgBox возвращает одно из значений, заданных системными константами. Это необходимо для анализа нажатой кнопки и выполнения соответствующих действий в программе. В исходном коде для этого можно использовать константы.

Значения констант, возвращаемые кнопками окна сообщения

Кнопка Константа Значение при нажатии на кнопку

ОК vb0k 1

Отмена vbCancel 2

Стоп vbAbort 3

Повтор vbRetry 4

Пропустить vblgnore 5

Да vbYes 6

Нет vbNo 7

 

34.Условные операторы в языке программирования Си, их назначение, формы. Формат записи и принципы работы. Примеры. Конструкции выполняются в той последовательности, в которой они записаны в программе. Однако достаточно часто требуется изменить порядок выполнения команд в зависимости от выполнения (или невыполнения) определенного условия. В Visual Basic, как и во всех языках программирования, существуют условные операторы (конструкции принятия решений), предназначенные для управления порядком выполнения команд. Различают два основных типа конструкций принятия решений

If

Select Case

Конструкция If используется в том случае, когда необходимо, чтобы группа операторов выполнялась при соблюдении определенных условий. Конструкция Select case позволяет на основании анализа значения заданного выражения выполнять те или иные действия.

В свою очередь, операторы If бывают двух видов:

If...Then

If...Then...Else

Конструкция If...Then применяется, когда необходимо выполнить определенные действия в зависимости от некоторого условия. Управляющая конструкция If...Then...Else используется в том случае, когда необходимо выполнить разные действия в зависимости от условия.

Условные выражения

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

Условные выражения — это такие выражения, которые возвращают одно из двух значений True (Истина) или False (Ложь). В условных выражениях используются операторы сравнения и логические переменные типа Boolean.