АЛГОРИТМИЗАЦИЯ И ОСНОВЫ ПРОГРАММИРОВАНИЯ
Ибо это недостойно совершенства
Человеческого, подобно рабам
Тратить часы на вычисления.
Готфрид В. Лейбниц
Бэббидж говорил, что он заставляет
Машину bite ist own tail
(кусать себя за хвост).
ВВОД-ВЫВОД
присваивание
N
имя
INPUT
ПРОЦЕССОР
#
УУ
АЛУ
СОЗУ
,
озу
«текст»
С=В+А
LP:
В
А
D=7.25
20,5
READ К,L#,M%
с
D
DATA 3.75,”KM”,5%
к
Мхn;
s
м
RESTORE
10100.1
N
PRINT
имя
#
;
выражение
текст
,
,;
,
,;
«имя файла»
open
N
INPUT
FOR
ASFILE#n
OUNHUT
NK
close
#
ФУНКЦИИ стандартные
ЧИСЛОВЫЕ
ABS (X)
ЛИТЕРНЫЕ
LOG 10 (X) 1gX
ATN (X) arctgX
ASK (X) код символа Х*
RND (X) случайн. число
СОS (X) cosX
EXP (X) e
SIN (X) sinX
CHR*(X) Символ с кодом Х
LEN (X*) Длина строки Х*
SOR (X) √X
INT (X) [X]
MID* (X*,N,K) Вырезка из Х* К символов начиная с N-го
TAN (X) tgX
LOG (X) 1nX
STR* (X) X как символ
TAB (X) вывод в Х-позицию
VAL (X*) Значение Х*
ФУНКЦИИ ПОЛЬЗОВАТЕЛЯ
DEF FN
Формал.
ИМЯ
N
Парам.
выражение
)=
(
до 5
,
120 DEF FNE (A,W,X,F,C)=A*COS (W*X+F)+C
программы
10 REM ФУНКЦИЯ FND – БОЛЬШЕЕ ИЗ ДВУХ ЧИСЕЛ
20 DEF FND (A,B)=(A+B+ABS (A-B) ) /2
30 REM ФУНКЦИЯ FNG – ФОРМУЛА ГЕРОНА
40 DEF FNG (A,B,C) =SOR ( ( )A+B+C)*(A+B-C)*(A+C-B)*(B+C-A) ) /4
50 PRINT , ’ ВВЕДИТЕ ДЛИНЫ ОТРЕЗКОВ А, В, С’ ;
60 INPUT A, B, C
70 GOSUB 1000
80 IF B1
ELSE PRINT ’ТРЕУГОЛЬНИК НЕ СУЩЕСТВУЕТ’
90 END
GOSUB 1000
Основная программа
1
1000 REM ПРОГРАММА
2
1010 B1=FND (A, B)
1020 B1=FND (B1,C)
1030 S=A+B+C-B1
1040 RETURN
3
2070 RETURN
3100 RETURN
ФОН НЕЙМАН 1946
присваивание
вывод
ввод
3.14
МЕЛЬНИЦА АУ
3 У СКЛАД
C : = A + B S : = A +B
S : = S / 2 . 2
ПА
В
2.2
А
УВВ
С
S
ЛПУ
УУ
3.14
КОНТОРА
Ч. БЭББИДЖ 1830
первый
последний
АЛГОРИТМЫ ПОИСКА
претендент
эталон
А
Б
В
Г ( НЕУПОРЯДОЧЕН )
Д ( ДИХОТОМИЯ )
Значение (размер)
2
1
3
о т к у д а
№
№ 1
Номер (место)
номер 1 номер К
№
№ 1
3
2
1
эталон текущий
Т р е б о в а н и е
Н. Вирт
Алгоритмы +
Структуры данных
= программы
Т р е б о в а н и е
Ф. М. Достоевский
Собран. Соч. т. 15
Малыш, Давай меняться! Подвинтесь,пожалуйста 2 1 О Б М Е Н « П У З Ы Р Ё К « Выше и Выше Выше, всё ≤ " width="640"
ЭХ, раз,
Ещё раз.
Ещё много-
-много
Раз!
выбор
АЛГОРИТМЫ СОРТИРОВКИ
Где моё место?
ВСТАВКИ
Малыш,
Давай
меняться!
Подвинтесь,пожалуйста
2
1
О Б М Е Н
«
П
У
З
Ы
Р
Ё
К
«
Выше
и
Выше
Выше,
всё
≤
С Е Р И Я
Управление в алгоритме
Следование
Повторение
Ветвление
Если IF
То THEN
Иначе ELSE
Пока WHILE DO Нц BEGIN
Кц END
Команда 1
НЕТ
ДА
условие
НЕТ
ДА
условие
Команда 2
серия
Серия 2
Серия 1
Команда 3
КОНСТАНТЫ
ПЕРЕМЕННЫЕ
ЗНАЧЕНИЕ
в е л и ч и н ы
Целые
Вещественные
Натуральные
литерные
ИМЯ И ЗНАЧЕНИЕ
Т И П
С ИНДЕКСАМИ
ПРОСТЫЕ
Иванов
шофёр
Петров
Пассажир 1
Иван
Иван
Пассажир 2
Иванов
Пётр
пассажиры
массив
РЕЦЕПТ
ПРОГРАММА
… я – части часть,
которая была когда-то всем.
Иоган В. Гёте
ещё раз об алгоритмах
Торт ( название ) ЧТО? Алг имя алгоритма
Сахар ИЗ (тип имя1,имя2,тип имя3)
Масло ЧЕГО? алг имя1,имя2,…
рез имя3,…
Растереть Нач
КАК? оператор 1;
оператор 2;…
Добавить кон
С
М
О
О
Л
к
О
К
о