ݺߣ

ݺߣShare a Scribd company logo
ВВЕДЕНИЕ В ОСНОВЫ
ПРОГРАММИРОВАНИЯ
«Я только с теми, кто
стеная, ищет истину»
Блез Паскаль (1623-1662)
PASCAL
1
Темы занятия
Знакомство со средой Pascal.
Алфавит языка.
Типы данных.
Стандартные функции для целых и вещественных типов
данных.
Структура программы.
Подключение дополнительных модулей
Основные операторы.
Программы для вычисления арифметических выражений.
Часто используемые эффективные алгоритмы.
Операции целочисленного деления.
Целочисленная арифметика в линейных алгоритмах.
Развитие семейств языков 3
VISUAL BASIC С++
Object Pascal
Среда Delphi
BASIC
QBASIC
PASCAL С
VISUAL
PASCAL
Среда Borland Pascal
Среда Free Pascal
3
1. Отвечает требованиям структурного
программирования
Позволяет строить программу из отдельных блоков.
• применяются три управляющие конструкции: следование,
выбор, повторение;
• структура программы отражает структуру данных;
• на первом этапе проводится проектирование программы, а
на втором её написание.
2. Строго типизированный язык
Содержит полный набор структурных типов данных, а
также развитые средства построения из них
новых типов данных.
Основные достоинства языка Pascal 4
4
Паскаль популярен среди программистов по
следующим причинам:
• Прост для обучения.
• Отражает фундаментальные идеи алгоритмов
в легко воспринимаемой форме.
• Позволяет четко реализовать идеи
структурного программирования и
структурной организации данных.
• Использование простых и гибких структур
управления: ветвлений, циклов.
• Надежность разрабатываемых программ.
5
Среда Free Pascal
меню возможных режимов
работы
справка о назначении основных
функциональных клавиш
имя файла
закрыть
текущее
окно
номер
текущего
окна
6
Окно просмотра результатов
Для выхода из него надо нажать клавишу Esc.
7
Комбинации с клавишами
функциональные клавиши F1 – F12
и ALT, CTRL и SHIFT.
Alt+ Enter – большой (маленький экран)
Ctrl+F9 – запуск программы на выполнение
Alt + 0 – список открытых файлов
Alt + <№ окна> – быстрый доступ к открытым файлам
F8 – для выполнения программы по строкам
F9 – компиляция + проверка
Ctrl+F9 – запуск
8
Алфавит языка Паскаль.
1. строчные и прописные латинские буквы,
2. арабские цифры,
3. _ подчеркивание,
4. знаки операций: символьные + - * / = <>
< > <= >= := @
буквенные mod, div, not
5. знаки пунктуации: . , ' ( ) [ ] (. .)
{ } (* *) .. : ;
6. спецификаторы: ^ # $
7. служебные слова.
ПАСКАЛЬ включает следующий набор основных символов:
Идентификатор - это имя любого объекта
языка, не должен начинаться с цифры.
К разделителям относятся, например, пробел и
комментарий.
Для пояснений можно делать комментарии,
которые не влияют на ход программы.
Комментарии заключаются в
фигурные скобки { комментарий },
символы (* комментарий *).
Неиспользуемые символы – те, которые можно
использовать только в комментариях. К ним
относятся все русские буквы, а также символы %, &, !.
В ЯП высокого уровня программа - это
перечень действий, команд.
Команда алгоритма, записанная на ЯП,
называется оператором.
Константа - это постоянная величина,
значение которой не изменяется в процессе
работы программы.
Переменная – величина, которая в процессе
выполнения программы может менять свое
значение по необходимости.
11
Объявление
идентификаторов
Однозначность
операций над
данными
Операции с
данными
ОПРЕДЕЛЕНИЕ ТИПА
ДАННЫХ
ИДЕНТИФИКАЦИЯ
ПЕРЕМЕННЫХ
ЗАДАНИЕ
ЗНАЧЕНИЙ
Работа с данными 12
12
Синтаксис:
Var <имя переменной>:<тип переменной>;
Тип данных — это характеристика идентификатора,
определяющая множество значений, которые он может
принимать (целые или дробные числа, строки и т. д.).
Процедура ввода информации с клавиатуры : Read или
ReadLn. Оператор присваивания :=
Var x: byte;
readln(a,b,c);
Описание некоторых типов
переменных
• Символьные:
• Var x: char; для переменных, содержащих 1 символ
• Строковые:
• Var x:string; для переменных, содержащих текст
• Целые числа:
• Var x: integer; для переменных, содержащих целые числа
• Вещественные числа:
• Var x: real; для переменных, содержащих вещественные
числа
Простые типы: одна переменная — одно значение.
Структурированные типы: одна переменная — несколько значений.
Типы данных 14
Простые Структурированные
Логические
(boolean)
Символьные
(char)
Перечисляемые
Интервальные
Строковый (string)
Регулярный (array)
Комбинированный (record)
Множественный (set)
byte,
shortint,
integer,
word,
longint
real,
single,
double,
extended,
comp
Файловый (file)
Целые
Вещественные
14
Арифметические операции:
+, −, *
div — вычисляет целую
часть от частного, дробная
откидывается.
10 div 3=3;
2 div 3=0;
mod — вычисляет остаток,
полученный при делении.
11 mod 5 = 1;
14 mod 5 = 4;
Операции с целыми переменными 15
15
Стандартные функции: Pi, Sqrt, Sin, Cos, Abs, Exp, Ln.
 вычисление дробной части числа Frac(5.67)=0.67
 вычисление целой части числа Int(5.67)=5.0E+00
 округление вещественного числа до ближайшего целого
