Презентация на тему Начало работы с языком программирования Турбо Паскаль


"Мы редко до конца понимаем, чего мы в действительности хотим."Франсуа де Ларошфуко  Начало работы с языком программирования Турбо Паскаль Язык программирования Паскаль Структура программного обеспечения ПК Содержание: Этапы решения задач с помощью ЭВМ;Формы записи алгоритмаПонятия алгоритмического языка и языков программированияВвод-вывод информацииЛинейный алгоритм, практическая работа, целые числаЛинейный алгоритм, вещественные числа Этапы решения задач с помощью ЭВМ Постановка задачи и её содержательный анализ;Что дано?Что необходимо определить?Какие данные допустимы?Какие результаты и в каком виде должны быть получены?Формализация задачи, выбор метода решений:описание задачи, замена её математической моделью;выбор метода решения задачиСоставление алгоритма на основе выбранного методаСоставление программыТестирование и отладка программыВыполнение программы и анализ результатов. Математическая модель– замена объекта оригинала при помощи математических зависимостей (формул). Моделирование – это особая форма эксперимента, в которой исследуется не сам объект, а некоторая его замена. Термин «алгоритм» ведёт начало от перевода на европейские языки имени арабского математика IV века аль – Хорезми, которым были описаны правила выполнения арифметических действий в десятичной системе счисления. Определение алгоритма Алгоритм - это точное и понятное предписание (указание) исполнителю совершить определенную последовательность действий, направленных на достижение указанной цели или решение поставленной задачи.Наличие алгоритма дает возможность решать задачу формально, механически исполняя команды алгоритма в указанной последовательности. "Алгоритм должен быть определен настолько четко, чтобы его указаниям мог следовать даже компьютер."Дональд Э. Кнут Пример: Составить алгоритм оценки знаний по результатам теста из 10 вопросов, согласно следующему правилу:если правильные ответы на 10 вопросов, то выставляется оценка 5, при 9 и 8 правильных ответах – оценка 4, при правильных ответах не более чем на 5 вопросов - оценка 2, в остальных случаях – оценка 3.Формулировка задачи в математическом виде: 5, если ot =10Ocenka = 4, если 8 <= ot <= 9 3, если 6 <= ot <= 7 2, если ot <= 5где ocenka - оценка, ot - правильные ответы Исполнитель Задача составления алгоритма не имеет смысла, если неизвестны или не учитываются возможности его исполнителя.Исполнитель – это человек или механическое устройство со строго определённым набором возможных действий (операций)Исполнители: человек, робот, ЭВМ. Команда - указание выполнить конкретное действие.Система команд - совокупность всех команд, которые могут быть выполнены некоторым исполнителем. Свойства алгоритмов Дискретность. (Алгоритм должен состоять из отдельных шагов).Понятность. (Указания должны быть понятны исполнителю).Однозначность. (Единственность толкования правил выполнения действий и порядка их выполнения).Массовость. (С помощью алгоритма можно решать не одну конкретную задачу, а множество однотипных задач и делать это неоднократно).Результативность. (Выполнение алгоритма должно приводить к конкретному результату - решению задачи - за конечное число шагов).Конечность. (Завершение работы алгоритма в целом за конечное число шагов). Баба била-била не разбила. Мышка хвостиком махнула, яйцо и разбилось Результативность Каша уже заполнила все улицы, а горшочек всё варил кашу. Мама сварила кашу в горшочке Конечность Инструкция на японском языке Инструкция по-русски Понятность Принц мог жениться только на настоящей принцессе Каждой дочери отец привёз по дорогому подарку Массовость Поди туда, не знаю куда, принеси то, не знаю что. На дубе ларец, а в ларце утка, а в утке яйцо, в яйце игла, в игле смерть Кощея. Однозначность репка Дискретность Пример невыполнения свойства Пример выполнения свойства Свойства Вопросы для закрепления: 1. Что такое отказ алгоритма?2. Назовите книги – сборники алгоритмов. Кто является для них исполнителем и какие наиболее типичные команды входят в его систему команд?3. С какими алгоритмами вы познакомились, занимаясь русским языком; иностранным языком; математикой; химией; физкультурой.4. Имеются два кувшина емкостью 3 л и 5 л. Исполнитель ДЖИНН может набирать воду из реки в каждый кувшин, выливать из него воду и определять, налита ли вода в кувшине доверху. Составьте алгоритм, выполнив который ДЖИНН наберет из реки 7 л. Домашняя работа: Реферат на тему: история создания развития языка Тубо Паскаль. (Старинная задача) Некий исполнитель должен перевезти в лодке через реку волка, козу и капусту. Его допустимые действия таковы, что за один раз он может перевезти только что-нибудь одно: волка, козу или капусту. Ничем, кроме погрузочно-разгрузочных работ и перевозок, этот Исполнитель не занимается. Составьте для данного Исполнителя алгоритм переправы, позволяющий избежать жертв. Способы описания алгоритмов Словесно-пошаговый (на естественном языке). Графический (на языке блок-схем). Алгоритмический язык. Словесный способ Словесный способ записи алгоритмов представляет собой описание последовательных этапов обработки данных. Алгоритм задается в произвольном изложении на естественном языке Словесный способ не имеет широкого распространения по следующим причинам: такие описания строго не формализуемы; страдают многословностью записей; допускают неоднозначность толкования отдельных предписаний. Например. Записать алгоритм нахождения наибольшего общего делителя (НОД) двух натуральных чисел. Алгоритм может быть следующим: 1.     задать два числа; 2.     если числа равны, то взять любое из них в качестве ответа и остановиться, в противном случае продолжить выполнение алгоритма; 3.     определить большее из чисел; 4.     заменить большее из чисел разностью большего и меньшего из чисел; 5.     повторить алгоритм с шага 2. Описанный алгоритм применим к любым натуральным числам и должен приводить к решению поставленной задачи. Убедитесь в этом самостоятельно, определив с помощью этого алгоритма наибольший общий делитель чисел 125 и 75. Графический (в виде блок-схемы) Схема - наглядное графическое изображение алгоритма, когда отдельные его действия (этапы) изображаются при помощи различных геометрических фигур (блоков), а связи между этапами указываются при помощи стрелок, соединяющих эти фигуры. Вычислительное действие Проверка условий Ввод-вывод в общем виде Начало, конец алгоритма начало конец Ввод Вывод Условие вычисления Основные блоки Блок-схема Начало Конец Ввод a, b, c, α Вывод S S:=1/2*a*b*sin(ugol*3.14/180) Определить площадь треугольника. Размеры сторон a, b и c, угол  задать с клавиатуры Словесный способ1.     Ввести размеры сторон, угол между двумя сторонами.По формуле S:=1/2*a*b*sin(ugol*3.14/180);2.      вычислить площадь треугольника.3.     Вывести результат вычисления. Практическая работа: составить словесный и графический алгоритм Задача 1. Пешеход шел по пересеченной местности. Его скорость движения по равнине V1 км/ч. в гору - V2 км/ч и под гору - V3 км/ч. Время движения соответственно T1, T2, T3. Какой путь прошел пешеход? Задача 2. Даны две переменные A и B. Требуется обменять их значения, т.е. переменная A должна получить значение B, а B - значение A. Понятия языка Имена (идентификаторы) — употребляются для обозначения объектов пpогpаммы.Все идентификаторы состоят из букв латинского алфавита , цифр, начинаются с буквы или знака подчеркиванияВсе идентификаторы могут иметь различную длину но не более 63 символов Данные Данные — величины, обрабатываемые пpогpаммой. Основные виды данных: константы, переменные.Константы — это данные, которые зафиксированы в тексте программы и не изменяются в процессе ее выполнения. Пpимеpы констант: числовые 7.5, 12; символьные "А", "+"; строковые "abcde", "информатика", "" (пустая строка). Переменные Переменные обозначаются именами и могут изменять свои значения в ходе выполнения пpогpаммы. Переменные бывают целые, вещественные, логические, символьные и строковые. Выражения Выражения — предназначаются для выполнения необходимых вычислений, состоят из констант, переменных, указателей функций (напpимеp, sin(x)), объединенных знаками операций. Выражения записываются в виде линейных последовательностей символов (без подстрочных и надстрочных символов, "многоэтажных" дробей и т.д.), что позволяет вводить их в компьютер, используя соответствующие клавиши клавиатуры.Арифметические выражения служат для определения одного числового значения. Например: (1+sin(x))/2. Значение этого выражения при x=0 равно 0.5, а при x=p/2 - единице. Операторы (команды). Оператор — это наиболее крупное и содержательное понятие языка: каждый оператор представляет собой законченную фразу языка и определяет некоторый вполне законченный этап обработки данных. Операторы подразделяются на исполняемые и неисполняемые. Неисполняемые опеpатоpы предназначены для описания данных и стpуктуpы пpогpаммы, а исполняемые — для выполнения различных действий. Величина Величина — это элемент данных с точки зрения их обработки. Величины разделяются на входные, выходные и промежуточные. Исходные (входные) — это данные, известные перед выполнением задачи, из условия. Выходные данные — результат решения задачи. Переменные, которые не являются ни аргументом, ни результатом алгоритма, а используются только для обозначения вычисляемого промежуточного значения, называются промежуточными. Вместе с тем, архитектура ЭВМ, используемое программное обеспечение требуют указать имена и типы данных — целый, вещественный, логический и символьный. Порядок выолнения программы в Паскале: Набрать программу в окне редактирования. Откомпилировать программу - CTRL+F9 – проверить ошибки;просмотреть результат (Alt+F5)сохранить программу – F10- File –Save as.. ( в появившемся окне набрать имя файла , которое содержит не более 8 символов) Выход из программы – ALT+ Х Работа в среде Турбо Паскаля Команды управления движением курсора-> - перемещение курсора на символ вправо;<- - перемещение курсора на символ влево;^ - перемещение курсора на строку вверх;v - перемещение курсора на строку вниз;Home - перемещение курсора в начало текущей строки;End - перемещение курсора в конец текущей строки;Page Up - перемещение курсора на страницу вверх;Page Down - перемещение курсора на страницу вниз;Примечание. Страница - это число строк текста, составляющих один экран (21 строка).Ctrl + Home - перемещение курсора в левый верхний угол;Ctrl + End - перемещение курсора в левый нижний угол; Команды вставки и удаления текста Insert - включение и выключение режима вставки;Примечание. Если режим вставки включен, то на экране курсор имеет вид мигающей черты. В режиме вставки набираемый символ вводится в позицию, в которой стоит курсор, а все символы (начиная с символа, стоящего в позиции курсора ранее),расположенные правее, сдвигаются вправо. Если режим вставки выключен, то набираемый символ заменит тот символ, который находится в позиции курсора, таким образом можно старый текст заменить на новый.Delete - удаление символа, стоящего в позиции курсора;Backspace - удаление символа, стоящего перед курсором;Ctrl + N - вставка пустой строки над строкой, где находится курсор;Ctrl + Y - удаление строки, где находится курсор. Структура программы на Паскале program ... ; { Заголовок программы } uses ... ; { Включаемые модули } const ... ; { Константы } type ... ; { Типы } var ... ; { Переменные } procedure ... ; { Процедуры } function ... ; { Функции } begin оператор; { Операторы } ... end. Вопросы для повторения: 1. Что такое величина?2. Какие величины называют аргументами? результатами? промежуточными величинами? Приведите примеры.3. Каковы атрибуты величины?4. Какие величины называют постоянными? переменными? Приведите примеры.5. Какие величины называют входными, выходными и промежуточными?6. Какова общая структура программы в языке Pascal? ОСНОВНЫЕ ТИПЫ ДАННЫХ ЯЗЫКА ПАСКАЛЬ: Integer-целый тип - целое число от -32768 до +32767,занимает 2 байта памятиReal- вещественный тип - числа от 1Е-37 до 15.9Е37Boolean- логический тип - значение высказывания true или falsechar- символьный тип (один символ)string- строковый тип. Тип переменной определяет: диапазон допустимых значений, принимаемых величинами этого типа; набор операций, допустимых над данной величиной; объем памяти, отводимой под эту переменную. Процедура вывода на экран В Pascal эта команда выглядит следующим образомWrite (список констант и/или переменных, разделенных запятой)Например Write ('Выходное значение: ', C).write(a); - стандартная процедура вывода значения переменной «а» или результатавычисления арифметического выражения на экранwriteln(а);- вывод с последующим переводом строкиwriteln;- стандартная процедура перевода курсора на новую строку Например: на экране, если А:=2; Write(a); 2Writeln(a);2 и переход на следующую строкуWrite(‘a=’,a);a=2Write(‘a=’,a,’ метров’);a=2 метровWrite(‘Y=’, 4+6);Y=10Write(‘S=’,a,’*’,3,’=’,a*3);S=2*3=6, если a=2Write(‘z=’,z:8:4);z=135.6432, если z=1,356432223e02Writeln(‘погода’);погодаWriteln(‘хорошая’);хорошаяWrite(‘погода ’);Writeln(‘хорошая’);погода хорошая Ввод информации Процедура, которая в режиме диалога с клавиатуры присваивает значение для переменной величины, называется процедурой ввода.                        Read(список переменных);Процедура ReadLn похожа на Read. Она осуществляет переход к следующей строке.Например:     Read(A, B, C);    ReadLn(A, B, C);                                      Порядок выполнения процедуры ввода:      Как только в программе встречается вызов процедуры Read, ЭВМ приостанавливает выполнение программы и ждет, пока пользователь введет с клавиатуры соответствующие значения, которые по очереди будут присваиваться переменным, перечисленным в списке ввода. Значения вводимых данных одновременно отображаются на экране дисплея. После нажатия клавиши enter, все переменные примут свои значения из входного набора данных, определенного пользователем, выполнение программы продолжается с оператора, следующего за Read. В списке ввода значения разделяются между собой пробелом. Присваивание значений из входного потока выполняется слева направо в соответствии с порядком следования переменных в процедуре Оператор присваивания Предназначен для вычисления нового значения некоторой переменной. В общем виде оператор присваивания можно записать так:переменная := выражение; Оператор выполняется следующим образом. Вычисляется значение выражения в правой части присваивания. После этого переменная, указанная в левой части, получает вычисленное значение. При этом тип выражения должен совпадать с типом переменной. –2147483648.. 2147483647 4 longint –128..127 1 shortint 0..65535 2 word 0..255 1 byte +, –, *, Div, Mod, >=, <=, =, <>, <, > –32768..32767 2 integer Операции Диапазон (множество) значений Длина, байт Идентификатор Целый тип данных Операции целочисленного деления и нахождения остатка от деления. В Pascal есть операции целочисленного деления и нахождения остатка от деления. При выполнении целочисленного деления (операция DIV) остаток от деления отбрасывается.Например, 15 div 4 = 3; 18 div 5 = 3; 123 div 10 = 12, 7 div 10 = 0.С помощью операции MOD можно найти остаток от деления одного целого числа на другое.Например, 15 mod 3 = 0; 18 mod 5 = 3; 123 mod 10 = 3, 7 mod 10 = 7. Практическая работа: Чему равны значения переменных a и b после выполнения приведенной последовательности действий?a:=15 DIV(16 MOD 7); Ответ: 7b:=34 MOD a*5-29 MOD 5*2; Ответ: -10a:=4*5DIV 3 MOD 2; Ответ: 0b:=5 DIV (3 MOD 2); Ответ: 5Составить графическую схему и написать программу на языке программирования, проверить результат Начало А:=15 div (16 mod 7) A Конец Графическая схема: Program ur1_z1;Var a:integer;BeginА:=15 div (16 mod 7);Writeln(‘Результат равен’, a);Readln;end. Программа: Вспомогательные клавиши: CTRL+F9 Пример выполнения задания: начало Команда 1 Команда 2 Команда N Конец Линейный алгоритм ЛИНЕЙНОЙ называют программу, реализующую конструкцию следования, когда команды расположены одна за другой и последовательно выполняются. Program ur2_1;var a, one,dec,hum,rez:integer;beginwriteln(‘Введите число’);readln(a);one:=a mod 10;writeln(‘Цифра единиц числа ’,one);dec:=(a div 10) mod 10;writeln(‘Цифра десятков числа ’,dec);hum:=a div 100;writeln(‘Цифра сотен числа ’,hum);rez:=hum*100+dec*10+one;writeln(‘а это тоже число’,rez);readln;end. Дано целое трёхзначное число, вывести на экран его цифры. Практическая работа: Дано трёхзначное число. Определить:Сумму и произведение его цифр (2 балла);Число, образованное перестановкой цифр десятков и единиц (2 балла);Число, образованное перестановкой цифр сотен и десятков (2 балла);Четырёхзначное число, полученное приписыванием цифры единиц в качестве цифры тысяч ( например, из числа 137 получить число 7137) (3 балла);Дано четырёхзначное число, вывести его цифры (2 балла); +, –, /, * 3,4*10–4932 — 1,1*104932 10 extended +, –, /, * 5*10–324 — 1,7*10308 8 double +, –, /, * 1,5*10–45 — 3,481038 4 single +, –, /, * 2,9*10–39 — 1,7*1038 6 real Вещественные типы данных Число П Pi Натуральный логарифм x ln(x) ln x Арктангенс числа x arctan(x) arctg x Дробная часть x frac(x) {x} Квадратный корень из x sqrt(x) Квадрат числа x sqr(x) x2 Модуль числа x abs(x) |x| Целая часть числа x trunc(x) [x] Значение e в степени x exp(x) ex Синус x радиан sin(x) sin x Косинус x радиан cos(x) cos x Назначение Запись на Pascal Математическая запись Встроенные математические функции Формат представления вещественного числа Константа действительного типа может быть представлена в двух видах: числом с фиксированной точкой и плавающей точкой.Число с фиксированной точкой изображается десятичным числом с дробной частью ( дробная часть может быть нулевой). Дробная часть отделяется от целой с помощью точки, например: 127.2, 25.0, -16.003, 200.59, 0.54.Число с плавающей точкой, имеет вид mEp, где m – мантисса, а p– порядок числа (экспонента – степень 10). В качестве мантиссы могут быть целые и действительные числа с фиксированной точкой, а в качестве экспоненты только целые числа. Как мантисса так и экспонента могут содержать знаки «+» и «–«. 20Е-3 20*10-3 -10.8Е12 -10,8*1012 0.62Е+4 0,62*104 9Е-6 0,000009 Запись с плавающей точкой Математическая запись Примеры записи вещественных чисел с плавающей точкой: Форматированный вывод Если при выводе данных вещественного типа не указан формат, то число выводится в 17 позициях, в формате с плавающей точкой. Изменить стандартную форму вывода можно, используя формат: Write (x:m:n), где x- выводимое число вещественного типа, m – общее количество позиций вывода числа, включая знак числа, целую часть, точку и дробную часть, n – количество позиций для вывода дробной части. В качестве n, m, целые константы, переменные, выражения. Пример форматированного вывода Использование формата Write(r:8:4) для вывода значения r равного -35.245367, приведёт к выводу значения -35.2454, а использование формата Write(r:4:2) к выводу этого же числа приведёт к выводу значения -35.24 sin(A)/cos(A) sqr(sin(A*A)) (2+sqrt(abs(A-B)))/(B*C)-A A/B/C = A/(B*C) A+B/C НА ПАСКАЛЕ: В МАТЕМАТИКЕ: Запись математических выражений: Вычислить значение выражения: при a=1; b=2; c=3; d=4; e=5; f=1; h=2; x=1,666 при a=1; b=2; x=5; y=2; c=3 при a=1; b=2; x=5; y=2 d=2,333 при х=0.5; у=2 ; а=4.0739 при x=0.5; y=0.3; a=1.8436 при x=0.5; y=0.3 a=2.097 Задания для самостоятельной работы