алг и прогр (11кл)

515 views

Published on

  • Be the first to comment

  • Be the first to like this

алг и прогр (11кл)

  1. 1. Алгоритмизация и программирование<br />11 класс<br />
  2. 2. Этапы решения задачи на ПК<br />Составление модели задачи<br />Выделить существенные предположения<br />Выделить исходные данные<br />Определить результат<br /> Установить связь между исходными данными и результатом (формулы, неравенства и т.д.)<br />Составление алгоритма<br />Составление программы<br />Ввод исходных данных и анализ результатов<br />Исправление ошибок<br />2<br />
  3. 3. Пример: Определить площадь поверхности письменного стола.<br />Математическая модель:<br />Предположения - <br />Исходные данные -<br />Результат - <br />Связь - <br />используются только переменные!<br />3<br />
  4. 4. Алгоритм - <br />понятное и точное предписание исполнителю выполнить конечную последовательность команд, приводящую от исходных данных к искомому результату.<br />4<br />
  5. 5. Свойства алгоритма<br />Дискретность<br />Понятность<br />Точность<br />Конечность (результативность)<br />Массовость<br />5<br />
  6. 6. Исполнитель- это объект, умеющий выполнять определенный набор действий<br />Не формальный (не идеальный)<br />Формальный (идеальный)<br />человек<br />растение<br />технические устройства<br />вымышленные<br />животное<br />Формальный исполнитель – это исполнитель, который действует строго по написанному алгоритму и имеет ограниченную и простую систему команд. <br />6<br />
  7. 7. Система команд исполнителя (СКИ) - это набор команд на выполнение допустимых для данного исполнителя операций.<br />Среда исполнителя – обстановка, в которой функционирует исполнитель.<br />7<br />
  8. 8. Способы записи алгоритма<br />начало<br />X=-5,15,2<br />Y=5*x^2-3*x+9<br />Вывод X,Y<br />словесный<br />программный<br />Графический (блок-схема)<br />INPUT“введите длину и ширину прям-ка»; a,b<br />P=(a+b)*2<br />S=a*b<br />PRINT «S=»; S<br />PRINT «P=»; P<br />Например: <br /><ul><li>открыть дверь
  9. 9. Заварить чай</li></ul>8<br />
  10. 10. Основные элементы языка блок-схем<br />- начало/конец<br />- ввод/вывод<br />- Вычислительный (присваивание)<br />Усл.<br />нет<br />да<br />- Ветвление (условие)<br />- блок-модификатор (цикл «ДЛЯ КАЖДОГО»)<br />9<br />
  11. 11. Типы алгоритмов<br />линейный<br />разветвляющийся<br />циклический<br />10<br />
  12. 12. Введение в язык программирования Паскаль<br />11<br />
  13. 13. 1.Алфавит<br />1.1Идентификатор (имя любого объекта программы) – это последовательность латинских букв, цифр и символа подчеркивания, начинающихся с буквы.<br />Пример: S2, MAX_3, f6t, family.<br />12<br />
  14. 14. 1.Алфавит<br />1.2Разделители используются для отделения друг от друга идентификаторов. <br />В качестве разделителей можно использовать:<br />пробел;<br />комментарий,<br />Примеры комментариев:<br />//комментарий может выглядеть и таким образом<br />{если комментарий требуется разместить в нескольких строках, то его заключают в фигурные скобки}<br />13<br />
  15. 15. 1.Алфавит<br />1.3Спецсимволы<br />14<br />
  16. 16. 2. Структура программы<br />program <имя>; <br /><блок описания данных>;<br />Begin<br /><оператор 1>; <br /><оператор 2>;<br />…<br /><оператор N><br />end. <br />заголовок программы;<br />начало исполняемой части программы;<br /> «тело» программы;<br /> конец программы.<br />15<br />
  17. 17. 2. Структура программы<br />program <имя>; <br /><блок описания данных>;<br />Begin<br /><оператор 1>; <br /><оператор 2>;<br />…<br /><оператор N><br />end. <br />program MULT;<br />varX,Y,REZ:real;<br />begin<br />write('Введите первое число: ');<br />readln(X);<br />write('Введите второе число: ');<br />readln(Y);<br />REZ:=X*Y;<br />writeln(‘Произв. Чисел = ’,REZ:5:2) <br />end.<br />16<br />
  18. 18. 3. Типы данных<br />Данные (величина) – отдельный информационный объект, который имеет имя, значение, тип.<br />Константы – постоянные величины.<br />Например:<br />Const <br />PI=3.14; <br />Year=1994;<br />Gr='Я';<br />Переменные – данные, которые могут меняться в процессе выполнения программы.<br />Например:<br />Vara, b: integer; <br />sum: real;<br />Lit: char;<br />Тип данных определяет множество значений, которые может принимать величина, и множество действий, которые можно выполнить с этой величиной.<br />17<br />
  19. 19. 3. Типы данных<br />18<br />
  20. 20. 4. Разное<br />4.1Операции<br />А) арифметические<br />б) логические: and, or, not<br />В) операции отношения: <, >, <=, >= , =,<><br />19<br />
  21. 21. 4. Разное<br />4.2стандартные функции<br />Sin, Cos, Arctan, Ln, Exp, Sqr, Sqrt, Abs<br />Например:<br />A:=Sin(X); - (угол для всех тригонометричеких функций задается в радианах).<br />Sqr(x) – x2<br />Sqrt(x) - <br />Abs(x) - |x|<br />20<br />
  22. 22. 5. Простейшие команды<br />5.1 Команда присваивания<br />Имя переменной:=выражение<br /> текст<br />Например:<br />A:=100; B:=15;<br />A:=A+10;<br />A:=2*A;<br />C:=A+B-5;<br />C:=(A-C)*C<br />21<br />
  23. 23. 5.2 Команда вывода<br />write (список вывода);<br />writeln (список вывода);<br />Например:<br />1) A:=3; B:=15<br />Write (A, ‘Как дела?’, B+A);<br />2) Write ( ‘Маша’);<br />Write ( ‘гуляет’);<br />3)Writeln ( ‘Маша’);<br />Writeln ( ‘гуляет’);<br />После выполнения команды, курсор переходит к началу следующей строки<br />На экране<br />3 Как дела? 18<br />Машагуляет<br />Маша<br />гуляет<br />22<br />
  24. 24. 5.2 Команда вывода<br />WriteLn(temp:3:2);<br />temp – выводимая переменная<br />3 - число позицийв числе<br />2 – число знаков после запятой.<br />23<br />
  25. 25. 5.2 Команда вывода<br />programspr;<br />Clrscr;<br />vara,b,s:real;<br />begin<br />a:=5;<br />b:=10;<br />p:=(a+b)*2;<br />s:=a*b;<br />writeln (‘ периметр p=',p);<br />write (‘площадь прямоугольника s=',s)<br />end.<br />24<br />
  26. 26. 5.3 Команда ввода<br />readln (список переменных);<br />Например:<br />readln (a, b);<br />write (‘введите длину');<br />readln(a);<br /> При запуске программы на выполнение, вместо aи b пользователь должен ввести конкретные значения<br />25<br />
  27. 27. 5.3 Команда ввода<br />programspr;<br />uses crt;<br />vara,b,p,s:real;<br />begin<br />clrscr;<br />write (‘введите длину');<br />readln(a);<br />write (‘ введите ширину');<br />readln(b);<br />p:=(a+b)*2;<br />s:=a*b;<br />writeln (‘площадь s=',s) ;<br />writeln (‘ периметр p=',p)<br />end.<br />26<br />
  28. 28. Ветвление - <br />это такая алгоритмическая структура, в которой осуществляется выбор одного из двух вариантов дальнейших действий в зависимости от некоторого условия.<br />27<br />
  29. 29. Ветвление<br />Формы ветвления<br />неполная<br />полная<br />Действие 1<br />Действие 2<br />Действие 1<br />Усл.<br />нет<br />Усл.<br />нет<br />да<br />да<br />Например: <br /> ЕСЛИ горит зеленый, ТО иду через дорогу, ИНАЧЕ стою<br />Например: <br /> ЕСЛИ на улице дождь,ТО беру зонт <br />28<br />
  30. 30. Неполная форма<br />IF <условие>THEN<оператор ><br />IF D<0THENWRITE (‘Делить на 0 нельзя’);<br />29<br />
  31. 31. Полнаяформа<br />PROGRAM MAX; <br />VAR X,Y,Z: integer; <br />BEGIN<br />WRITE ('Введите два целых числа:');<br />READLN(X,Y);<br />IFX>YTHEN z:=X <br />ELSEz:=yWRITE('Максимальное из двух чисел равно‘, z); <br />END. <br />IF <условие><br />THEN<br /><оператор 1><br />ELSE<br /><оператор 2><br />30<br />

×