Скачать презентацию Язык программирования Паскаль часть 1 Додохова К А Скачать презентацию Язык программирования Паскаль часть 1 Додохова К А

Язык программирования "Паскаль".pptx

  • Количество слайдов: 57

Язык программирования Паскаль (часть 1) Додохова К. А. Язык программирования Паскаль (часть 1) Додохова К. А.

Алгоритм Язык программирования Паскаль Программирование линейных алгоритмов Программирование алгоритмов ветвления Программирование циклических алгоритмов Типы Алгоритм Язык программирования Паскаль Программирование линейных алгоритмов Программирование алгоритмов ветвления Программирование циклических алгоритмов Типы данных. Простые типы данных.

Алгоритм Алгоритм

АЛГОРИТМ – это описание последовательности действий (план), строгое исполнение которых приводит к решению поставленной АЛГОРИТМ – это описание последовательности действий (план), строгое исполнение которых приводит к решению поставленной задачи за конечное число шагов. АЛГОРИТМ – это конечная последовательность команд исполнителю. ! Каждый алгоритм предназначен для определенного исполнителя. Исполнитель – живое существо или автоматическое устройство, которое способно к восприятию и исполнению команд.

Свойства алгоритмов q q q Дискретность; Детерминированность(однозначность); Конечность; Массовость; Результативность. Свойства алгоритмов q q q Дискретность; Детерминированность(однозначность); Конечность; Массовость; Результативность.

Типы алгоритмов q q q Линейные алгоритмы Разветвляющиеся алгоритмы Циклические алгоритмы Типы алгоритмов q q q Линейные алгоритмы Разветвляющиеся алгоритмы Циклические алгоритмы

Линейный алгоритм – описание действий, выполняются однократно в заданном порядке. которые Алгоритм называется линейным, Линейный алгоритм – описание действий, выполняются однократно в заданном порядке. которые Алгоритм называется линейным, если исполнитель выполняет команды последовательно друг за другом (в порядке их записи). Пример. 1. Достать ключ из кармана. 2. Вставить ключ в замочную скважину. 3. Повернуть ключ два раза против часовой стрелки. 4. Вынуть ключ.

Разветвляющийся алгоритм – это алгоритм, в котором в зависимости от условия выполняется либо одна, Разветвляющийся алгоритм – это алгоритм, в котором в зависимости от условия выполняется либо одна, либо другая последовательность действий. Пример: Если завтра на улице будет пасмурная погода, то я возьму с собой зонтик, в противном случае зонтик оставлю дома.

Циклический алгоритм – это описание действий, которые должны повторяться указанное число раз или пока Циклический алгоритм – это описание действий, которые должны повторяться указанное число раз или пока не выполнено заданное условие. Пример: 1. Покрасить доску; 2. Если есть еще доска, переместиться к следующей доске и перейти к действию 1; 3. Если доски закончились завершить работу.

Способы описания алгоритмов q q q Словесный способ Графический способ Алгоритмический язык или язык Способы описания алгоритмов q q q Словесный способ Графический способ Алгоритмический язык или язык программирования.

Графический способ описания алгоритма - это способ представления алгоритма с помощью общепринятых графических фигур, Графический способ описания алгоритма - это способ представления алгоритма с помощью общепринятых графических фигур, называемых блок-схемами, каждая из которых описывает один или несколько шагов алгоритма. Начало Конец Ввод Вывод Действие Условие Счетчик

Графический способ Да Начало Подойти к переходу Дождаться зеленого света Перейти улицу Конец Берем Графический способ Да Начало Подойти к переходу Дождаться зеленого света Перейти улицу Конец Берем зонт Идет дождь? Нет Не берем зонт

Язык программирования Паскаль Язык программирования Паскаль

История создания языка Создан в 1971 году; Никлаус Вирт – швейцарский профессор; Назван в История создания языка Создан в 1971 году; Никлаус Вирт – швейцарский профессор; Назван в честь французского ученого Блеза Паскаля; В 1979 году утвержден в качестве стандартного языка программирования; • С помощью этого языка можно составлять программы для решения различных задач, также можно составлять программы-приложения. • •

Алфавит языка • символы, используемые в идентификаторах; • разделители; • специальные символы; • неиспользуемые Алфавит языка • символы, используемые в идентификаторах; • разделители; • специальные символы; • неиспользуемые символы. Идентификатор - это имя любого объекта языка. Состоит из латинских букв (a. . . z), цифр (0. . . 9) и знака подчеркивания и не должен начинаться с цифры. Разделители используются для отделения друг от друга идентификаторов, чисел и зарезервированных слов. К разделителям относятся: пробел и комментарий. К специальным знакам относятся знаки пунктуации (. () []. . : ; ), знаки операций и зарезервированные слова (служебные слова). Знаки операций могут быть как символьные (+, -, *, / и т. д. ), так и буквенными (mod, div, not). Неиспользуемые символы - это коды ASCII. К ним относятся все русские буквы, а также символы %, &, ! и т. п