Round(5.67)=6
 отбрасывание дробной части числа Trunc(5.67)=5
Арифметические операции: Sqr, +, -, *, /
Операции с вещественными переменными 16
16
вещественный → вещественный:
Frac, Int;
вещественный → целый:
Round, Trunc.
Структура программы.
program имя_программы;
uses - подключение модулей
сonst - раздел описания констант
var - раздел описания переменных
begin
Тело программы
end.
ОПЕРАТОРНЫЕ СКОБКИ
Имя программы, имена переменных
• Начинаются с буквы
• Без пробелов
• Могут содержать
• латинские буквы
• Цифры (начиная со второй позиции)
• символ подчеркивания (вместо пробелов)
Модуль расширяет возможности программ путём введения дополнительных
операторов, стандартных процедур и функций.
Пример включения стандартных модулей:
uses crt, dos, graph, printer.
Очистка текстового экрана.
Ожидание нажатия на клавишу.
Подключённый модуль
с именем CRT.
Подключение дополнительных модулей 19
19
Оператор ввода исходных данных.
Происходит с помощью оператора read
и readln:
Вид команды:
read (список переменных);
readln (список переменных);
Разница между операторами лишь в
том, что readln перемещает курсор на
начало новой строки, а read нет.
Вывод результатов
Происходит с помощью оператора
write и writeln:
Вид команды:
write (‘список вывода’);
writeln (‘список вывода’);
Разница между операторами лишь в
том, что writeln перемещает курсор на
начало новой строки, а write нет.
Пример:
Writeln('Мне16лет');
На экране появится: Мне 16 лет
a:=11;
Writeln('Я учусь в ', а,' классе');
На экране появится: Я учусь в 11 классе
х:=3;у:=6;
Writeln(х+у,' рублей');
На экране появится: 9 рублей
22
Команда присваивания
используется для изменения значений переменных, в
языке Паскаль эта команда обозначается так:
<имя переменной>:=<выражение>;
Тип значение выражения должен совпадать с типом
переменной.
Пример:
а:=2;
b:=8;
S:=а+b;
После выполненных последовательно данных
трех команд переменная S принимает значение равное
10.
ЗАДАЧА
Найти произведение двух целых чисел.
Решение:
1. Вводим два целых числа с клавиатуры.
2. Вычисляем их произведение.
3. Выводим результат на экран.
Program N2;
Var a, b :Integer; p: Longint;
Begin
Writeln(' Введите два числа ');
Readln(а,b);
р:=а*b;
Writeln (' произведение ', а ,' и ', b ,' равно', р);
Readln;
End.
25
Нельзя
использовать с
целыми типами
/ Sqrt()
25
26
var x: integer;
y: real;
begin
x:=4;
y:=sqrt(x);
writeln(y);
end.
ПРИМЕР
На экране: 2.00000000000000E+000
Если writeln(y:6:0), то на экране: 2
Найти квадратный корень числа 4.
ЗАДАЧА
Составить программу, которая запрашивает у
пользователя два целых числа и выводит квадрат
суммы (а+b)2 и сумму квадратов а2+b2 этих чисел.
Пример работы программы:
Введите два числа
а=5
b=2
квадрат суммы 3 и 2 равен 25
сумма квадратов 3 и 2 равна 13
ПРОДОЛЖЕНИЕ СЛЕДУЕТ!

