- •Тема 2.5. Основные конструкции языков программирования
- •2.5.1.2. Средства программирования алгоритмов линейной структуры
- •Input [;] [подсказка { ; | , }] список_переменных
- •Input “Введите коэффициенты уравнения a, b, c “, a#, b#, c#
- •Input ;“Радиус круга”; r!
- •2.5.1.3. Средства программирования разветвляющихся структур
- •If выражение then оператор(ы) [else оператор(ы)]
- •2.5.1.4. Средства программирования регулярных циклических структур
- •2.5.1.5. Средства программирования итеративных циклических структур
- •2.5.1.6. Средства описания и работы с одномерными массивами данных
- •Dim v1([imin to] imax) as type [, . . . Vn([imin to] imax) [as type]
- •2.5.1.7. Средства описания и работы с двумерными массивами данных
- •2.5.1.8. Строковые данные и операции над строками
- •Val(строка)
- •2.5.1.9. Средства процедурного программирования в среде qb
- •Dim shared переменная [as тип][, переменная [as тип]]...
- •Intx,y;
- •Void main(void)
- •Int test_score;
- •Void main(void)
- •Void main (void)
- •Void main(void)
- •Void main(void)
- •2.5.2.2. Средства программирования алгоритмов линейной структуры и функций
- •Int main ()
- •Int main ()
- •Void main(void)
- •Voidmain(void)
- •Void main(void)
- •Void main(void) {
- •Void main(void)
- •Void main(void)
- •Void main(void)
- •Void main(void)
- •Void main (void)
- •Int rus (unsigned char r)
- •Int rus (unsignedcharr); или rus (unsignedchar);
- •2.5.2.3. Средства программирования разветвляющихся структур
- •If (выражение) оператор_1; [ else оператор_2;]
- •2.5.2.4. Средства программирования регулярных циклических структур
- •Int main ( )
- •If (br2) break;
- •2.5.2.5. Средства программирования итеративных циклических структур
- •2.5.2.6. Средства описания и работы с одномерными массивами данных
- •Int array[4]; /* array - массив из 4 элементов типа int */
- •Int minmaxel (float*mas, int n, int&min)
- •2.5.2.7. Средства описания и работы с двумерными массивами данных
- •Int w[2][3]; /* двумерный массив из двух строк и трех столбцов
- •Int minimum(int [][exams], int, int);
- •Int maximum(int [][exams], int, int);
- •Void printArray(int [][exams], int, int);
- •Int main()
- •Int minimum(int grades[][exams], int pupils, int tests)
- •Int maximum(int grades [][exams], int pupils, int tests)
- •Void printArray(int grades [][exams], int pupils, int tests)
- •2.5.2.8. Строковые данные и операции над строками
- •Int strlen(char s[])
- •Void testirovanie ()
- •Void testirovanie();
- •Void reshenie();
- •Void main (void)
- •2.5.3. Контрольные вопросы по теме «Основные конструкции языка программирования qb» (вставить из лаб.Работ!)
- •2.5.4. Тестовые задания по теме «Основные конструкции языка программирования qb»
- •End select
- •Тема 2.5. Основные конструкции языков программирования Страница 274
2.5.2.3. Средства программирования разветвляющихся структур
На практике редко встречаются задачи, решение которых представляется только в виде алгоритмов линейной структуры. Как правило, приходится решать задачи, в которых в зависимости от выполнения некоторого логического условия необходимо организовать вычисления по одной из нескольких ветвей алгоритма. Алгоритмы решения таких задач строятся с использованием разветвляющихся алгоритмических структур. В результате проверки логического выражения(“Истина” или “Ложь”) управление передается ветке “Да” или “Нет”.
В С++ не реализован логический тип данных, но имеется большой набор логических операций. В этих операциях вместо логических величин можно использовать любую арифметическую величину или указатель. При этом любое значение отличное от нуля считается истиной, а нулевое значение ложью.
Логические выражения, в отличие от арифметических, содержат операции отношения(=, <, >, <=, >=, <>), а также еще пятьлогических операций, записанных далее в порядке убывания приоритета: отрицание -!, логическое умножение (логическое “И”) - &&, логическое сложение (логическое “ИЛИ”) - ||, исключающее “ИЛИ” -^, эквивалентность -EQV.
Результатом выполнения логического выражения может быть “Истина” (не 0)или “Ложь” (0). Например,NOT 7<9всегда принимает значение “Ложь”, что соответствует значению0, а4>3 AND 7<9принимает значение “Истина”, что соответствует-1.
В табл. 2.5.2-8 приведено описание логических операций. Здесь T(true) - “Истина”, аF(false) “Ложь”.
К логическим операциям относятся операция логического И (&&) и операция логического ИЛИ. Операнды логических выражений вычисляются слева направо. Логические операции оценивают каждый операнд с точки зрения его эквивалентности нулю. Результатом логической операции является 0 или 1, тип результата int.
Операция логического И (&&)вырабатывает значение 1, если оба операнда имеют нулевые значения. Если один из операндов равен 0, то результат также равен 0. Если значение первого операнда равно 0, то второй операнд не вычисляется.
Операция логического ИЛИ (||)выполняет над операндами операцию включающего ИЛИ. Она вырабатывает значение 0, если оба операнда имеют значение 0, если какой-либо из операндов имеет ненулевое значение, то результат операции равен 1. Если первый операнд имеет ненулевое значение, то второй операнд не вычисляется.
Таблица 2.5.2-8
Значения операндов |
! x |
x&&y |
x || y |
x ^ y |
х ==y | |
X |
Y |
|
|
|
|
|
T |
T |
F |
T |
T |
F |
T |
T |
F |
F |
F |
T |
T |
F |
F |
T |
T |
F |
T |
T |
F |
F |
F |
T |
F |
F |
F |
T |
Разветвляющиеся алгоритмические структуры в языках программирования реализуются операторами условного перехода.ВC++для программирования условных переходов используются три типа операторов:if,switchиbreak.
Оператор ifпозволяет направить вычислительный процесс на два варианта в зависимости от значения некоторого условия. Оператор ifимеет следующийформат: