Алгоритм. Свойства алгоритма. Типы алгоритмов. Графический способ записи алгоритма.
Алгоритм. Свойства алгоритма. Типы алгоритмов. Графический способ записи алгоритма.
1)Алгоритм – это строгая последовательность действий, ведущих к решению задачи.
2)Свойства алгоритма:
Дискретность - Это свойство состоит в том, что алгоритм должен представлять процесс решения задачи как последовательное выполнение простых шагов. При этом для выполнения каждого шага алгоритма требуется конечный отрезок времени, т.е. преобразование исходных данных в результат осуществляется во времени дискретно.
Определенность - Каждое правило алгоритма должно быть четким, однозначным.
Результативность - Алгоритм должен приводить к решению за конечное число шагов.
Массовость - Алгоритм решения задачи разрабатывается в общем виде, т.е. он должен быть применим для некоторого класса задач, различающихся лишь исходными данными.
Правильность - Алгоритм правильный, если его выполнение дает правильные результаты решения поставленной задачи.
Типы алгоритмов: линейный, ветвящийся и циклический.
Линейный алгоритм – В кот все действия выполняются последовательно, друг за другом
Разветвляющийся алгоритм – алгоритм, содержащий хотя бы одно условие, выполняя кот мы идем на ветку «Да Нет»
Циклический алгоритм – алгоритм, предусматривающий многократное повторение одного и того же действия (одних и тех же операций) над новыми исходными данными.
4)При графическом представлении алгоритм изображается в виде последовательности
связанных между собой функциональных блоков, каждый из которых соответствует
выполнению одного или нескольких действий.
Такое графическое представление называется схемой алгоритма или блок-схемой. В блок-схеме каждому типу действий (вводу исходных данных, вычислению значений выражений, проверке условий, управлению повторением действий, окончанию обработки и т.п.) соответствует геометрическая фигура, представленная в виде блочного символа. Блочные символы соединяются линиями переходов, определяющими очередность выполнения действий.
Алгоритм. Свойства алгоритма. Способы записи алгоритма. Графический способ записи алгоритма.
1)Алгоритм – это последовательность математических, логических или вместе взятых операций, отличающихся детерменированностью, массовостью, направленностью и приводящая к решению всех задач данного класса за конечное число шагов.
2)Свойства алгоритма:
Дискретность - Это свойство состоит в том, что алгоритм должен представлять процесс решения задачи как последовательное выполнение простых шагов. При этом для выполнения каждого шага алгоритма требуется конечный отрезок времени, т.е. преобразование исходных данных в результат осуществляется во времени дискретно.
Определенность - Каждое правило алгоритма должно быть четким, однозначным.
Результативность - Алгоритм должен приводить к решению за конечное число шагов.
Массовость - Алгоритм решения задачи разрабатывается в общем виде, т.е. он должен быть применим для некоторого класса задач, различающихся лишь исходными данными.
Правильность - Алгоритм правильный, если его выполнение дает правильные результаты решения поставленной задачи.
3) Способы записи алгоритма
Вербальный- когда алгоритм описывается на человеческом языке;
Символьный- когда алгоритм описывается с помощью набора символов;
Графический - когда алгоритм описывается с помощью набора графических изображений.
4)При графическом представлении алгоритм изображается в виде последовательности
связанных между собой функциональных блоков, каждый из которых соответствует
выполнению одного или нескольких действий.
Такое графическое представление называется схемой алгоритма или блок-схемой. В блок-схеме каждому типу действий (вводу исходных данных, вычислению значений выражений, проверке условий, управлению повторением действий, окончанию обработки и т.п.) соответствует геометрическая фигура, представленная в виде блочного символа. Блочные символы соединяются линиями переходов, определяющими очередность выполнения действий
Общая структура программы
В программе, написанной на стандарте языка Паскаль, могут быть следующие разделы:
· заголовок программы;
· раздел объявления меток;
· раздел объявления констант;
· раздел объявления типов;
· раздел объявления переменных;
· раздел объявления процедур и функций;
· тело программы (обязательная часть).
program EXAMPLE1; var X, Y, Summa: Real; begin Write ('Введите, числа X и Y '); ReadLn(X, Y); Summa := X + Y; WnteLn('Сумма чисел X и Y равна ', Summa) end. | {заголовок программы} {раздел объявления переменных} {тело программы} {вывод сообщения на экран} {чтение двух чисел} {определение суммы} {вывод результата} |
2)Алфавит Паскаля составляют:
1) Латинские буквы
2) Цифры – от 0 до 9
3) Разделительные знаки - + * /<> {} . , % & #
5. Язык программирования Turbo Pascal. Конструкции языка программирования Turbo Pascal (алфавит языка, приоритет операций, арифметические операции, числа).
1)Турбо Паскаль - это язык высокого уровня (сокращенно ЯВУ) программирования общего назначения. Язык получил своё имя в честь великого французского математика и философа Блеза Паскаля, автора первых образцов счетной техники.
Паскаль был разработан швейцарским ученым Никлоусом Виртом (нем. Niklaus Wirth) в 1968-1971 годах и изначально был ориентирован на обучение программированию.
2)Алфавит Паскаля составляют:
1) Латинские буквы
2) Цифры – от 0 до 9
3) Разделительные знаки - + * /<> {} . , % & #
3) Приоритетом называется очередность выполнения операций в выражении. Выполнение каждой операции происходит с учетом ее приоритета. Значения приоритетов указаны в таблице.
Операция | Приоритет | Вид операции |
@, not | Первый (высший) | Унарная операция |
*, /, div, mod, and | Второй | Операции типа умножения |
+, -, or, xor | Третий | Операции типа сложения |
=, <>, <, >, <=, >=, in | Четвертый (низший) | Операции отношения |
4)В Турбо Паскале доступны следующие арифметические операции над числами:
целочисленное деление: c:=a div b;
остаток от деления: c:=a mod b;
Над целыми числами (integer,byte) возможно применение арифметических операций сложения и вычитания. Даже в случае когда при выполнении в pascal операции умножения или деления результом будет являться целое число, для его хранения потребутеся все же использовать вещественную переменную (real).
Арифметические действия в pascal выполняются слева направо с учетом скобочных выражений, которые выполняются первыми, а также согласно приоритету арифметических операций: все виды деления и умножение, а затем - сложение и вычитание.
6. Язык программирования Turbo Pascal. Конструкции языка программирования Turbo Pascal.
1)Турбо Паскаль - это язык высокого уровня (сокращенно ЯВУ) программирования общего назначения. Язык получил своё имя в честь великого французского математика и философа Блеза Паскаля, автора первых образцов счетной техники. Паскаль был разработан швейцарским ученым Никлоусом Виртом (нем. Niklaus Wirth) в 1968-1971 годах и изначально был ориентирован на обучение программированию.
Математические операции
В таблице приведены основные математические операции Турбо Паскаль.
Символ операции | Название операции | Пример | |||||
* | умножение | 2*3 (результат: 6) | |||||
/ | деление | 30/2 (результат: 1.5E+01) | |||||
+ | сложение | 2+3 (результат: 5) | |||||
- | вычитание | 5-3 (результат: 2) | |||||
div | целочисленное деление | 5 div 2 (результат: 2) | |||||
mod | остаток от деления | 5 mod 2 (результат: 1) | |||||
Наименование Функции | Тип аргумента | Тип значения | Результат вычесления | ||||
МАТЕМАТИЧЕСКИЕ ФУНКЦИИ | |||||||
abs(x) | Целый вещественный | Целый вещественный | Абсолютное значение "x" | ||||
sin(x) | Вещественный | Вещественный | Синус"x"рад | ||||
cos(x) | Вещественный | Вещественный | косинус"x"рад | ||||
arctan(x) | Вещественный | Вещественный | арктангенс "х" ( -Pi/2 < y < td )< 2 Pi> | ||||
Sqrt(x) | вещественный | вещественный | квадратный корень из "х"(Ц х, где x > 0) | ||||
Sqr(x) | Целый вещественный | Целый вещественный | значение "х" в квадрате ( х2 ) | ||||
Exp(x) | вещественный | вещественный | значение "е" в степени "х" ( ех, где e= 2. 718282. . . ) | ||||
Ln(x) | вещественный | вещественный | натуральный логарифм "х" ( х > 0 ) | ||||
Frac(x) | вещественный | вещественный | дробная часть "х" | ||||
Int(x) | Вещественный | Вещественный | целая часть "х" | ||||
Random | - | вещественный | случайное число ( 0 < =y< 1 ) | ||||
Random(x) | Word | Word | случайное число ( 0 < =y< x ) | ||||
Succ(c) | Порядковый | Порядковый | следующий за "с" символ | ||||
Pred(c) | Порядковый | Порядковый | предшествующий "с" символ | ||||
2) Арифметические выражения записываются по следующим правилам:
· Нельзя опускать знак умножения между сомножителями и ставить рядом два знака операций.
· Индексы элементов массивов записываются в квадратных (школьный АЯ, Pascal) или круглых (Basic) скобках.
· Для обозначения переменных используются буквы латинского алфавита.
· Операции выполняются в порядке старшинства: сначала вычисление функций, затем возведение в степень, потом умножение и деление и в последнюю очередь — сложение и вычитание.
· Операции одного старшинства выполняются слева направо. Например, a/b*c соответствует a/b*c.
Begin
write ('Введите класс школы: ');
readln (n);
case n of
1..4: writeln ('Младшие классы.');
5..8: writeln ('Средняя школа.');
9,11: writeln ('Старшие классы. Выпускной.');
10: writeln ('Старшие классы.');
else writeln ('Error')
end;
readln
end.
На использование оператора выбора накладываются следующие ограничения:
· селектор должен иметь какой-либо порядковый тип;
· каждая альтернатива должна быть константой, диапазоном, списком диапазонов, но не переменной или выражением.
12. Язык программирования Turbo Pascal. Циклические конструкции. Оператор цикла с параметром- оператор цикла FOR…
1) Турбо Паскаль - это язык высокого уровня (сокращенно ЯВУ) программирования общего назначения. Язык получил своё имя в честь великого французского математика и философа Блеза Паскаля, автора первых образцов счетной техники. Паскаль был разработан швейцарским ученым Никлоусом Виртом (нем. Niklaus Wirth) в 1968-1971 годах и изначально был ориентирован на обучение программированию.
2) Циклические конструкции В программировании блоки кода, которые требуется повторять не единожды, оборачиваются в специальные конструкции – циклы. У циклов выделяют заголовок и тело. Заголовок определяет, до каких пор или сколько раз тело цикла будет выполняться. Тело содержит выражения, которые выполняются, если в заголовке цикла выражение вернуло логическую истину (True, не ноль). После того как достигнута последняя инструкция тела, поток выполнения снова возвращается к заголовку цикла.
.
Var
i, n: integer;
Begin
write ('Количество знаков: ');
readln (n);
for i := 1 to n do
write ('(*) ');
readln
end.
13.Язык программирования Turbo Pascal. Циклические конструкции. Оператор цикла с постусловием - оператор цикла REPEAT
1) Турбо Паскаль - это язык высокого уровня (сокращенно ЯВУ) программирования общего назначения. Язык получил своё имя в честь великого французского математика и философа Блеза Паскаля, автора первых образцов счетной техники. Паскаль был разработан швейцарским ученым Никлоусом Виртом (нем. Niklaus Wirth) в 1968-1971 годах и изначально был ориентирован на обучение программированию.
2) Циклические конструкции.В программировании блоки кода, которые требуется повторять не единожды, оборачиваются в специальные конструкции – циклы. У циклов выделяют заголовок и тело. Заголовок определяет, до каких пор или сколько раз тело цикла будет выполняться. Тело содержит выражения, которые выполняются, если в заголовке цикла выражение вернуло логическую истину (True, не ноль). После того как достигнута последняя инструкция тела, поток выполнения снова возвращается к заголовку цикла.
Var
i, n: integer;
Begin
write ('Количество знаков: ');
readln (n);
i := 1;
while i <= n do begin
write ('(*) ');
i := i + 1
end;
readln
end.
Массив в Паскале
<имя массива>:= array [<количество элементов>] of <тип переменной>;
Каждый элемент массива в общем виде описывается как А[I], где
А - имя массива,
I - номер или индекс массива (0<=I<=N, но практически употребляется 1<=I<=N)
A[I] - значение элемента массива.
Const
max = 100;
Var
arr: array[1..max] of real;
n: integer;
sum, op: real;
i: integer;
Begin
write('Количество элементов: ');
readln(n);
write('Укажите значения: ');
for i := 1 to n do
read(arr[i]);
sum := 0;
for i := 1 to n do
sum := sum + arr[i];
op := 1;
for i := 1 to n do
op := op * arr[i];
writeln('Сумма элементов: ', sum:10:2);
writeln('Произведение элементов: ', op:20:2);
end.
Insert
Insert(source:string; var s:string;index:integer)
Процедура предназначена для вставки строки source в строку s, начиная с символа index этой строки. Пример.
s := 'Система Pascal';
insert('Turbo ',s,9); {s будет равно 'Система Turbo Pascal'}
Pos(substr,s:string):byte
Функция производит поиск в строке s подстроки substr. Результатом функции является номер первой позиции подстроки в исходной строке. Если подстрока не найдена, то функция возвращает 0.
Алгоритм. Свойства алгоритма. Типы алгоритмов. Графический способ записи алгоритма.
1)Алгоритм – это строгая последовательность действий, ведущих к решению задачи.
2)Свойства алгоритма:
Дискретность - Это свойство состоит в том, что алгоритм должен представлять процесс решения задачи как последовательное выполнение простых шагов. При этом для выполнения каждого шага алгоритма требуется конечный отрезок времени, т.е. преобразование исходных данных в результат осуществляется во времени дискретно.
Определенность - Каждое правило алгоритма должно быть четким, однозначным.
Результативность - Алгоритм должен приводить к решению за конечное число шагов.
Массовость - Алгоритм решения задачи разрабатывается в общем виде, т.е. он должен быть применим для некоторого класса задач, различающихся лишь исходными данными.
Правильность - Алгоритм правильный, если его выполнение дает правильные результаты решения поставленной задачи.