More Related Content

What's hot (20)

Cреда программирования
Cреда программированияCреда программирования
Cреда программирования
irina8682
C++ Базовый. Занятие 04.
C++ Базовый. Занятие 04.C++ Базовый. Занятие 04.
C++ Базовый. Занятие 04.
Igor Shkulipa
206297
206297206297
206297
екатерина витенко
основы програмирования Pascal
основы програмирования Pascalосновы програмирования Pascal
основы програмирования Pascal
liza2209
8 3-1
8 3-18 3-1
8 3-1
natanikonenko19
C++ осень 2012 лекция 6
C++ осень 2012 лекция 6C++ осень 2012 лекция 6
C++ осень 2012 лекция 6
Technopark
C++ Базовый. Занятие 01.
C++ Базовый. Занятие 01.C++ Базовый. Занятие 01.
C++ Базовый. Занятие 01.
Igor Shkulipa
Применение статического анализа при разработке программ
Применение статического анализа при разработке программПрименение статического анализа при разработке программ
Применение статического анализа при разработке программ
Tatyanazaxarova
Step cpp0102
Step cpp0102Step cpp0102
Step cpp0102
Evgenij Laktionov
Programming Concepts
Programming ConceptsProgramming Concepts
Programming Concepts
Mister_Lee
лекция 3
лекция 3лекция 3
лекция 3
Надежда Бровко
C++ осень 2013 лекция 5
C++ осень 2013 лекция 5C++ осень 2013 лекция 5
C++ осень 2013 лекция 5
Technopark
записи
записизаписи
записи
LidiKashka
Ayan9r1 po(1)
Ayan9r1 po(1)Ayan9r1 po(1)
Ayan9r1 po(1)
Ayan_R
C++ осень 2013 лекция 3
C++ осень 2013 лекция 3C++ осень 2013 лекция 3
C++ осень 2013 лекция 3
Technopark
презентация кметодическим указаниям к лаб. работам
презентация кметодическим указаниям к лаб. работампрезентация кметодическим указаниям к лаб. работам
презентация кметодическим указаниям к лаб. работам
student_kai
Cреда программирования
Cреда программированияCреда программирования
Cреда программирования
irina8682
C++ Базовый. Занятие 04.
C++ Базовый. Занятие 04.C++ Базовый. Занятие 04.
C++ Базовый. Занятие 04.
Igor Shkulipa
основы програмирования Pascal
основы програмирования Pascalосновы програмирования Pascal
основы програмирования Pascal
liza2209
C++ осень 2012 лекция 6
C++ осень 2012 лекция 6C++ осень 2012 лекция 6
C++ осень 2012 лекция 6
Technopark
C++ Базовый. Занятие 01.
C++ Базовый. Занятие 01.C++ Базовый. Занятие 01.
C++ Базовый. Занятие 01.
Igor Shkulipa
Применение статического анализа при разработке программ
Применение статического анализа при разработке программПрименение статического анализа при разработке программ
Применение статического анализа при разработке программ
Tatyanazaxarova
Programming Concepts
Programming ConceptsProgramming Concepts
Programming Concepts
Mister_Lee
C++ осень 2013 лекция 5
C++ осень 2013 лекция 5C++ осень 2013 лекция 5
C++ осень 2013 лекция 5
Technopark
Ayan9r1 po(1)
Ayan9r1 po(1)Ayan9r1 po(1)
Ayan9r1 po(1)
Ayan_R
C++ осень 2013 лекция 3
C++ осень 2013 лекция 3C++ осень 2013 лекция 3
C++ осень 2013 лекция 3
Technopark
презентация кметодическим указаниям к лаб. работам
презентация кметодическим указаниям к лаб. работампрезентация кметодическим указаниям к лаб. работам
презентация кметодическим указаниям к лаб. работам
student_kai

