Линейными называют алгоритмы, в которых операции выполняются последовательно одна за другой, в естественном и единственном порядке.
Рассмотрим реализацию простейшего линейного алгоритма и приведем полный текст программы на языке Тurbo-Рascal. В таких алгоритмах все блоки имеют последовательное соединение логической связью передачи информационных потоков. В них могут использоваться все блоки, за исключением блоков проверки условия и модификации. Линейные алгоритмы, как правило, являются составной частью любого алгоритмического процесса.
Пример 3 Вычислить значение функции:
Очевидно, что функцию Y целесообразно вычислять в такой последовательности: предварительно введя исходные данные a, b, c и присвоив значение переменной х, вначале найдем значение выражения, которое обозначим переменной z, и далее определим выражение Y. Используя общепринятые символы блоков (рисунок 1), изобразим схему разрабатываемого алгоритма (рисунок 2) и составим программу: при значении аргумента x = 1,5 и произвольных значениях переменных a,b,c.
Python. Линейный алгоритм
. | PROGRAM PRIMER2; VAR B,C:INTEGER; A,X,Y,Z:REAL; BEGIN WRITELN(‘ВВЕДИТЕ A,B,C’); READLN(A,B,C); X:=1.5; Z:=(A*X*X+B)/C; Y:=ARCTAN(SQRT(Z) + Z); WRITELN(‘Y=’,Y:8:4); END. |
Рисунок 2 – Схема алгоритма линейной структуры примера 3 |
После запуска программы на выполнение вводим численные значения исходных данных a, b, c с клавиатуры, разделяя числа пробелами. После выполнения программы на экране появится результат вычислений.
Рассмотрим реализацию простейшего линейного алгоритма на языке ТР и приведем полный текст программы.
Пример 4. Вычислить значение функции Y по формуле
Y = sin a 2 + 4ax 3 + |a – b| для заданных значений переменных a, x, b (a = 1,5, x = 2, b = 5).
PROGRAM PRIMER4; VAR X,B: INTEGER; A,Y: REAL; BEGIN WRITELN (‘ВВЕДИТЕ A, B, X’); READLN (A,B,X); Y:=SIN(A*A)+4*A*X*X*X+ABS(A-B); WRITELN (‘Y=’, Y:8:4); END. |
Рисунок 3 – Схема алгоритма линейной структуры примера 4 |
После запуска программы на выполнение вводим численные значения исходных данных A, B, X с клавиатуры, разделяя числа пробелами: 1.5 2 5.
После выполнения программы на экране появится результат вычислений в виде: Y= 52.2781.
Источник: studopedia.su
5.5.3 Примеры программ линейной структуры
В общем случае в программе линейной структуры необходимо выполнить:
- ввод исходных данных с клавиатуры, диска и т.п. устройств;
- расчёты в соответствии с логикой задачи;
- вывод на экран результатов расчётов.
Пример задачи. Найти площадь поверхности и объем шара, если известно, что длина его радиуса равна а.Решение. Так как в задаче не указаны конкретные значения радиуса, то, следовательно, его значения могут быть самого общего типа – вещественные числа, а значения — произвольные. Ввод этих значений в программу проще всего выполнить с клавиатуры. Далее, согласно известным формулам для площади и объёма шара, выполним расчёты площади и объёма. В заключение, программа должна вывести на экран значения площади и объёма шара, сопроводив эти числа поясняющим текстом. На рис. 5.1 приведено окно с программой линейной структуры, решающей эту задачу.