Структура программы на языке паскаль program <имя_программы>; <раздел описаний> begin <Тело программы> end. uses Структура программы на языке паскаль program <имя_программы>; <раздел описаний> begin <Тело программы> end. uses <Подключение модулей> Const <Раздел описания констант> Label <Раздел описания меток> Type <Раздел описания типов> Var <раздел описания переменных>

Программирование линейных алгоритмов Программирование линейных алгоритмов

Базовые операторы Оператор вывода Оператор ввода Оператор присваивания Базовые операторы Оператор вывода Оператор ввода Оператор присваивания

Оператор вывода Write( ) Writeln( ) Write – от англ «пиши» Предназначен для вывода Оператор вывода Write( ) Writeln( ) Write – от англ «пиши» Предназначен для вывода на экран текста или результата вычислений

Оператор вывода команда Результат на экране Write(‘текст‘) текст 3 Write(‘X=‘, X) Х=3 Write(X) X=3 Оператор вывода команда Результат на экране Write(‘текст‘) текст 3 Write(‘X=‘, X) Х=3 Write(X) X=3 Write(‘текст1’); Write(‘текст2’); Write(‘текст1’, ‘ ‘); Write(‘текст2’); Или Write(‘текст1’); Write(‘ ‘, ‘текст2’); текст1 текст2 текст1 текст2

Оператор вывода Writeln( ) Делает переход на следующую строку команда Результат на экране Write(‘текст1’); Оператор вывода Writeln( ) Делает переход на следующую строку команда Результат на экране Write(‘текст1’); Writeln(‘текст2’); Текст1 Текст2 Write(‘текст1’); Writeln; Write(‘текст2’); Текст1 текст2

Оператор ввода Read( ) Readln( ) Read- от англ «читай» Предназначен для ввода данных Оператор ввода Read( ) Readln( ) Read- от англ «читай» Предназначен для ввода данных с клавиатуры

Оператор ввода Read(a, b, c) Readln(a, b, c) Вводит значения для переменных a, b, Оператор ввода Read(a, b, c) Readln(a, b, c) Вводит значения для переменных a, b, c в одну строку. Вводит значения для переменных a, b, c «столбиком»

Оператор присваивания Переменная : = число/выражение Правильная запись Не правильная запись A: =2; A+2: Оператор присваивания Переменная : = число/выражение Правильная запись Не правильная запись A: =2; A+2: =2 A: =B+1 2: =A+2

Оператор присваивания Команды Результат A: =2; B: =a+2; A=? B=? b: =2; A: =B; Оператор присваивания Команды Результат A: =2; B: =a+2; A=? B=? b: =2; A: =B; C: =a+B A=? B=? C=? A: =1; B: =a; A: =B A=? B=?