Similar to 10 инф (20)

10кл общие сведения о языке программирования паскаль
10кл общие сведения о языке программирования паскаль10кл общие сведения о языке программирования паскаль
10кл общие сведения о языке программирования паскаль
Anna_Malina
Общие сведения о языке программирования Паскаль
Общие сведения о языке программирования ПаскальОбщие сведения о языке программирования Паскаль
Общие сведения о языке программирования Паскаль
Andrey Dolinin
лекция 4
лекция 4лекция 4
лекция 4
Надежда Бровко
лекция 4
лекция 4лекция 4
лекция 4
Надежда Бровко
введение в паскаль
введение в паскальвведение в паскаль
введение в паскаль
isva69
C++ теория
C++ теорияC++ теория
C++ теория
tank1975
C++ теория
C++ теорияC++ теория
C++ теория
tank1975
C++ теория
C++ теорияC++ теория
C++ теория
tank1975
урок знакомство с языком паскаль
урок знакомство с языком паскальурок знакомство с языком паскаль
урок знакомство с языком паскаль
Vlad3777
Метрики кода программного обеспечения
Метрики кода программного обеспеченияМетрики кода программного обеспечения
Метрики кода программного обеспечения
Tatyanazaxarova
Programming history. Algorithm
Programming history. AlgorithmProgramming history. Algorithm
Programming history. Algorithm
Ihor Porotikov
ОСНОВНЫЕ ПРИНЦИПЫ РЕШЕНИЯ ЗАДАЧИ ПРЕОБРАЗОВАНИЯ ОБЪЕКТНО-ОРИЕНТИРОВАННОГО КОД...
ОСНОВНЫЕ ПРИНЦИПЫ РЕШЕНИЯ ЗАДАЧИ ПРЕОБРАЗОВАНИЯ ОБЪЕКТНО-ОРИЕНТИРОВАННОГО КОД...ОСНОВНЫЕ ПРИНЦИПЫ РЕШЕНИЯ ЗАДАЧИ ПРЕОБРАЗОВАНИЯ ОБЪЕКТНО-ОРИЕНТИРОВАННОГО КОД...
ОСНОВНЫЕ ПРИНЦИПЫ РЕШЕНИЯ ЗАДАЧИ ПРЕОБРАЗОВАНИЯ ОБЪЕКТНО-ОРИЕНТИРОВАННОГО КОД...
ITMO University
Функции в языке программирования QBasic
Функции в языке программирования QBasicФункции в языке программирования QBasic
Функции в языке программирования QBasic
kvlar
Основы алгоритмического и объектно ориентированного программирования.
Основы алгоритмического и объектно ориентированного программирования.Основы алгоритмического и объектно ориентированного программирования.
Основы алгоритмического и объектно ориентированного программирования.
Елена Никонова
Algorithms and programming lecture in ru
Algorithms and programming lecture in ruAlgorithms and programming lecture in ru
Algorithms and programming lecture in ru
ssuser0562f1
Алгоритмизация и программирование С/С++
Алгоритмизация и  программирование С/С++Алгоритмизация и  программирование С/С++
Алгоритмизация и программирование С/С++
ssuser0562f1
Программирование как способ выражения мыслей.
Программирование как способ выражения мыслей. Программирование как способ выражения мыслей.
Программирование как способ выражения мыслей.
Levon Avakyan
лекции спрг 6_семестр (1)
лекции спрг 6_семестр (1)лекции спрг 6_семестр (1)
лекции спрг 6_семестр (1)
djbelyakk
системное администрирование
системное администрированиесистемное администрирование
системное администрирование
splinter408
10кл общие сведения о языке программирования паскаль
10кл общие сведения о языке программирования паскаль10кл общие сведения о языке программирования паскаль
10кл общие сведения о языке программирования паскаль
Anna_Malina
Общие сведения о языке программирования Паскаль
Общие сведения о языке программирования ПаскальОбщие сведения о языке программирования Паскаль
Общие сведения о языке программирования Паскаль
Andrey Dolinin
введение в паскаль
введение в паскальвведение в паскаль
введение в паскаль
isva69
C++ теория
C++ теорияC++ теория
C++ теория
tank1975
C++ теория
C++ теорияC++ теория
C++ теория
tank1975
C++ теория
C++ теорияC++ теория
C++ теория
tank1975
урок знакомство с языком паскаль
урок знакомство с языком паскальурок знакомство с языком паскаль
урок знакомство с языком паскаль
Vlad3777
Метрики кода программного обеспечения
Метрики кода программного обеспеченияМетрики кода программного обеспечения
Метрики кода программного обеспечения
Tatyanazaxarova
Programming history. Algorithm
Programming history. AlgorithmProgramming history. Algorithm
Programming history. Algorithm
Ihor Porotikov
ОСНОВНЫЕ ПРИНЦИПЫ РЕШЕНИЯ ЗАДАЧИ ПРЕОБРАЗОВАНИЯ ОБЪЕКТНО-ОРИЕНТИРОВАННОГО КОД...
ОСНОВНЫЕ ПРИНЦИПЫ РЕШЕНИЯ ЗАДАЧИ ПРЕОБРАЗОВАНИЯ ОБЪЕКТНО-ОРИЕНТИРОВАННОГО КОД...ОСНОВНЫЕ ПРИНЦИПЫ РЕШЕНИЯ ЗАДАЧИ ПРЕОБРАЗОВАНИЯ ОБЪЕКТНО-ОРИЕНТИРОВАННОГО КОД...
ОСНОВНЫЕ ПРИНЦИПЫ РЕШЕНИЯ ЗАДАЧИ ПРЕОБРАЗОВАНИЯ ОБЪЕКТНО-ОРИЕНТИРОВАННОГО КОД...
ITMO University
Функции в языке программирования QBasic
Функции в языке программирования QBasicФункции в языке программирования QBasic
Функции в языке программирования QBasic
kvlar
Основы алгоритмического и объектно ориентированного программирования.
Основы алгоритмического и объектно ориентированного программирования.Основы алгоритмического и объектно ориентированного программирования.
Основы алгоритмического и объектно ориентированного программирования.
Елена Никонова
Algorithms and programming lecture in ru
Algorithms and programming lecture in ruAlgorithms and programming lecture in ru
Algorithms and programming lecture in ru
ssuser0562f1
Алгоритмизация и программирование С/С++
Алгоритмизация и  программирование С/С++Алгоритмизация и  программирование С/С++
Алгоритмизация и программирование С/С++
ssuser0562f1
Программирование как способ выражения мыслей.
Программирование как способ выражения мыслей. Программирование как способ выражения мыслей.
Программирование как способ выражения мыслей.
Levon Avakyan
лекции спрг 6_семестр (1)
лекции спрг 6_семестр (1)лекции спрг 6_семестр (1)
лекции спрг 6_семестр (1)
djbelyakk
системное администрирование
системное администрированиесистемное администрирование
системное администрирование
splinter408