Односвязный список | Динамические структуры данных #1
Лекция 6. Операторы ветвления (выбора)
6.1 Оператор ветвления if
Оператор ветвления IF (иногда его называют оператором выбора или условным оператором) имеет следующую структуру: If then else ; Условный оператор в виде блок-схемы можно изобразить так, как это показано на рисунке 6.1. На этом рисунке В – это логическое выражение, чаще всего оно содержит операции отношения.
Если В истинно, то выполняются действия 1, в ином случае – действие 2. Действие – это один или несколько операторов языка Object Pascal. Да
Нет
then часть: Действие1 else часть: Действие 2
Рис.6.1.
Блок-схема оператора IF Приведённая выше конструкция оператора IF называется схемой с полным ветвлением. Возможна схема и неполного ветвления, когда отсутствует else – часть: if then ; Блок-схема оператора IF с неполным ветвлением представлена на рис. 6.2.
Пример полного ветвления: if a > b then a:= 75 else b:= 75; Пример неполного ветвления: if (a < 0) or (b < 0) then a:= -934;
Пример: if (a < d) or (b < d) then begin writeln(‘d= ‘, d); r:= d; m:= a; end else begin writeln(‘l= ‘ , l); r := l; m: = t ; n: = у; end; Заметим, что операторы if могут быть вложенными в друг друга. Решение следующей задачи использует именно такую конструкцию. Задача. С клавиатуры вводятся три целых числа, вывести их на экран в порядке возрастания. program р6_1; var a, b, c, xl, х2, хЗ : integer; begin WriteLn(‘Введите три числа: a, b, c’); Readln(a, b, c); < Сначало располагаем по возрастанию числа a и b > if a < b then begin x1 := a; x2 := b; end else begin x1 := b; x2 := a; end; < Далее, располагаем в порядке возрастания ещё и c > if c < х1 then begin x3 := x2; x2 := x1; x1 := c; end else < в else части помещается вложенный оператор if > if c < x2 then begin x3 := x2; x2 := c; end else x3 := c; Writeln(‘Числа в порядке возрастания: ‘, x1, ‘ ‘ , x2, ‘ ‘ , x3); end.
Источник: studfile.net
Программирование линейной структуры
2. Практическая работа «Составление программ линейной структуры»
Цель работы: научиться составлять программы
линейной структуры на языке программирования
Pascal. Изучить правила записи и использования в
программе оператора присваивания, процедур
ввода, вывода.
Уметь: отлаживать и выполнять программы
линейной структуры на компьютере.
3. Порядок выполнения работы
Записать формулировку задачи в отчёт.
Составить блок-схему решения задачи.
Написать программу на языке Паскаль.
Загрузить программу в память
компьютера, отладить программу и
произвести счёт.
Показать результат выполнения
программы преподавателю.
Оформить отчёт и сделать вывод по
работе.
4. Язык программирования Паскаль
Разработан в Швейцарии в 1970 году.
Разработчик — швейцарский профессор
Никлаус Вирт.
Новая версия (Турбо Паскаль) выпущена
в первой половине 80 – х годов XX
столетия фирмой Borland (США).
Турбо Паскаль – интегрированный пакет,
содержащий транслятор, редактор,
отладчик, справочную систему и др.
программы.
5. Язык программирования Паскаль
6. Арифметические операции языка Паскаль
Операция
+
*
/
Div
Название
сложение
вычитание
умножение
деление
деление нацело
Mod
остаток от деления
(отбрасывается дробная часть)
нацело (деление по модулю)
7. Переменные и константы
Примеры Const
Name=‘Таня’; r2=4.15; st=‘*****’;
Pi=3.1416; Maxint=32767; True и False –стандартные
константы языка Паскаль не объявляются.
Типы данных:
Real – вещественный 0.123, -23.3456, 5.27e-4
Integer – целый 12, -100, 5, +67
Boolean — Булевый – значения этих данных — True и
False
Char – символьный – любой символ, отображенный на
мониторе. ’b’, ‘d’ , ‘6’
Text – текстовый(строки)- текст, последовательность
символов, заключенная в кавычки ‘x=‘,’сумма s=‘,
‘1+25+z’
8. Примеры описания данных в языке Паскаль
Константы:
они описываются после служебного
слова const, за которым следует список имен констант,
каждому из которых присваивается значение. Одна
константа от другой отделяется «;»
Const
H=3;
B=-7.5;
C=‘abcd’;
Переменные:
описание их начинается со
служебного слова var, за которым следуют имена
переменных и через двоеточие указывается их тип,
например:
var
a, b: real;
c, d: integer;
9.
Типы данных
Тип
Диапазон
Размер в байтах
целочисленные
Word
065535
2
Integer
-32766..32767
2
Longint
-2147483648..2147483647
4
2.9e-39..1.7e38
6
вещественные
Real
10. Упражнения Идентификаторы:
PR1, FACT28, VATRICA, SUMMA
Составить пять различных
идентификаторов из символов A и 1
Какие из приведенных записей
являются именами и почему?
A21, 21A, A.RA, ALFA, A[1], A(1), T12,
RAM1
11. Стандартные функции языка Паскаль
x
Стандартные функции языка
Паскаль
Функция
Программная запись
Ex
Ln x
X2
Sin x
|x|
x
Cos x
Ехp(х)
Ln(x)
Sqr ( х)
Sin(x)
Abs( х)
Sqrt( х)
Cos(x)
отбрасывание дробной
части вещественного числа х
Trunc (х)
округление вещественного
числа х целого
Round( x)
Arctan(x)
Arctg x
Нахождение предыдущего
элемента
Pred (x)
12. Стандартные функции языка Паскаль
Функция
Нахождение последующего элемента
Определение порядкового номера
символа x в наборе символов
Определение символа из набора
Программная запись
Succ (x)
Ord (x)
символов по порядковому номеру I
Chr (i)
Определение нечетности числа
Odd (x)
13. Арифметические выражения
Правила записи арифметических выражений:
• Выражение записывается в строчку;
• Количество открывающихся скобок равно количеству
закрывающихся скобок;
• Допускаются только круглые скобки
14. Примеры арифметических выражений на языке паскаль
15. Константы:
Константы целого типа: +128 43
-31
Константы вещественного типа с фиксированной
точкой:
-743.4
345.387
Константы вещественного типа с плавающей
точкой:
1E5
1.5E-5
Какие из приведенных записей являются правильными
описаниями констант:
0.346, -17., 34e15, .E3, -31.41e-1, .5
Записать число ¾ на Паскале различными способами.
Какие из приведенных записей являются правильными
описаниями констант:
PT = 3.14159, OF = ‘ABC’, A = TRUE, B = FALSE, CON =
‘’, D = -37E2
Определить тип в приведенных записях.
Определить тип результата:
10 div 3
10 / 3
not (p and q) = not (not
p and not q)
sqr (2) sqrt (2.0)
16. Самостоятельная работа Вариант № 1
1. Вычислить:
29 div 4; 29 mod 4; 11 div 2; 11 mod 2; trunc(7.699);
Round (7.699); trunc(-53.65); Round (-53.65)
2. Укажите неправильные формы записи вещественных чисел на
языке Паскаль
0006; +0.3; 8E0; E-1; 0E0; 6E; -0; 246E56
3. Переведите запись числа с плавающей точкой в запись числа
с фиксированной точкой.
234E-2
78.9E2 43.89E5
56.866E+02
4. Отметьте знаком плюс правильную и знаком минус
неправильную запись чисел в форме с плавающей запятой:
67. 34*E09
41, 67E+03
5.8E+0.3
5. Вычислите значение выражения:
3*7 div 2 mod 7 / 3 –
trunc(sin(60))
3.1e+2
0,5E-2
17. Самостоятельная работа Вариант № 2
1. Вычислить:16 div 3; 16 mod 3 ; 8 mod 5 ;8 div 5
2. Укажите неправильные формы записи вещественных чисел
на языке Паскаль:
3. Переведите запись числа с плавающей точкой в запись
числа с фиксированной точкой:
876E-06
876.543E+03 28E-01
549.76E-03
4. Отметьте знаком плюс правильную и знаком минус
неправильную запись чисел в форме с плавающей запятой:
7, 0; 0E-4; 14; 2/3; 2*E5; 7.; E-1; 65-E
123.765
+87.7
1.2e-3
0E+09
0.34e+5 -0 5.6e-1.2 e-4
5. Вычислите значение выражения:
24 / trunc(3.8) + succ(-3) — round(23 div
6)
18. Самостоятельная работа Вариант № 3
• 1. Вычислить:
-31 div 4; -31 mod 4;
121 div 0; 121 mod 0
• 2. Укажите неправильные формы записи вещественных чисел
на языке Паскаль:
– 4+E-5E; 5.9E56; 32/34 ; 34, E4 ; 0005; 0,56; 2E+2; 2.0E2
• 3. Переведите запись числа с плавающей точкой в запись числа
с фиксированной точкой:
– 67858E-3
23E+08
456.6E+04
-21.34E-2
• 4. Отметьте знаком плюс правильную и знаком минус
неправильную запись чисел в форме с плавающей запятой:
– 78, 98 345E-03 .76 12.1E-2
4.5E+2.3
• 5. Вычислите значение выражения:
succ(round(5 / 2) – pred(3))
3,2E2
19. Ключевые (служебные, зарезервированные) слова
Ключевые
слова
(служебные, зарезервированные)
AND
И
ARRAY
МАССИВ
BEGIN
НАЧАЛО
CASE
ВАРИАНТ
CONST
КОНСТАНТА
DIV
ДЕЛЕНИЕ НАЦЕЛО
DO
ВЫПОЛНЯТЬ
DOWNT
УМЕНЬШАЯ ДО
20. Ключевые (служебные, зарезервированные) слова
Ключевые
слова
(служебные, зарезервированные)
ELSE
иначе
END
конец
FILE
файл
FOR
для
FUNCTION
функция
GO TO
переход на
IF
если
IN
в
LABEL
метка
MOD
модуль
21. Ключевые (служебные, зарезервированные) слова
Ключевые
слова
(служебные, зарезервированные)
NOT
не
OF
из
OR
или
PACKED
упакованный
PROCEDURE
процедура
PROGRAM
программа
RECORD
запись
REPEAT
повторять
22. Ключевые (служебные, зарезервированные) слова
Ключевые
слова
SET
THEN
TO
TYPE
UNTIL
VAR
WHILE
WITH
(служебные, зарезервированные)
множество
то
увеличивая до
тип
до
переменная
пока
с
23. Процедура ввода
Ввод информации с клавиатуры
осуществляется с помощью оператора
read.
Формат оператора:
Read (x1, x2, …,xn);
или Readln (x1, x2, …,xn); где x1, x2, …,xn
– список вводимых переменных.
24. Вывод информации
Write (x1, x2, …,xn);
writeln (x1, x2, …,xn);, где x1, x2, …,xn –
список выводимых переменных, констант,
выражений.
Writeln перемещает курсор на новую
строку после вывода информации.
25. Структура программы
26.
ПРИМЕРЫ.
Найти периметр и площадь
треугольника со сторонами a, b,c.
a
b
27.
Графическое описание алгоритма
начало
a, b, c
P=(a+b+c)/2
S=(p(p-a)(p-b)(p-c)) (1/2)
P,s
конец
28. Программа (Турбо ПАСКАЛЬ)
29.
Заданы длины двух катетов прямоугольного
треугольника a, b. Вычислить длину гипотенузы c и
величины двух его углов α и β. Значения a, b ввести
с клавиатуры.
α
b
c
β
a
30. Program P_2; const pi=3.14;
<описание переменных вещественного типа: a, b, alf, bet>
Var
a, b, c, alf, bet : real;
Begin
write (′ a = ′); read (a);
write (′ b = ′); read (b);
C := sqrt (a*a + b*b);
Alf := arc tan (a / b);
Bet := arc tan (b / a);
write (′c=′, c : 6 : 2);
write (′радианы ′ );
write (′ alf = ′, alf : 6 : 2, ′ bet = ′, bet : 6 : 2);
write (′Градусы′);
write (′ alf = ′, alf * 180 / pi :3:0, ′ bet = ′, bet* 180 / pi : 3:0 )
end.
31. Ввод программы в компьютер
Turbo.exe – запуск оболочки Турбо Паскаль
В состав оболочки входят: текстовый
редактор, транслятор и отладчик.
Esc – переход из главного меню в состояние
редактирования.
F10 – переход из режима редактирования к
главному меню.
Длина вводимой строки не более 126
символов.
Enter — завершает ввод строки.
Ctrl + Y- стереть всю строку.
32. Перемещение курсора
Page Up – на страницу вверх
Page Down — на страницу вниз
Home – в начало строки
End –в конец строки
Ctrl + Page Up –в начало текста
Ctrl + Page Down — в конец текста
33. Работа с файлами
Save – запись в память
Open – вызов из памяти
F2 – запись в память
F3 – вызов из памяти
Y –подтверждение сохранения файла
N – не сохранять файл.
34. Запуск программы и просмотр результатов
Alt + F9 – вызов транслятора
F1 – справка
Ctrl + F9 — запуск программы на
выполнение
Alt + F5 – просмотр результатов работы
программы.
35. Контрольные вопросы.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Какой алгоритм называется линейным?
Как в языке Паскаль задается процедура ввода/ вывода?
Назовите правила записи арифметических выражений на
языке Паскаль.
Что такое «форматированный вывод»?
Какие типы переменных в вашей программе?
В каком месте программы объявлены переменные?
Объясните записи “write (‘s=‘,s:4:2) и “writeln(‘s=‘,s:4:2) .
Равнозначны ли записи x:=25.5 и x=25.5?
Укажите тип величины x.
Какая команда описывает вычислительный процесс в
программе?
36.
Литература
1. Учебное пособие по информатике для
студентов 1 курса под ред. Чекановой Н.Н. с.
97 — 106
2. Цветкова М.С. Информатика и ИКТ: учебник
для нач. и сред. Проф. Образ., 2013, с.120-127
Источник: ppt-online.org