Программирование линейных алгоритмов Вывести на экран приветствие: Program privet; Привет, это я! Begin Write(‘Привет, Программирование линейных алгоритмов Вывести на экран приветствие: Program privet; Привет, это я! Begin Write(‘Привет, это я!’); End. Вывести на экран приветствие: Привет, это я! Program privet; Begin Write(‘Привет, ’); Writeln(‘это я!’) End.

Программирование линейных алгоритмов Найти периметр прямоугольника P=(a+b)*2 а в Начало Ввод сторон прямоугольника a Программирование линейных алгоритмов Найти периметр прямоугольника P=(a+b)*2 а в Начало Ввод сторон прямоугольника a и b P=(a+b)*2 Вывод рез-та P Конец Program perimetr; Var a, b, P: integer; Begin Write(‘введите стороны прямоугольника’); Read(a, b); P: =(a+b)*2; Writeln(‘P=’, P); End.

Программирование алгоритмов ветвления Программирование алгоритмов ветвления

Операторы ветвления: Условный оператор Оператор выбора Операторы ветвления: Условный оператор Оператор выбора

Условный оператор Полная форма: If <логическое выражение> then <действие 1> else <действие 2> ДА Условный оператор Полная форма: If <логическое выражение> then <действие 1> else <действие 2> ДА Условие Действие 1 НЕТ Действие 2 Не полная форма: If <логическое выражение> then <действие > ДА Действие Условие НЕТ

Условный оператор Задача. Написать программу для нахождения максимального значения из двух целых чисел начало Условный оператор Задача. Написать программу для нахождения максимального значения из двух целых чисел начало Ввод чисел а и b да a>b нет Max=b Max=a Вывод Max конец Program sravnenie; Var A, B, Max: integer; Begin Write(‘введите два числа’); Read (A, B); If A>B then Max: =A else Max: =B; Writeln(Max); End.

Условный оператор Задача. Написать программу, которая выводит на экран число, если оно больше 3. Условный оператор Задача. Написать программу, которая выводит на экран число, если оно больше 3. начало Ввод числа а да a>3 Вывод а конец нет Program chislo; Var A: integer; Begin Write(‘введите число’); Read (A); If A>3 then writeln(A); End.

Условный оператор Задача. Составить программу, которая определяет количество корней квадратного уравнения по дискриминанту. Решение: Условный оператор Задача. Составить программу, которая определяет количество корней квадратного уравнения по дискриминанту. Решение: начало Ввод коэффициентов Вычисление дискриминанта D: =B*B+4*A*C нет да D>=0 Вывод: «нет вещх корней» нет Вывод: «один вещ. корень» конец D>0 да Вывод: «два вещ. корня» Program Diskr; Var A, B, C, D: real; Begin Write(‘введите коэффициенты A, B, C: ’); Readln(A, B, C); D: =Sqr(B)-4*A*C; If D>=0 then If D>0 then writeln(‘два вещ корня’) else writeln(‘один вещ корень’) else writeln(‘нет вещ корней’); Readln; End.

Оператор выбора Case K of A 1: <оператор1>; A 2: <оператор2>; … An: <оператор Оператор выбора Case K of A 1: <оператор1>; A 2: <оператор2>; … An: <оператор n> Else <оператор n+1> End; Где K – выражение-селектор (имеет только порядковый целый, логический, символьный тип); A 1, …, An – константы (того же типа, что и селектор);

Оператор выбора Задача: Составить программу, которая преобразует введенные с клавиатуры целые числа из диапазона Оператор выбора Задача: Составить программу, которая преобразует введенные с клавиатуры целые числа из диапазона (1. . 4) в их словесное представление. Program chislo; Var N: integer; Begin Write(‘введите число: ’); Readln(N); Case N of 1: writeln(‘один’); 2: writeln(‘два’); 3: writeln(‘три’); 4: writeln(‘четыре’) Else writeln(‘введено другое число’) End; End.

Программирование циклических алгоритмов Программирование циклических алгоритмов

Операторы цикла Цикл с предусловием (цикл – пока) Цикл с постусловием (цикл – до) Операторы цикла Цикл с предусловием (цикл – пока) Цикл с постусловием (цикл – до) Цикл с параметром

Цикл с предусловием (цикл – пока) Форма записи: While <логическое выражение> do <операторы –тело Цикл с предусловием (цикл – пока) Форма записи: While <логическое выражение> do <операторы –тело цикла> Блок-схема: условие да Тело цикла нет

Цикл с предусловием (цикл – пока) Задача. Вычислить сумму натурального ряда чисел от 1 Цикл с предусловием (цикл – пока) Задача. Вычислить сумму натурального ряда чисел от 1 до N. начало Ввод N A<=N да s: =s+a; a: =a+1 Вывод s конец нет Program primer; Var a, s, n: integer; Begin Write(‘введите N’); Readln(N); S: =0; While a<=N do begin s: =s+a; a: =a+1; End; Writeln(‘результат суммирования равен’, s); Readln; end.

Цикл с предусловием (цикл – пока) Определить, что будет в переменной zz после выполнения Цикл с предусловием (цикл – пока) Определить, что будет в переменной zz после выполнения следующей программы. Program AA; var zz, n, k : integer; begin zz: =0; n: =2; k: =1; while n>k do begin zz: =zz+1; n: =n+5; k: =k*2; end; Writeln(zz); end.

Цикл с постусловием (цикл – до) Форма записи: repeat <тело цикла> until <логическое условие> Цикл с постусловием (цикл – до) Форма записи: repeat <тело цикла> until <логическое условие> Блок-схема: Тело цикла условие да нет

Цикл с постусловием (цикл – до) Задача. Вычислить сумму натурального ряда чисел от 1 Цикл с постусловием (цикл – до) Задача. Вычислить сумму натурального ряда чисел от 1 до N. начало Ввод N s: =s+a; a: =a+1 A>N да Вывод s конец Program primer; Var a, s, n: integer; Begin Write(‘введите N’); Readln(N); s: =0; repeat s: =s+a; a: =a+1; нет until a>n; Writeln(‘результат суммирования равен’, s); Readln; end.

Цикл с постусловием (цикл – до) Определить, что будет в переменной xx после выполнения Цикл с постусловием (цикл – до) Определить, что будет в переменной xx после выполнения следующей программы. Program AA; var xx, k : integer; begin xx: =0; k: =2; repeat xx: =xx+1; k: =k+1; until k=7; Writeln(xx); end.

Цикл c параметром Формы записи: 1) for i: =n to m do <операторы – Цикл c параметром Формы записи: 1) for i: =n to m do <операторы – тело цикла> 2) for i: =m downto n do <операторы – тело цикла> Блок-схема Счетчик: =N 1…N 2 Тело цикла