More from Аня Иванова (20)

08. приказ мон днр от 15.12.2015 № 905 ,,об утв. инструкции по учету соп,,
08.   приказ мон днр от 15.12.2015 № 905 ,,об утв.  инструкции по учету соп,,08.   приказ мон днр от 15.12.2015 № 905 ,,об утв.  инструкции по учету соп,,
08. приказ мон днр от 15.12.2015 № 905 ,,об утв. инструкции по учету соп,,
Аня Иванова
04. полож. мон днр от 06.08.2016 № 377 ,,типовое положение об учете детей,,
04.   полож. мон днр от 06.08.2016 № 377 ,,типовое положение об учете детей,,04.   полож. мон днр от 06.08.2016 № 377 ,,типовое положение об учете детей,,
04. полож. мон днр от 06.08.2016 № 377 ,,типовое положение об учете детей,,
Аня Иванова
02. закон днр «об образовании» ст. 7 (ч.12, 13)
02.   закон днр «об образовании» ст. 7 (ч.12, 13)02.   закон днр «об образовании» ст. 7 (ч.12, 13)
02. закон днр «об образовании» ст. 7 (ч.12, 13)
Аня Иванова
01. конституция днр – ст.36
01.   конституция днр – ст.3601.   конституция днр – ст.36
01. конституция днр – ст.36
Аня Иванова
дебатная технология
дебатная технологиядебатная технология
дебатная технология
Аня Иванова
дебаты
дебатыдебаты
дебаты
Аня Иванова
дебатная технология
дебатная технологиядебатная технология
дебатная технология
Аня Иванова
№ 50 организация работы в микрорайоне
№ 50  организация работы в микрорайоне№ 50  организация работы в микрорайоне
№ 50 организация работы в микрорайоне
Аня Иванова
№ 357 о кол ном составе обучающихся
№ 357 о кол ном составе обучающихся№ 357 о кол ном составе обучающихся
№ 357 о кол ном составе обучающихся
Аня Иванова
учебный план 2017 18
учебный план 2017 18учебный план 2017 18
учебный план 2017 18
Аня Иванова
№ 267 об исполнении порядка и типового положения по учету подростков (1)
№ 267  об исполнении порядка и типового положения по учету подростков (1)№ 267  об исполнении порядка и типового положения по учету подростков (1)
№ 267 об исполнении порядка и типового положения по учету подростков (1)
Аня Иванова
приказ № 267, 01.08.2017 всеобуч 2017 2018 уч.год
приказ № 267, 01.08.2017 всеобуч 2017 2018 уч.годприказ № 267, 01.08.2017 всеобуч 2017 2018 уч.год
приказ № 267, 01.08.2017 всеобуч 2017 2018 уч.год
Аня Иванова
самоанализ школы
самоанализ школысамоанализ школы
самоанализ школы
Аня Иванова
презентация безопасный интернет
презентация безопасный интернетпрезентация безопасный интернет
презентация безопасный интернет
Аня Иванова
День флага
День флагаДень флага
День флага
Аня Иванова
Prikazmtsp n62 2_531_17092015_0
Prikazmtsp n62 2_531_17092015_0Prikazmtsp n62 2_531_17092015_0
Prikazmtsp n62 2_531_17092015_0
Аня Иванова
08. приказ мон днр от 15.12.2015 № 905 ,,об утв. инструкции по учету соп,,
08.   приказ мон днр от 15.12.2015 № 905 ,,об утв.  инструкции по учету соп,,08.   приказ мон днр от 15.12.2015 № 905 ,,об утв.  инструкции по учету соп,,
08. приказ мон днр от 15.12.2015 № 905 ,,об утв. инструкции по учету соп,,
Аня Иванова
04. полож. мон днр от 06.08.2016 № 377 ,,типовое положение об учете детей,,
04.   полож. мон днр от 06.08.2016 № 377 ,,типовое положение об учете детей,,04.   полож. мон днр от 06.08.2016 № 377 ,,типовое положение об учете детей,,
04. полож. мон днр от 06.08.2016 № 377 ,,типовое положение об учете детей,,
Аня Иванова
02. закон днр «об образовании» ст. 7 (ч.12, 13)
02.   закон днр «об образовании» ст. 7 (ч.12, 13)02.   закон днр «об образовании» ст. 7 (ч.12, 13)
02. закон днр «об образовании» ст. 7 (ч.12, 13)
Аня Иванова
01. конституция днр – ст.36
01.   конституция днр – ст.3601.   конституция днр – ст.36
01. конституция днр – ст.36
Аня Иванова
№ 50 организация работы в микрорайоне
№ 50  организация работы в микрорайоне№ 50  организация работы в микрорайоне
№ 50 организация работы в микрорайоне
Аня Иванова
№ 357 о кол ном составе обучающихся
№ 357 о кол ном составе обучающихся№ 357 о кол ном составе обучающихся
№ 357 о кол ном составе обучающихся
Аня Иванова
№ 267 об исполнении порядка и типового положения по учету подростков (1)
№ 267  об исполнении порядка и типового положения по учету подростков (1)№ 267  об исполнении порядка и типового положения по учету подростков (1)
№ 267 об исполнении порядка и типового положения по учету подростков (1)
Аня Иванова
приказ № 267, 01.08.2017 всеобуч 2017 2018 уч.год
приказ № 267, 01.08.2017 всеобуч 2017 2018 уч.годприказ № 267, 01.08.2017 всеобуч 2017 2018 уч.год
приказ № 267, 01.08.2017 всеобуч 2017 2018 уч.год
Аня Иванова
презентация безопасный интернет
презентация безопасный интернетпрезентация безопасный интернет
презентация безопасный интернет
Аня Иванова

