50-3-АЛГОРИТМЫ и программирование

advertisement
АЛГОРИТМЫ
Алгоритм – это четкая
последовательность действий,
которые должны быть
произведены для получения
результата.
Дискретность
Понятность
Процесс решения задачи должен быть разбит на
Алгоритм, составленный для конкретного
исполнителя, должен включать только те
последовательность отдельных шагов. Таким
команды, которые входят в его систему
образом, формируется упорядоченная
команд. Это свойство алгоритма называется
совокупность отдельных друг от друга команд
понятностью. Алгоритм не должен быть
(предписаний). Образующая структура алгоритма
рассчитан на принятие каких-либо
оказывается прерывной (дискретной); только
самостоятельных решений исполнителем, не
предусмотренных составителем алгоритма.
выполнив одну команду, исполнитель сможет
приступить к выполнению следующей.
Массовость
Разработка алгоритмов процесс интересный,
творческий, но непростой, требующий многих
умственных усилий и затрат времени. Поэтому
Конечность (результативность)
предпочтительно разрабатывать алгоритмы,
Ещё одно важное требование,
обеспечивающие решение всего класса задач
предъявляемое к алгоритму, это
данного типа.
конечность(иногда говорят
результативность) алгоритма.
Точность (определённость)
Это значит, что исполнение алгоритма
Каждая команда алгоритма должна определять
должно завершиться за конечное число
однозначное действие исполнителя.
шагов.
Алгоритмы по способу представления
бывают:
- словесные
- числовые
- графические
-в виде блок-схем
Словесный алгоритм
1. Слепить из снега большой шар и положить его на
землю;
2. Слепить второй шар, меньше первого и положить
его на первый шар;
3. Слепить третий шар, меньше второго и положить
его на второй шар;
4. Надеть ведро на третий шар;
5. Сделать глаза из угольков на третьем шаре под
ведром;
6. Воткнуть морковку между угольками.
Графический алгоритм
Виды алгоритмов:
- линейные
- разветвляющиеся
- циклические
Описание
действий, которые
выполняются
однократно в
заданном порядке.
Запись линейного
алгоритма с помощью
блок-схемы
Алгоритм, в котором в зависимости от
условия выполняется либо одна, либо
другая последовательность действий-
Разветвляющийся
алгоритм
Циклический
алгоритм
При определении вида алгоритма
пользуются ключевыми словами.
Алгоритм, в котором есть
структура СЛЕДОВАНИЕ
называется ЛИНЕЙНЫМ.
Следование - это расположение действий
друг за другом.
Алгоритм, в котором есть
структура ВЕТВЛЕНИЕ
называется
РАЗВЕТВЛЯЮЩИМСЯ
Ветвление - это выбор действия в
зависимости от выполнения
какого-нибудь условия.
Алгоритм, в котором есть
структура ЦИКЛ называется
ЦИКЛИЧЕСКИМ.
Цикл -это неоднократное
повторение каких-либо действий
Линейные – команды
выполняются в порядке
их естественного
следования.
Ветвление – в зависимости от
поставленного условия
алгоритм позволяет выбрать
один из вариантов решения
задачи.
Цикл – в алгоритме встречаются
повторяющиеся действия.
Начало
Начало
Начало
Ввод А, X, K,
Ввод А, В
Ввод А, В
Х:=А+В
N:=0
Да
А>=В
Х:=А+В
Х:=А*В
Вывод Х
Конец
Нет
Да
N>К
Нет
Y:=A*X
Вывод Х
Вывод Y,Х
N:=N+1
Конец
Конец
Алгоритм, который
содержит несколько структур
одновременно, называется
КОМБИНИРОВАННЫМ.
Для того, чтобы этот алгоритм стал
понятен компьютеру, нужно
записать этот алгоритм на понятном
ему языке.
Такие языки называются языками
программирования, а сами
алгоритмы - программами.
Таким образом, Алгоритм,
записанный на языке
программирования,
называется программой.
Программирование
на языке Паскаль
Тема 1. Введение
21
Интерфейс программы Free Pascal
Рассмотрим меню File
Меню Edit
Run- запускается программа
Компиляция (отладка)программы
-Compile
Из чего состоит программа?
program <имя программы>;
const …;{константы}
var …; {переменные}
{ процедуры и функции }
begin
… {основная программа}
end.
комментарии в фигурных скобках не
обрабатываются
27
Из чего состоит программа?
Константа – постоянная величина, имеющая
имя.
Переменная – изменяющаяся величина,
имеющая имя (ячейка памяти).
Процедура – вспомогательный алгоритм,
описывающий некоторые действия
(рисование окружности).
Функция – вспомогательный алгоритм для
выполнения вычислений (вычисление
квадратного корня, sin).
28
Имена программы, констант, переменных
Имена могут включать
• латинские буквы (A-Z)
заглавные и строчные буквы не различаются
• цифры
имя не может начинаться с цифры
• знак подчеркивания _
Имена НЕ могут включать
• русские буквы
• пробелы
• скобки, знаки +, =, !, ? и др.
Какие имена правильные??
AXby R&B 4Wheel Вася “PesBarbos”
TU154 [QuQu] _ABBA A+B
29
Константы
const
i2 = 45; { целое число }
pi = 3.14; { вещественное число }
целая и дробная часть отделяются точкой
qq = 'Вася'; { строка символов }
можно использовать русские буквы!
L
= True; { логическая величина }
может принимать два значения:
• True (истина, «да»)
• False (ложь, «нет»)
30
Переменные
Переменная – это величина, имеющая имя, тип и
значение. Значение переменной можно изменять
во время работы программы.
Типы переменных:
• integer
{ целая }
• real
{ вещественная }
• char
{ один символ }
• string
{ символьная строка }
• boolean
{ логическая }
Объявление переменных (выделение памяти):
var a, b: integer;
Q: real;
s1, s2: string;
31
Переменная – параметр программы, значение которого может изменяться в процессе её
выполнения.
Константа – параметр программы, значение которого не меняется в процессе её
выполнения.
Типы данных языка Паскаль
Integer
Real
Char
String
Boolean
Целые числа
Дробные числа
Символы
Строки
Логические
142
35.8
“A”
“Миру мир”
TRUE/FALSE
Program Con;
Const
C1 = 17;
C2 = 3.4;
C3 = “A”;
C4 = “3.14”;
C5 = False;
...
<Имя
константы>
Program Vr;
Var
sigma: real;
A,b,c,d: char;
text1: string[15];
text2: string;
flag: boolean;
...
<Значение
константы>
<Имя
переменной>
<Тип
переменной>
Program Summ;
Const
A=5;
B=7;
Var
C: integer;
Begin
C:= A;
C:= A+B;
Write(C);
End.
Информатика 6.4
Арифметические операции
А+В
А-В
А*В
А/В
A div B
A mod B
Ввод данных с клавиатуры
read
(<список ввода>)
readln
(<список ввода>)
Вывод данных на экран
write
(<список вывода>)
writeln
(<список вывода>)
Сложение
Вычитание
Умножение
Деление
Целое деление
Остаток от дел.
Стандартные функции Паскаля
abs (x)
arctan (x)
cos (x)
exp (x)
frac (x)
int (x)
ln (x)
random
random (x)
round (x)
sin (x)
sqrt (x)
Модуль х
Арктангенс х
Косинус х
Е’-экспонента
Дробная часть х
Целая часть х
Логарифм
Случ. число [0..1]
Случ. число [0..х]
До целого
Синус х
Корень квадратный
Download