Цикл c параметром Задача. Написать программу, которая выводит на экран кубы чисел от 1 Цикл c параметром Задача. Написать программу, которая выводит на экран кубы чисел от 1 до 10 начало да Счетчик: =1. . 10 нет С=a*a*a конец Program kub; Var a, c: integer; Begin For a: =1 to 10 do begin c: =a*a*a; Writeln(‘kub chisla=’, c); end; end.

Цикл c параметром Задача. Написать программу, которая выводит на экран квадраты чисел от 10 Цикл c параметром Задача. Написать программу, которая выводит на экран квадраты чисел от 10 до 1. начало да Program primer_4; Var n, c: integer; Счетчик: =N… 1 Вывод N*N; конец нет Begin For n: =10 downto 1 do writeln (n*n); end.

Цикл c параметром Определить, какие числа будет выдавать на экран дисплея следующая программа. program Цикл c параметром Определить, какие числа будет выдавать на экран дисплея следующая программа. program Pr; var k : integer; begin for k: =1 to 2 do writeln(k); end.

Цикл c параметром Определить, что будет в переменной xx после выполнения следующей программы. Program Цикл c параметром Определить, что будет в переменной xx после выполнения следующей программы. Program AA; var xx, i : integer; begin xx: =0; for i: =3 to 5 do xx: =xx+1; Writeln(xx); end.

Типы данных Типы данных

Типы данных Простые типы q Целые; q Вещественные; Составные типы q Символьные; q Логические. Типы данных Простые типы q Целые; q Вещественные; Составные типы q Символьные; q Логические. q q q массивы; записи; файлы;

Целые типы данных Тип Диапазон значений Объем памяти Byte 0 … 255 1 байт, Целые типы данных Тип Диапазон значений Объем памяти Byte 0 … 255 1 байт, без знака Short. Int – 128 … 127 1 байт, со знаком Word 0 … 65535 2 байта, без знака Integer – 32768 … 32767 2 байта, со знаком Long. Int – 2147483648 … 2147483647 4 байта, со знаком

Вещественные типы данных Single Действительные короткие 4 байта Real Действительные (основной тип) Double Действительные Вещественные типы данных Single Действительные короткие 4 байта Real Действительные (основной тип) Double Действительные длинные 8 байтов Extended Действительные очень длинные 6 байтов 12 байтов

Символьные типы данных. Char 1 символ 1 байт String Строка символов от 1 до Символьные типы данных. Char 1 символ 1 байт String Строка символов от 1 до 255 байтов

Логические типы данных. Boolean Значение True или False 1 байт Логические типы данных. Boolean Значение True или False 1 байт

Простые типы данных. Формат вывода Для того, чтобы данные не «слипались» при выводе их Простые типы данных. Формат вывода Для того, чтобы данные не «слипались» при выводе их на экран и для десятичного представления действительных чисел, в командах Write и Writeln используется формат вывода. Для целых чисел и символьных данных: Переменная : общее число знаков х: 5 Для действительных чисел: Переменная : общее число знаков : число знаков после точки х: 6: 2

Задача. Составить программу, которая запрашивает пользователя имя и возраст. Затем выводит на их на Задача. Составить программу, которая запрашивает пользователя имя и возраст. Затем выводит на их на экран. Program Dialog; Var a: integer; b: string; Begin Writeln(‘Привет! Как тебя зовут? '); Readln (b); Writeln (‘Рад с тобой познакомиться ', b); Writeln(‘Сколько тебе лет? '); Readln (a); Writeln (b, ' Тебе ', a, ‘ лет '); Readln; end. у

Использованная литература: 1. Паскаль для школьников. –СПб. Жпитер, 2007. – 256 с. 2. Информатика. Использованная литература: 1. Паскаль для школьников. –СПб. Жпитер, 2007. – 256 с. 2. Информатика. Базовый курс. 7 -9 классы/ И. Г. Семакин, Л. А. Залогова, С. В. Русаков, Л. В. Шестакова. – М. Бином. Лаборатория знаний, 2003 г. – 390 с. 3. Изучаем TURBO PASCAL. – СПб. Жпитер, 2001. – 320 с. 4. Л. Л. Босова, УМК по информатике для 5 -7 классов Москва, 2007 Алгоритмы и исполнители. Типы алгоритмов. 5. Данные. Типы данных. Диалоговые программы. М. Е. Макарова. (http: //uchinfo. com. ua)