10 инф

  • 1. ВВЕДЕНИЕ В ОСНОВЫ ПРОГРАММИРОВАНИЯ «Я только с теми, кто стеная, ищет истину» Блез Паскаль (1623-1662) PASCAL 1
  • 2. Темы занятия Знакомство со средой Pascal. Алфавит языка. Типы данных. Стандартные функции для целых и вещественных типов данных. Структура программы. Подключение дополнительных модулей Основные операторы. Программы для вычисления арифметических выражений. Часто используемые эффективные алгоритмы. Операции целочисленного деления. Целочисленная арифметика в линейных алгоритмах.
  • 3. Развитие семейств языков 3 VISUAL BASIC С++ Object Pascal Среда Delphi BASIC QBASIC PASCAL С VISUAL PASCAL Среда Borland Pascal Среда Free Pascal 3
  • 4. 1. Отвечает требованиям структурного программирования Позволяет строить программу из отдельных блоков. • применяются три управляющие конструкции: следование, выбор, повторение; • структура программы отражает структуру данных; • на первом этапе проводится проектирование программы, а на втором её написание. 2. Строго типизированный язык Содержит полный набор структурных типов данных, а также развитые средства построения из них новых типов данных. Основные достоинства языка Pascal 4 4
  • 5. Паскаль популярен среди программистов по следующим причинам: • Прост для обучения. • Отражает фундаментальные идеи алгоритмов в легко воспринимаемой форме. • Позволяет четко реализовать идеи структурного программирования и структурной организации данных. • Использование простых и гибких структур управления: ветвлений, циклов. • Надежность разрабатываемых программ. 5
  • 6. Среда Free Pascal меню возможных режимов работы справка о назначении основных функциональных клавиш имя файла закрыть текущее окно номер текущего окна 6
  • 7. Окно просмотра результатов Для выхода из него надо нажать клавишу Esc. 7
  • 8. Комбинации с клавишами функциональные клавиши F1 – F12 и ALT, CTRL и SHIFT. Alt+ Enter – большой (маленький экран) Ctrl+F9 – запуск программы на выполнение Alt + 0 – список открытых файлов Alt + <№ окна> – быстрый доступ к открытым файлам F8 – для выполнения программы по строкам F9 – компиляция + проверка Ctrl+F9 – запуск 8
  • 9. Алфавит языка Паскаль. 1. строчные и прописные латинские буквы, 2. арабские цифры, 3. _ подчеркивание, 4. знаки операций: символьные + - * / = <> < > <= >= := @ буквенные mod, div, not 5. знаки пунктуации: . , ' ( ) [ ] (. .) { } (* *) .. : ; 6. спецификаторы: ^ # $ 7. служебные слова. ПАСКАЛЬ включает следующий набор основных символов:
  • 10. Идентификатор - это имя любого объекта языка, не должен начинаться с цифры. К разделителям относятся, например, пробел и комментарий. Для пояснений можно делать комментарии, которые не влияют на ход программы. Комментарии заключаются в фигурные скобки { комментарий }, символы (* комментарий *). Неиспользуемые символы – те, которые можно использовать только в комментариях. К ним относятся все русские буквы, а также символы %, &, !.
  • 11. В ЯП высокого уровня программа - это перечень действий, команд. Команда алгоритма, записанная на ЯП, называется оператором. Константа - это постоянная величина, значение которой не изменяется в процессе работы программы. Переменная – величина, которая в процессе выполнения программы может менять свое значение по необходимости. 11
  • 12. Объявление идентификаторов Однозначность операций над данными Операции с данными ОПРЕДЕЛЕНИЕ ТИПА ДАННЫХ ИДЕНТИФИКАЦИЯ ПЕРЕМЕННЫХ ЗАДАНИЕ ЗНАЧЕНИЙ Работа с данными 12 12 Синтаксис: Var <имя переменной>:<тип переменной>; Тип данных — это характеристика идентификатора, определяющая множество значений, которые он может принимать (целые или дробные числа, строки и т. д.). Процедура ввода информации с клавиатуры : Read или ReadLn. Оператор присваивания := Var x: byte; readln(a,b,c);
  • 13. Описание некоторых типов переменных • Символьные: • Var x: char; для переменных, содержащих 1 символ • Строковые: • Var x:string; для переменных, содержащих текст • Целые числа: • Var x: integer; для переменных, содержащих целые числа • Вещественные числа: • Var x: real; для переменных, содержащих вещественные числа
  • 14. Простые типы: одна переменная — одно значение. Структурированные типы: одна переменная — несколько значений. Типы данных 14 Простые Структурированные Логические (boolean) Символьные (char) Перечисляемые Интервальные Строковый (string) Регулярный (array) Комбинированный (record) Множественный (set) byte, shortint, integer, word, longint real, single, double, extended, comp Файловый (file) Целые Вещественные 14
  • 15. Арифметические операции: +, −, * div — вычисляет целую часть от частного, дробная откидывается. 10 div 3=3; 2 div 3=0; mod — вычисляет остаток, полученный при делении. 11 mod 5 = 1; 14 mod 5 = 4; Операции с целыми переменными 15 15
  • 16. Стандартные функции: Pi, Sqrt, Sin, Cos, Abs, Exp, Ln.  вычисление дробной части числа Frac(5.67)=0.67  вычисление целой части числа Int(5.67)=5.0E+00  округление вещественного числа до ближайшего целого Round(5.67)=6  отбрасывание дробной части числа Trunc(5.67)=5 Арифметические операции: Sqr, +, -, *, / Операции с вещественными переменными 16 16 вещественный → вещественный: Frac, Int; вещественный → целый: Round, Trunc.
  • 17. Структура программы. program имя_программы; uses - подключение модулей сonst - раздел описания констант var - раздел описания переменных begin Тело программы end. ОПЕРАТОРНЫЕ СКОБКИ
  • 18. Имя программы, имена переменных • Начинаются с буквы • Без пробелов • Могут содержать • латинские буквы • Цифры (начиная со второй позиции) • символ подчеркивания (вместо пробелов)
  • 19. Модуль расширяет возможности программ путём введения дополнительных операторов, стандартных процедур и функций. Пример включения стандартных модулей: uses crt, dos, graph, printer. Очистка текстового экрана. Ожидание нажатия на клавишу. Подключённый модуль с именем CRT. Подключение дополнительных модулей 19 19
  • 20. Оператор ввода исходных данных. Происходит с помощью оператора read и readln: Вид команды: read (список переменных); readln (список переменных); Разница между операторами лишь в том, что readln перемещает курсор на начало новой строки, а read нет.
  • 21. Вывод результатов Происходит с помощью оператора write и writeln: Вид команды: write (‘список вывода’); writeln (‘список вывода’); Разница между операторами лишь в том, что writeln перемещает курсор на начало новой строки, а write нет.
  • 22. Пример: Writeln('Мне16лет'); На экране появится: Мне 16 лет a:=11; Writeln('Я учусь в ', а,' классе'); На экране появится: Я учусь в 11 классе х:=3;у:=6; Writeln(х+у,' рублей'); На экране появится: 9 рублей 22
  • 23. Команда присваивания используется для изменения значений переменных, в языке Паскаль эта команда обозначается так: <имя переменной>:=<выражение>; Тип значение выражения должен совпадать с типом переменной. Пример: а:=2; b:=8; S:=а+b; После выполненных последовательно данных трех команд переменная S принимает значение равное 10.
  • 24. ЗАДАЧА Найти произведение двух целых чисел. Решение: 1. Вводим два целых числа с клавиатуры. 2. Вычисляем их произведение. 3. Выводим результат на экран. Program N2; Var a, b :Integer; p: Longint; Begin Writeln(' Введите два числа '); Readln(а,b); р:=а*b; Writeln (' произведение ', а ,' и ', b ,' равно', р); Readln; End.
  • 26. 26 var x: integer; y: real; begin x:=4; y:=sqrt(x); writeln(y); end. ПРИМЕР На экране: 2.00000000000000E+000 Если writeln(y:6:0), то на экране: 2 Найти квадратный корень числа 4.
  • 27. ЗАДАЧА Составить программу, которая запрашивает у пользователя два целых числа и выводит квадрат суммы (а+b)2 и сумму квадратов а2+b2 этих чисел. Пример работы программы: Введите два числа а=5 b=2 квадрат суммы 3 и 2 равен 25 сумма квадратов 3 и 2 равна 13