Слайд 2Pascal ABC. Основные математические функции.
Слайд 3Pascal ABC. Основные математические функции.
sqrt(x) -корень квадратный из X
int(x) -целая
часть X (результат -вещественное число)
trunc(x) -целая часть X (результат -целое
число)
round(x) -округляет число X до целого (результат -целое число)
frac(x) -дробная часть от X
pi-выдаѐт число 3.1415926..... (19 знаков после запятой)
sin(x) -синус X
cos(x) -косинус X
arctan(x) –арктангенс X
exp(x) -возведение числа е=2.7183 в степень X (ех)
ln(x) -логорифм числа X
Random - выбирается случайное число от 0 до 1 (вещественное)
Слайд 4Pascal ABC. Основные математические функции.
Возведение в степень в Паскаль
1 способ:
{a - число}, {b - степень}
r:=power(a,b)
2 способ: X^Y = exp(ln(X) * Y)
3
способ:
while i `меньше` abs(deg) do begin
res := res `умножить` num;
i := i + 1
end;
if deg `меньше` 0 then
res := 1 / res;
writeln (res:10:5);
readln (res)
end.
var
num, deg: integer;
res: real;
i: byte;
begin
write (`Основание степени: `); readln (num);
write (`Показатель степени: `); readln (deg);
res := 1;
i := 0;
Слайд 5Целочисленные вычисления на языке Pascal
Слайд 6Целочисленные вычисления на языке Pascal
Слайд 7Целочисленные вычисления на языке Pascal
Слайд 8Целочисленные вычисления на языке Pascal
Слайд 9Использование модуля CRT
Язык Паскаль имеет специальную библиотеку работы с экраном
в текстовом режиме. Она называется CRT. Эта библиотека содержит набор
подпрограмм, позволяющих задавать цвет выводимых букв, цвет фона, устанавливать курсор в желаемую позицию.
В текстовом режиме считается, что окно содержит 25 строк по 80 колонок. В каждой позиции может быть один символ (буква, цифра, специальные знаки).
Графические объекты (прямые, окружности и т.п.) в текстовом окне не допустимы.
Слайд 10Pascal ABC. Графический модуль
Для осуществления диалога с пользователем необходимо подключить
в программе графический модуль, который подключается инструкцией Uses CRT;
Подключение этого
модуля даёт возможность при выполнении вашей программы отображать графическое окно
После подключения
графического модуля
следует раздел описания
переменных
Слайд 11Использование модуля CRT
Наберите текст этой программы и выполните её.
Слайд 16Модуль CRT. Полезные подпрограммы
Слайд 17Модуль CRT. Полезные подпрограммы
Слайд 18Модуль CRT. Полезные подпрограммы
Слайд 19Модуль CRT. Задание №1
Используйте возможности модуля
Слайд 20Графический модуль GraphABC
Для подключения после заголовка программы необходимо написать
Uses
GraphABC.
Модуль GraphABC содержит константы, типы, процедуры и функции для
рисования в графическом окне.
Они подразделяются на несколько групп:
Слайд 21Графический модуль GraphABC
Пример программы: (выполните)
Слайд 22Графический модуль GraphABC
Процедура SetWindowSize устанавливает размер графического окна 256×256 пикселей.
Процедура
SetPenColor определяет цвет рисования линий.
Функция RGB возвращает цвет,
заданный своими
Red, Green, Blue компонентами:
function RGB(r,g,b: byte): Color;
Возвращает цвет, который содержит красную (r), зеленую (g) и синюю (b) составляющие (r,g и b - в диапазоне от 0 до 255)
Процедура Line рисует линию из точки,
заданной первой парой координат, в точку, заданную второй парой координат. Функции WindowWidth и WindowHeight возвращают текущие значения ширины и высоты графического окна (следовательно, если вы поменяете размер окна в процедуре
SetWindowSize, то линии все равно будут проводиться из угла в угол)
Слайд 24Графический модуль GraphABC
Задание цвета
Как известно восприятие цвета у человека трехцветное.
Основываясь на этом, в графических библиотеках используется именно такое трехкомпонентное
представление цвета.
вет задается с помощью функции
Rgb (Red,Green,Blue)
Здесь
• Red – число от 0 до 255, соответствующее интенсивности красной компоненты
• Green – число от 0 до 255, соответствующее интенсивности зеленой компоненты
• Blue – число от 0 до 255, соответствующее интенсивности синей компоненты
Слайд 25Графический модуль GraphABC
Задание стиля и цвета пера
• SetPenColor(цвет) – устанавливает
цвет пера, задаваемый параметром color.
• SetPenWidth(ширина) – устанавливает ширину пера.
•
SetPenStyle(стиль) – устанавливает стиль пера (сплошной, пунктир и т.п.), возможные
значения указаны в таблице (стиль применим только к ширине пера 1 пиксел)
psSolid
psClear
psDash
psDot
psDashDot
psDashDotDot
Текущее перо используется для рисования линий, прямоугольников, ломаных,
окружностей, эллипсов, дуг и т.п.
Слайд 26Графический модуль GraphABC
Пример программы: (выполните)
Слайд 27Графический модуль GraphABC
Задание стиля и цвета кисти
• SetBrushColor(цвет) – устанавливает
цвет кисти
• SetBrushPicture(имя файла) – устанавливает в качестве образца для
закраски кистью
образец, хранящийся в файле, при этом текущий цвет кисти при закраске
игнорируется.
• ClearBrushPicture – очищает рисунок-образец, выбранный для кисти.
• SetBrushStyle(стиль) – устанавливает стиль кисти, задаваемый параметром bs.
Возможные стили кисти:
bsSolid bsClear bsCross bsDiagCross bsHorizontal bsBDiagonal bsVertical bsFDiagonal
Текущей кистью закрашиваются все замкнутые фигуры, контур фигур рисуется текущим пером.
Чтобы нарисовать не закрашенную фигуру, используйте SetBrushColor(bsClear).
Слайд 28Графический модуль GraphABC
Пример программы: (выполните)
Слайд 29Графический модуль GraphABC
Line(x1,y1,x2,y2) – рисует отрезок с началом в точке
(x1,y1) и концом в точке (x2,y2).
• Circle(x,y,r) – рисует окружность
с центром в точке (x,y) и радиусом r.
• Ellipse(x1,y1,x2,y2) – рисует эллипс, заданный своим описанным прямоугольником с координатами противоположных вершин (x1,y1) и (x2,y2).
• Rectangle(x1,y1,x2,y2) – рисует прямоугольник, заданный координатами
противоположных вершин (x1,y1) и (x2,y2).
• RoundRect(x1,y1,x2,y2,w,h) – рисует прямоугольник со скругленными краями; (x1,y1) и (x2,y2) задают пару противоположных вершин, а w и h – ширину и высоту эллипса, используемого для скругления краев.
Слайд 30Графический модуль GraphABC
Arc(x,y,r,a1,a2) – рисует дугу окружности с центром в
точке (x,y) и радиусом r,
заключенной между двумя лучами, образующими углы
a1 и a2 с осью OX (a1 и a2 –вещественные, задаются в градусах и отсчитываются против часовой стрелки).
• Pie(x,y,r,a1,a2) – рисует сектор окружности, ограниченный дугой (параметры процедуры имеют тот же смысл, что и в процедуре Arc).
• Chord(x,y,r,a1,a2) – рисует фигуру, ограниченную дугой окружности и отрезком, соединяющим ее концы (параметры процедуры имеют тот же смысл, что и в процедуре Arc).
• FloodFill(x,y,color) – закрашивает область одного цвета, начиная с точки (x,y) цветом color.
Слайд 31Графический модуль GraphABC.
Задание 1
Напишите программу, использующую не менее трех процедур
рисования, которая рисовала бы несложный рисунок (домик, автомобиль, и т.п.)
Слайд 32Графический модуль GraphABC.
Задание 1
Пример:
program avto;
uses graphABC;
var i : integer;
begin
SetWindowSize (800,600);
SetPenStyle
(psClear); // верхняя часть автомобиля
setBrushColor (Clgreen);
rectangle (250,250,550,351);
setBrushColor (ClAqua); // окна
rectangle
(255,255,395,345);
rectangle (405,255,545,345);
Слайд 33Графический модуль GraphABC.
Задание 1
Пример: (продолжение)
setBrushColor (Clgreen); // корпус
rectangle (50,350,750,500);
setBrushColor (ClYellow);
// фары
rectangle (749,375,764,400);
setBrushColor (ClRed);
rectangle (35,375,51,400);
setBrushColor (ClLightGray); // бампер
RoundRect (725,450,775,475,10,10);
RoundRect (25,450,75,475,10,10);
Слайд 34Графический модуль GraphABC.
Задание 1
Пример: (продолжение)
SetPenStyle (psSolid); // двери
Line(250,350,250,425);
Line(250,425,300,500);
Line (400,250,400,500);
Line (550,350,550,425);
Line
(550,425,500,500);
setBrushColor (ClBlack); // колеса
Circle (200,500,50);
setBrushColor (ClLightGray);
Circle (200,500,25);
Слайд 35Графический модуль GraphABC.
Задание 1
Пример: (продолжение)
setBrushColor (ClBlack);
Circle (600,500,50);
setBrushColor (ClLightGray);
Circle (600,500,25);
end.