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