Линейная алгоритмическая структура. Типовые примеры
Линейным называется алгоритм, блоки которого расположены последовательно один за другим, нет условий и повторений. Покажем общую структуру линейного алгоритма в виде блок-схемы.
Основной принцип программирования заключается в том, что обрабатывать можно только те данные, которые находятся в определенных областях оперативной памяти компьютера. Для того чтобы поместить исходные данные в оперативную память используются операторы ввода данных. Для реализации процесса обработки данных используется оператор присваивания. Результат вычислений помещается в область S оперативной памяти. Чтобы вывести результат из памяти на экран монитора необходимо использовать оператор вывода. Операторы ввода данных: 1. INPUT - оператор ввода данных с клавиатуры. Данные задаются в виде переменных. Переменная – это величина, значение которой может меняться в процессе выполнения программы. Для обозначения переменной используются их имена (идентификаторы) – последовательность до 40 латинских букв и цифр, начинающаяся с буквы. Данные могут быть следующих основных типов: · целые INTEGER (Y%) – 2 байта в памяти (от -32768 до 32767), · длинные целые LONG (Y&) – 4 байта (от -231 до 231-1), · вещественные SINGLE (Y) – 6 знаков после , -4 байта (от -3.4Е+38 до 3.4Е+38), · вещественные удвоенной точности DOUBLE (Y#) -16 знаков после ,– 8 байт (от -Е+308 до Е+308), · символьные STRING (Y$) – последовательность символов до 32767 символов длиной. Например: INPUT a,b или INPUT “Введите два числа”;a,b 2. DATA, READ – операторы ввода данных из блока памяти. Например: DATA 3,4 : READ a,b Оператор присваивания может быть использован как для ввода данных (Например: a=3 : b=4), так для вычисления выражений. (Например: S=a*b). Оператор присваивания вычисляет выражение, расположенное справа от символа присваивания (=) и результат присваивается переменной, расположенной слева от символа присваивания. При записи арифметического выражения используются арифметические операции и функции. Приоритет выполнения арифметических операций сохраняется. Функции можно использовать стандартные (встроенные) COS(X), SQR(X) … и задаваемые самим пользователем. (Например: Y=3*SQR(X)^2) Для вывода данных используется оператор PRINT. Например: PRINT S или PRINT “Площадь”;S или PRINT a,b,S Для окончания программы используется оператор END. В начале программы можно использовать оператор очистки экрана – CLS. Пример линейной программы вычисления площади прямоугольника и ее алгоритм в виде блок-схемы: CLS INPUT “Введите две стороны прямоугольника”; a,b S = a * b PRINT “Площадь”; S END Разветвляющая алгоритмическая структура. Основные операторы циклов. Типовые примеры
Алгоритм называется разветвляющимся, если содержит хотя бы одно условие, в результате которого обеспечивается переход на один из двух возможных вариантов решения задачи. Ветвление может быть полным (действия и после да и после нет) и неполным (в случае если нет – ничего не происходит). Пример разветвляющегося алгоритма – алгоритм решения квадратного уравнения. Появление условия при решении этой задачи связано с отсутствием корней при отрицательном дискриминанте. Рассмотрим блок-схему этого алгоритма:
Для данной алгоритмической структуры характерно, что в любой момент времени её реализации осуществляется обработка только по какой-либо одной из ветвей. Для описания разветвляющегося алгоритма существуют операторы: Условный блочной структуры: IF условие THEN блок действий 1 ELSE блок действий 2 ENDIF линейной структуры: IF условие THEN блок 1 ELSE блок 2 Обе структуры могут быть использованы как в полной форме так и в усеченной – без блока ELSE. При работе условного оператора сначала проверяется выполнение условия. Если условие выполняется (истинное), то реализуется блок 1, в противном случае – блок 2. Условие – это логическое выражение, использующее операции сравнения (=, <, > <=, >=, <>) и логические операции (AND, OR). Программа решения квадратного уравнения с использованием условного оператора имеет вид: CLS : INPUT A,B,C : D=B^2-4*A*C IF D>0 THEN X1=(-b+SQR(d))/(2*a) : X2=(-b-SQR(d))/(2*a) : PRINT X1,X2 ELSE PRINT ”Решенией нет” ENDIF 2. выбора (выражением может быть список через запятую 1,3,4 диапазон значений 1 TO 9; операция сравнения IS >=). SELECT CASE выражение CASE условие 1 блок операторов 1 CASE условие 2 блок операторов 2 CASE ELSE блок операторов n END SELECT CLS : INPUT A,B,C : D=B^4*A*C SELECT CASE D CASE IS >0 X1=(-b+SQR(d))/(2*a) X2=(-b-SQR(d))/(2*a) : PRINT X1,X2 CASE ELSE PRINT ”Решенией нет” END SELECT END
Популярное: Почему человек чувствует себя несчастным?: Для начала определим, что такое несчастье. Несчастьем мы будем считать психологическое состояние... Почему стероиды повышают давление?: Основных причин три... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (870)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |