Основы алгоритмизации и процедурное программирование. Простейшие конструкции языка Delphi / Pascal (Глава 1) презентация в формате PowerPoint - скачать бесплатно

Скачать презентацию на тему: "Основы алгоритмизации и процедурное программирование. Простейшие конструкции языка Delphi / Pascal (Глава 1)" с количеством слайдов в размере 47 страниц. У нас вы найдете презентацию на любую тему и для каждого класса школьной программы. Мы уверены, что наши слайды помогут найти вам свою аудиторию. Весь материал предоставлен бесплатно, в знак благодарности мы просим Вас поделиться ссылками в социальных сетях и по возможности добавьте наш сайт MirPpt.ru в закладки.

Содержание [Показать]

Нажмите для просмотра
Основы алгоритмизации и процедурное программирование. Простейшие конструкции языка Delphi / Pascal (Глава 1)

1: Основы программирования МГТУ им. Н. Э. Баумана Факультет Информатика и системы управления Кафедра Компьютерные системы и сети Лектор: д. т. н. , проф. Иванова Галина Сергеевна

2: Дисциплина Основы программирования Содержание дисциплины: Модуль 1. Основы алгоритмизации и программирование с использованием скалярных типов данных. Модуль 2. Структурные типы данных и модульное программирование. Модуль 3. Организация данных на внешних носителях и в оперативной памяти. Язык программирования: Паскаль (Delphi Pascal) Среда программирования: Turbo Delphi 2006 (Free version) Объем дисциплины – 7 зачетных единиц – 256 часов: лекции – 51 час - знакомство с теоретическим материалом; семинары – 34 часа - разработка алгоритмов решения задач; лабораторные работы – 34 часа – 842(зачет) часов - изучение приемов программирования; самостоятельная работа – 166 часов - закрепление материала.

3: Расписание лабораторных работ: ИУ6-11 – числ. пятница 1015-1335 ИУ6-12 – знам. пятница 1015-1335 ИУ6-13 – числ. понедельник 830-1150 ИУ6-14 – знам. понедельник 830-1150 ИУ6-15 – числ. понедельник 1200-15 25 Место проведения: кафедра КС и С, ауд. 805 (ГК, 8 этаж) С собой иметь: тетрадь, ручку, карандаш, линейку, флешку, материалы лекций или учебник. Посещение всех занятий обязательно! Отчетность по дисциплине: 3 рубежных контроля (РК): - РК 1. Итерационные циклы - 2 часа – 5-6 недели. - РК 2. Матрицы и подпрограммы - 2 часа – 10-11 недели. - РК 3. Файлы и дин. память - 2 часа – 15-16 недели. экзамен.

4: Учебные материалы

5: Консультации проф. Г. С. Ивановой Консультации проводятся: а) лично - на кафедре ИУ6 (главное здание, 8 этаж, ауд. 807): вторник числ. с 13-30 до 14-30; пятница с 12-00 до 13-00 б) по электронной почте: gsivanovagmail. com

6: Анкета Фамилия, имя, отчество, адрес эл. почты Оцените свой уровень владения компьютером: Знаком с клавиатурой, играл в игры… Могу скопировать файлы на флешку и обратно… Хорошо ориентируюсь в файловой системе, могу установить пути для программ… Укажите, с какими операционными системами работали? Изучали ли вы программирование в школе? Сколько лет? Какие языки программирования изучали? В каких средах? Оцените уровень ваших знаний: Имею представление о программировании… Могу посчитать площадь треугольника… Могу решать задачи на обработку матриц… Могу использовать динамические структуры данных… Могу использовать объектно-ориентированное программирование… Есть ли дома доступ к компьютеру? Есть ли дома доступ к Интернету?

7: Часть 1. Основы алгоритмизации и процедурное программирование МГТУ им. Н. Э. Баумана Факультет Информатика и системы управления Кафедра Компьютерные системы и сети Лектор: д. т. н. , проф. Иванова Галина Сергеевна

8: Введение Паскаль – универсальный язык программирования высокого уровня. Поддерживает структурный и объектный подходы. Первоначально предназначен для обучения студентов, затем, в совокупности со средой программирования Turbo Pascal, стал профессиональным. Автор языка: Николаус Вирт, Цюрих, Швейцария. Год создания языка: 1971 г. В основе языка хорошо продуманные, логически стройные концепции. Язык имеет простой, но хорошо защищенный синтаксис и сравнительно ясную семантику, что упрощает обучение азам программирования. Синтаксис – правила, определяющие допустимые конструкции языка. «Защищенный» синтаксис предполагает, что предложения языка строятся по правилам, которые позволяют автоматически выявлять большой процент ошибок в программах. Семантика – правила, определяющие смысл синтаксически корректных предложений. Ясная или «интуитивно-понятная» семантика – семантика, позволяющая без большого труда определять смысл программы или «читать» ее. Delphi Pascal – одна из реализаций языка программирования Паскаль, используемая в среде быстрой разработки программ Delphi.

9: Среды программирования Среда программирования – собранная в единую программную систему совокупность программных средств, предназначенный для разработки программных продуктов. Обычно включает: редактор текстов, компилятор языка программирования, компоновщик, отладчик, библиотеки подпрограмм и/или классов и т. п. Среда программирования Turbo Delphi – бесплатная для обучающихся (free) версия среды Delphi, которая является частью пакета разработки Windows-приложений Borland Developer Studio 2006. Лицензия дана сроком на 10 лет. Среда программирования Lazarus – бесплатная профессиональная многоплатформная среда разработки программ, по основным функциональным возможностям совместимая с Turbo Delphi. Имеет схожий интерфейс, но последний включает много отдельных окон, в которых начинающим программистам тяжело разобраться.

10: Этапы создания ПО 1. Постановка задачи – неформальное описание задачи. 2. Анализ и уточнение требований – формальная постановка задачи и выбор метода решения. 3. Проектирование – разработка структуры программного продукта, выбор структур данных, выбор метода решения, разработка алгоритмов обработки данных, определение особенностей взаимодействия с программной средой и т. п. 4. Реализация – составление программ, их тестирование и отладка. 5. Модификация – выпуск новых версий.

11: Пример разработки программы 1. Постановка задачи: Разработать программу, которая определяет наибольший общий делитель (НОД) двух целых чисел. 2. Анализ и уточнение требований: 1) Функциональные требования исходные данные: a, b – натуральные числа; 0 a, b ? ; результат: x – натуральное число, такое, что x max yi / i 1,n, где ((a mod yi ) 0) & (b mod yi ) 0) Методы решения: a) найти делители Y yi и определить x max Y; б) метод Евклида Пример 1: a b 24 18 6 18 6 12 6 6

12: Пример разработки программы (2) 2) Эксплуатационные требования: а) операционная система – Windows XP и выше (консольный режим); б) процессор – не ниже Pentium; в) предусмотреть запрос на ввод данных с клавиатуры; г) результаты вывести на экран. 3) Технологические требования: а) язык программирования: Pascal; б) среда программирования: Turbo Delphi 2006 (free); в) технология программирования: структурный подход.

13: Пример разработки программы(3) 3. Проектирование Виды проектной документации: 1. Структурная схема ПО – показывает взаимодействие по управлению основной программы и подпрограмм.

14: Схемы алгоритмов Обозначения по ГОСТ 19. 701 – 90 1. Терминатор (начало/конец) 2. Процесс (вычисление) 3. Анализ (проверка) 4. Модификатор (автоматическое изменение) 5. Предопределенный процесс (подпрограмма)

15: Правила выполнения схем алгоритмов Схемы алгоритмов должны быть выполнены аккуратно, желательно с применением карандаша и линейки или графических редакторов на компьютере. Стрелки на линиях, идущих сверху вниз и слева направо, т. е. в направлении письма, не ставят, чтобы не затенять схему. Если линия – ломанная, и направление ее хотя бы в одном сегменте не совпадает со стандартными, то стрелка ставится только в конце линии, перед блоком, в который она входит. Если схема не умещается на странице или линии многократно пересекаются, то линии разрывают. Один соединитель ставится в месте разрыва, второй – в месте продолжения линии. Оба соединителя помечаются одной и той же буквой или цифрой. Для простоты чтения схемы ее начало должно быть сверху, а конец – снизу. При этом количество изгибов, пересечений и обратных направлений соединительных линий должно быть минимальным.

16: Пример неудачного изображение схемы

17: 1-й вариант более читаемого изображения схемы алгоритма

18: 2-й вариант: выделение подпрограмм

19: Основные структурные конструкции алгоритма

20: Схема и псевдокод алгоритма программы поиска НОД Алгоритм Евклида: Ввести A,B Цикл-пока A B Если A B то A : A – B иначе B : B – A Все-если Все-цикл Вывести A Конец

21: Структура консольной программы Программа – последовательность инструкций, адресованных компьютеру, которая точно определяет, как следует решать задачу. Program Ex101;//Определение наибольшего общего делителя $APPTYPE CONSOLE Uses SysUtils; Var a,b:integer; begin Write(Input two numbers:); Readln (a,b); while ab do if ab then a:a-b else b:b-a; Writeln(Result:, a); Readln; end.

22: Схема процесса подготовки программы

23: Схемы процессов отладки и выполнения программы

24: Глава 1 Простейшие конструкции языка Delphi Pascal

25: 1. 1 Синтаксис и семантика языка программирования Алфавит языка програмирования Паскаль включает: 1) латинские буквы без различия строчных и прописных; 2) арабские цифры: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9; 3) шестнадцатеричные цифры: 0. . 9, а. . f или A. . F; 4) специальные символы: - / : ; и т. д. ; 5) служебные слова: do, while, begin, end и т. д. Синтаксис – правила, определяющие допустимые конструкции языка, построенные из символов его алфавита. Пример: конструкция «Идентификатор»:

26: 1. 2 Константы и переменные. Типы переменных Константы – данные, не изменяемые в процессе выполнения программы. Литералы – константы, указанные непосредственно в тексте программы. Примеры литералов: а) -25, 2. 5, 0. 1e6 0,1106 – числовые литералы; б) a – шестнадцатеричное число; в) true, false – логические константы; г) d, 65 A – символьные константы; д) abcd – строковая константа; е) nil – адресная константа.

27: Поименованные константы Поименованные константы – константы, обращение к которым выполняется по имени. Объявляются в разделе описаний: Пример: Const min 0; max 100; center (max - min) div 2;

28: Переменные Переменные – поименованные данные, которые могут изменяться в процессе выполнения программы. Объявляются также в разделе описаний: Пример: Var a,b:integer; c:real; При установленной опции Extended syntax $X (расширенный синтаксис) переменным при объявлении можно задавать начальные значения. Пример: Var a:integer56; b:integer85;

29: Типы данных Тип – описатель данных, который определяет: а) диапазон изменения значения переменной, задавая размер ее внутреннего представления; б) множество операций, которые могут выполняться над этой переменной. Для объявления новых типов данных используется конструкция: Пример: Type date 1. . 31; // объявление нового типа данных Var d1:date; // объявление переменной этого типа

30: Классификация типов данных языка

31: Основные стандартные типы данных Delphi Pascal 1. Целые типы: Integer, LongInt (4 байта со знаком): -2147483648. . 2147483647; SmallInt (2 байта со знаком): -32768. . 32767 ShortInt (1 байт со знаком): -128. . 127; Word (2 байта без знака): 0. . 65535; Byte (1 байт без знака): 0. . 255. Пример: Var a,b:word;с:shortint; 2. Символьные типы: Char, AnsiChar (1 байт без знака) – код символа по таблице ANSI; WideChar (2 байта без знака) – код символа по таблице Unicode 3. Булевский тип: Boolean (1 байт без знака: 0 – false, 1 - true)

32: Порядковые типы 4. Перечисление – значения переменных этого типа описываются явно (перечисляются). Пример: Туpe Day (Mon, Tue, Wed, Thu, Fri, Sat, Sun); Var D:Day; или Var D:(Mon, Tue, Wed, Thu, Fri, Sat, Sun); D:Fri; // присваивание переменной D значения Fri 5. Отрезок – значения переменных этого типа входят в определенный диапазон значений стандартного типа. Пример: Туpe Date 1. . 31; // значения – числа от 1 до 31 Var DataN: Date; или Var DataN: 1. . 31;

33: Функции порядковых типов данных 1. Ord () – возвращает номер значения по порядку (не применима к 64 битным аргументам). Пример: Ord(A) 65 // номер символа в таблице ANSI 2. Pred () – возвращает предыдущее значение. Dec() – возвращает значение, уменьшенное на 1. Пример: N:5; k: Pred(N)k4; m: Dec(N)m4; 3. Succ () – возвращает следующее значение. Inc() – возвращает целое, увеличенное на 1. Пример: N:5; k: Succ(N)k6; l: Inc(N)l6; 4. High() – возвращает самое большое значение типа, также работает со строками и массивами (см. далее). 5. Low() – возвращает самое маленькое значение типа, также работает со строками и массивами (см. далее).

34: Вещественные типы Вещественные числа представляются в компьютере с ограниченной точностью, определяемой разрядной сеткой. Формат внутреннего представления: -0. 51023 Стандартные вещественные типы: Тип Значащих Диапазон цифр порядка Real (8 байт) (в старших версиях) 15-16 -324. . 308 Single (4 байта) 7-8 -45. . 38 Double (8 байт) 15-16 -324. . 308 Extended (10 байт) 19-20 -4951. . 4932 Comp (8 байт) 19-20 -2631. . 263-1

35: 1. 3 Выражения Арифметические операции – применяют к вещественным и целым константам и переменным: , -, , / вещественное деление, div целочисленное деление, mod остаток от деления Пример: var a: integer 5; b: integer 3; … ab a div b a mod b a / b (ab)/(a-ba)

36: Выражения (2) 2. Операции отношения (больше, меньше, равно и т. д. ) – применяют к числам, символам, строкам – в результате получают логическое значение: меньше, больше, равно, не равно, больше или равно Пример: var a: integer 5; b:integer 3; … a b a b

37: Выражения (3) 3. Логические операции – применяют к логическим значениям – результат логическое значение.

38: Выражения (4) 4. Поразрядные операции – выполняются поразрядно, применяют к целым, результат – целое число: not, and, or, xor, shr сдвиг вправо, shl сдвиг влево Пример: var a:SmallInt 5; … not a a shl 2

39: Математические функции В выражениях можно использовать следующие математические функции: Pi // число abs() // абс. значение sqr() // x2 sqrt() // x exp() // ex ln() // ln x sin() cos() arctan() // arctg x frac() // дробная часть числа int() // целая часть числа randomize // подготовка датчика случайных чисел random () // генерация вещественного случайного числа 0 x 1; random () // генерация целого случайного числа 0 i Целое;

40: Правила вычисления выражений 1. Порядок выполнения операций определяется приоритетами и скобками Операции Приоритет , not 1 , /, div, mod, and, shr, shl 2 , -, or, xor 3 , , , 4 Пример: 1) x(x2) y(y-1) 2) (a b) and (b1)

41: Правила вычисления выражений (2) 2. При выполнении арифметических операций над числами различных типов автоматически осуществляется неявное преобразование: целого и вещественного типов – к вещественному, с разными интервалами представлений – к типу с большим интервалом. Пример: var a:single; k:integer; … a/k // число k преобразуются к типу single 3. При сравнении вещественных чисел из-за их неточного представления проверку равенства и неравенства следует осуществлять с явным указанием допуска. Пример: Var x,y:single; x y abs(x-y) 1e-10 x y abs(x-y) 1e-10

42: 1. 4 Оператор присваивания Используется для изменения значений переменных. Пример: Var v:integer; a,b:single; … a: vb / 2. 0; Корректное выполнение оператора предполагает, что результат вычисления и переменная правой части одного типа или совместимы по типу. По правилам совместимы: а) все целые типы между собой; б) все вещественные типы между собой; в) отрезок базового типа и базовый тип; г) два отрезка одного и того же базового типа; д) символ и строка.

43: Неявное преобразования типов Если типы результата и переменной не совпадают, но совместимы, то при выполнении присваивания выполняется неявное автоматическое преобразование. Пример: Var L:LongInt; E,x:extended; I:integer; R:Single; Begin … R: I E / (xL);

44: Явное преобразования типов Для несовместимых типов результата и переменной, в которую его необходимо занести, при выполнении присваивания необходимо явное преобразование типов, например, посредством специальных функций: trunc() – преобразует вещественное число в целое, отбрасывая дробную часть. round( Вещественное выражение) – округляет вещественное число до целого по правилам арифметики. Пример: trunc(4. 5) 4, round(4. 5) 5 ord() – преобразует значение в его номер. Пример: ord(A) 65. chr() – преобразует номер символа в символ. Пример: chr(65) A.

45: 1. 5 Процедуры ввода-вывода Ввод – операция по передаче данных от источника в память компьютера. Вводимые числа разделяют пробелами или записывают на разных строках. По типу они должны соответствовать типам переменных. ReadLn в отличие от Read после выполнения операции чтения переводит курсор ввода на следующую строку. Read(a,b); а) 30 40 б) 30 40

46: Процедуры ввода-вывода (2) Вывод – операция по передаче данных из компьютера на внешнее устройство. Целое1 – ширина поля вывода (число прижимается к правой границе); Целое2 – количество выводимых цифр дробной части числа. WriteLn – после вывода переводит курсор на следующую строку. Пример: Var a:integer3; b:real5. 2;… writeln(a:3,b:6:2); Результат: 3 5 . 2

47: Программа определения корней кв. уравнения program Ex12; $APPTYPE CONSOLE Uses SysUtils; Var A,B,C,D,E,X1,X2:Single; Begin WriteLn(Input A,B,C); ReadLn (A,B,C); WriteLn(A,A:3:1, B,B:3:1, C,C:3:1); D:sqrt(sqr(B)-4AC); E:2A; X1:(-BD)/E; X2:(-B-D)/E; WriteLn(X1,X1:10:6, X2,X2:10:6); ReadLn; End.

Скачать презентацию


MirPpt.ru