2015 год Графический режим Простейшие операторы графики Паскаля При работе с графикой в Паскале необходимо в разделе описания программы задать модуль graph.

Презентация:



Advertisements
Похожие презентации
Алфавит языка TURBO PASCAL. Цель урока: Узнать: Алфавит языка программирования TURBO PASCAL. Этапы разработки программы Типы ошибок Разделы программы.
Advertisements

Основы программирования в Turbo Pascal Язык программирования Паскаль.
Тема урока Переменная. Тип данных. Ввод и вывод данных.
Программирование на языке Паскаль Введение. Алфавит языка Паскаль Алфавит это фиксированный набор основных символов, из которых состоит любой текст на.
Язык программирования Pascal. Структура программы Pascal Program имя программы; Uses раздел подключения модулей; Const раздел констант; Var раздел описаний.
turbo.exe основной файл среды Любой язык обладает алфавитом, синтаксисом и семантикой. В алфавит входит набор символов, использующихся в языке с помощью.
Оператор присваивания. Оператор вывода информации на экран.
ОБЩИЕ СВЕДЕНИЯ О ЯЗЫКЕ ПРОГРАММИРОВАНИЯ ПАСКАЛЬ НАЧАЛА ПРОГРАММИРОВАНИЯ.
Раздел описания переменных начинается со слова VAR (variables-переменные), за которым идет список имен переменных через запятую. Тип указывается после.
Среди современных языков программирования одним из самых популярных является язык Паскаль. Этот язык разработан в 1971 году и назван в честь Блеза Паскаля.
Алгоритмы и алгоритмизацияАлгоритмы и алгоритмизация.
Среди современных языков программирования одним из самых популярных является язык Паскаль. Этот язык разработан в 1971 году и назван в честь Блеза Паскаля.
Знакомство с языком Паскаль Структура программы Ветвление на Паскале Циклические программы Пример линейной программы Пример программы с ветвлением Пример.
Разветвляющиеся алгоритмы if Оператор условия if.
Алгоритмическая структура цикл Алгоритм циклической структуры - это алгоритм, в котором происходит многократное повторение одного и того же участка программы.
ЛИНЕЙНЫЕ АЛГОРИТМЫ. Алгоритмические действия над исходными данными и рабочими объектами языка, необходимые для решения поставленной задачи описываются.
Язык Паскаль МОУ СОШ 2 городского округа город буй Костромской области учитель информатики Щур Анна Николаевна.
Операторы графики. Содержание Открытие и закрытие графического режимаОткрытие и закрытие графического режима Графические операторы Обобщение (основные.
Введение в Паскаль. ввод Для ввода чисел используется оператор read или readln. Вводимые числа должны отделяться друг от друга пробелом или нажатием клавиши.
Операторы ввода/вывода, присваивания. Арифметические выражения.
Транксрипт:

2015 год

Графический режим Простейшие операторы графики Паскаля При работе с графикой в Паскале необходимо в разделе описания программы задать модуль graph и 2 переменные gd и gm. А в основном разделе прописать два оператора: gd:=detect; initgraph(gd,gm,''); (320,240)

Графический режим Простейшие операторы графики Паскаля Устанавливает цвет фона и линий: SETBKCOLOR(C); SETCOLOR(C); Замечания: С – цвет По умолчанию у линий - белый 480 X Y Цвета: 0 – черный 1 – синий 2 – зеленый 3 – голубой 4 – красный 5 –малиновый 6 – коричневый 7 – светло серый (X1,Y1) (X2,Y2) Вычерчивание линий: LINE(X1,Y1,X2,Y2) Примерный вид программы: uses crt,graph; var gd,gm:integer; begin gd:=detect;initgraph(gd,gm,''); setcolor(5);line(10,10,200,200); readkey; end. Выход

Графический режим Простейшие операторы графики Бейсика Вычерчивание прямоугольников: SETCOLOR(C); RECTANGLE (X1,Y1,X2,Y2); Замечания: С – цвет линий 480 X Y Цвета: Цвета: 8 – темно серый 9 – светло синий 10 – светло зеленый 11 – бледно голубой 12 – розовый 13 –бледно малиновый 14 – желтый 15– белый (X1,Y1) (X2,Y2) Примерный вид программы: uses crt,graph; var gd,gm:integer; begin gd:=detect;initgraph(gd,gm,''); setcolor(5); rectangle(400,100,500,300); readkey; end. Выход

Графический режим Простейшие операторы графики Бейсика Вычерчивание закрашенных прямоугольников: SETFILLSTYLE(1,C) BAR(X1,Y1,X2,Y2); Замечания: С – цвет заливки 1 –стиль, признак закраски цветом С 480 X Y Примерный вид программы: uses crt,graph; var gd,gm:integer; begin gd:=detect;initgraph(gd,gm,''); setfillstyle(1,14); bar(100,300,300,400); readkey; end. (X1,Y1) (X2,Y2) Выход

Графический режим Простейшие операторы графики Бейсика Вычерчивание круга: SETCOLOR(C); CIRCLE(X,Y,R) Замечания: X,Y – центр круга R – радиус C – цвет окружности, по умолчанию - белый 480 X Y R Примерный вид программы: uses crt,graph; var gd,gm:integer; begin gd:=detect; initgraph(gd,gm,''); setcolor(4); circle(320,240,100); readkey; end. (X,Y) Выход

Графический режим Простейшие операторы графики Бейсика Вычерчивание эллипсов: SETCOLOR(C); ELLIPSE(X,Y,0,360,R2,R1) Замечания: R1, R2 – радиусы эллипса 480 X Y R2R2 R1R1 Примерный вид программы: uses crt,graph; var gd,gm:integer; begin gd:=detect; initgraph(gd,gm,''); setcolor(4); ellipse(320,240,0,360,100,50); readkey; end. Выход

Графический режим Простейшие операторы графики Бейсика Вычерчивание дуг SETCOLOR(C); ELLIPSE (X,Y,а,b,R2,R1) 480 X Y Примерный вид программы: uses crt,graph; var gd,gm:integer; begin gd:=detect; initgraph(gd,gm,''); setcolor(4); ellipse(320,240,320,180,100,50); readkey; end. R2R2 R1R1 Замечания: а – начало дуги (в градусах) b – конец дуги отсчет идет против часовой стрелки от точки 0 a b Выход

Графический режим Простейшие операторы графики Бейсика Отображение точки: PUTPIXEL(X,Y,C) Замечания: X,Y – координаты точки C – цвет точки, по умолчанию белый 350 X Y Примерный вид программы: uses crt,graph; var gd,gm:integer; begin gd:=detect; initgraph(gd,gm,''); putpixel(320,240,5); putpixel(100,100,2); putpixel(400,400,14); putpixel(450,200,6); putpixel(500,150,4); readkey; end. Выход

Пишем программу 20. Вывести на экран всевозможные фигуры. uses crt,graph; var gd,gm:integer; begin gd:=detect; initgraph(gd,gm,''); Setbkcolor(15); setcolor(5); line(10,10,200,200); rectangle(250,100,350,150); setfillstyle(1,14); bar(100,300,300,400); setcolor(5); circle(500,240,50); setfillstyle(5,8);floodfill(500,240,5); setcolor(2);ellipse(500,100,0,360,100,20); setcolor(4);ellipse(500,400,320,180,100,50); putpixel(520,140,5); putpixel(500,170,0); setcolor(3);setfillstyle(1,4);fillellipse(320,170,100,10); readkey; end. Выход

Пишем программу 21. Вывести на экран рисунок Задание: А. А. Составить программу вывода на экран Домика и Солнышка (программа прилагается) В. В. Составить программу вывода на экран всего предлагаемого рисунка С. С. Доработать программу вывода на экран рисунка, добавив дополнительные детали (Дверь, трубу и крыльцо у домика, беседку, кустарник и т.п.) uses crt,graph; var gd,gm:integer; begin gd:=detect; initgraph(gd,gm,''); line(160,180,80,240); line(160,180,240,240); rectangle(80,240,240,460); rectangle(120,280,200,360); line(120,310,200,310); line(160,280,160,360); circle(60,60,25); readkey; end.

Графический режим Простейшие операторы графики Бейсика Закрашивание замкнутой области: Замечания: X,Y – координаты точки внутри замкнутого контура C – цвет заливки С1 – цвет контура 480 X Y Примерный вид программы: uses crt,graph; var gd,gm:integer; begin gd:=detect; initgraph(gd,gm,''); setcolor(1); circle(100,100,50); setfillstyle(1,14);floodfill(100,100,1); line(320,175,200,350); line(320,175,440,350); line(200,350,440,350); setfillstyle(1,4);floodfill(320,300,1); readkey; end. SETFILLSTYLE(1,C) FLOODFILL (X, Y, C1) Выход

Пишем программу 22. Вывести на экран рисунок Задание: А. А. Составить программу вывода на экран ДОМИКА и раскрасить его (программа прилагается) В. В. Составить программу вывода на экран всего предлагаемого рисунка С. С. Доработать программу вывода на экран цветного рисунка, добавив дополнительные детали (Дверь, трубу и крыльцо у домика, беседку, кустарник и т.п.) uses crt,graph; var gd,gm:integer; begin gd:=detect; initgraph(gd,gm,''); setcolor(1); line(160,180,80,240); line(160,180,240,240); line(80,240,240,240); setfillstyle(1,4); floodfill(160,200,1); rectangle(80,240,240,460); setfillstyle(1,3); floodfill(160,300,1); setcolor(6); rectangle(120,280,200,360); setfillstyle(1,15); floodfill(160,300,6); line(120,310,200,310); line(160,280,160,360); readkey; end. Выход

Пишем программу 23. Вывести на экран рисунок Задание: А. А. Составить программу вывода на экран снеговика (программа прилагается) В. В. Составить программу вывода на экран всего предлагаемого рисунка С. С. Доработать программу вывода на экран рисунка, добавив дополнительные детали (заливку ёлочки, снеговика, вставить изображение шляпы у снеговика, дерева и т.п.) uses crt,graph; var gd,gr:integer; begin gd:=detect; initgraph(gd,gr,''); setcolor(3); circle(320,100,30); circle(320,180,50); ellipse(320,300,0,360,100,70); ellipse(260,140,0,360,30,10); ellipse(380,140,0,360,30,10); setcolor(4); circle(330,90,3); circle(310,90,3); line(315,95,325,95); line(302,112,315,95); line(302,112,325,95); setfillstyle(1,4); floodfill(320,97,4); bar(330,110,310,113); readkey; end. Выход

Пишем программу 24. Вывести на экран рисунок Задание: А. А. Составить программу вывода на на экран контура жабы (программа прилагается). В. В. Составить программу вывода на экран всего предлагаемого рисунка. С. С. Доработать программу вывода на экран рисунка, добавив дополнительные детали. uses crt,graph; var gd,gr:integer; begin gd:=detect; initgraph(gd,gr,''); circle(280,130,5); ellipse(280,130,352,200,30,60); ellipse(280,140,360,190,20,50); circle(360,130,5); ellipse(360,130,340,190,30,60); ellipse(360,140,355,180,20,50); ellipse(320,200,0,360,120,60); ellipse(320,340,130,50,80,110); ellipse(395,455,0,360,70,10); ellipse(255,455,0,360,70,10); setcolor(4); line(205,220,435,220); readkey; end. Выход

Графический режим Организовать движение круга по экрану Задержка изображения на доли секунды: Замечания: к – время, доли секунды С – цвет фона 480 X Y Примерный вид программы: uses crt,graph; var gd,gm,x:integer; begin gd:=detect; initgraph(gd,gm,''); setbkcolor(3); cleardevice; For x:=50 to 600 do begin setcolor(1); circle(x,50,10); setfillstyle(1,14);floodfill(x,50,1); Delay(5000); setfillstyle(1,3);floodfill(x,50,3); end; readkey; end. DELAY(к); Очистка графического экрана заданным цветом: SETBKCOLOR (C); CLEARDEVICE; Выход

Пишем программу 25. Вывести на экран рисунок Задание: А. А. Составить программу вывода на экран ДОМИКА и забора (примерная программа прилагается) В. В. Составить программу вывода на экран всего предлагаемого рисунка С. С. Доработать в программу движение солнца по экрану uses crt,graph; var gd,gm,i,x:integer; begin gd:=detect; initgraph(gd,gm,''); setcolor(1); line(160,170,80,200); line(160,170,240,200); line(80,200,240,200); setfillstyle(1,4); floodfill(160,190,1); rectangle(80,200,240,350); setfillstyle(1,3);floodfill(160,300,1); setcolor(6); rectangle(130,240,190,290); setfillstyle(1,15); floodfill(160,280,6); x:=0; for i:=1 to 15 do begin line(x,480,x+20,480);line(x+20,480,x+20,360); line(x+20,360,x+10,320);line(x+10,320,x,360); line(x,360,x,480); setfillstyle(1,7); Floodfill(x+10,360,6); x:=x+20; end; readkey; End.

основные понятия и операторы основные понятия и операторы ПОВТОРЕНИЕ

Алфавит Паскаля Все прописные и строчные буквы латинского алфавита Цифры от 0 до 9 Знаки арифметических операций: +, -, *, /. Знаки операций отношения: =,, >=, Знаки препинания :, ;. : '.. Специальные символы: := ( ) [ ] { } (* *) Буквы русского алфавита используются только как константы (в кавычках). Например, Русский язык

Основные понятия Паскаля Программа - это последовательность строк, описывающая алгоритм поставленной задачи Программа состоит из двух разделов: описаний и операторов Program ; Uses ; Var ; Const ; Label ; Type ; Procedure … Function… Begin … end.

Список стандартных математических функций Паскаля Стандартные функции используются в выражениях. Аргументы функций пишутся в круглых скобках. Например, 2+Sqr(x)-Abs(2*y); a-Int(a) Функция Назначение Тип аргумента Тип функции Abs(x) Вычисление абсолютного значения x вещественный целый вещественный целый sqr(x)Вычисление квадрата x вещественный целый вещественный целый sqrt(x) Вычисление квадратного корня из x вещественный целый вещественный sin(x) / cos(x) Вычисление синуса / косинуса от x вещественный целый вещественный arctan(x)Вычисление арктангенса от x вещественный целый вещественный exp(x) Вычисление экспоненты (числа e=2,71828…) в степени x вещественный целый вещественный ln(x) / log(x) Вычисление логарифмов x вещественный целый вещественный Pi Число нет вещественный

Оператор вывода информации на экран Простейшие операторы Паскаля Write( ); Writeln( ); Структура оператора: Замечания: При использование оператора Write после вывода списка на экран курсор остается на той же строке. При использование оператора Writeln после вывода списка на экран курсор переносится на следующую строку. Примеры операторов Оператор Комментарий WRITELN(Все хорошо,); WRITE(что хорошо кончается); На экране появится: Все хорошо, что хорошо кончается _ WRITE(Все хорошо,); WRITE(что хорошо кончается); На экране появится: Все хорошо, что хорошо кончается _ WRITE(Все хорошо,); WRITELN (что хорошо кончается); На экране появится: Все хорошо, что хорошо кончается ___ Список – это перечень констант, переменных или выражений, разделенных запятыми

Операторы управления цветом Цвета в Паскаля: Textbackground ( ); Структура оператора изменения цвета фона: Структура оператора изменения цвета символов (переднего плана): TextColor ( ); Номер-Цвет Константа модуля Crt Номер-Цвет Константа модуля Crt 0 – чёрныйBlack8 – темно-серыйDarkGray 1 – синийBlue9 – светло-синийLightBlue 2 – зелёныйGreen10 – светло-зелёныйLightGreen 3 – морской волны Cyan11 – светл.-морской волны LightCyan 4 – красныйRed12 – светло-красныйLightRed 5 –фиолетовыйMagenta13 – светло-фиолетовыйLightMagenta 6 – коричневыйBrown14 – жёлтыйYellow 7 – светло-серыйLightGray15 – белыйWhite

Оператор очистки экрана program pr2; uses crt; begin Textbackground(3); Clrscr; TextColor(4); writeln( Моя первая программа'); writeln; TextColor(5); writeln(Буря мглою небо кроет,'); writeln(Вихри снежные крутя'); writeln(То как зверь она завоет,'); writeln(То заплачет, как дитя.'); Readkey; end. Пример программы с использованием очистки цветом Readkey; Запуск программы на выполнение – Ctrl+F9 Просмотр результатов – Alt+F5 Запуск программы на выполнение – Ctrl+F9 Просмотр результатов – Alt+F5 Замечание: оператор используется для ввода символов с клавиатуры в символьную переменную или для задержки информации на экране. Оператор ввода символа с клавиатуры Clrscr;

Описание переменных Переменные в Паскале Var a: ; b,c,d: ; Пример описания переменных: Список наиболее распространенных типов переменных Название типа ТипОписание Строковый String Символы в количестве от 0 до 255 шт. Символьный Char Один любой символ Целые положительные числа Byte Word 0… Целые числа со знаком ShortInt Integer Longint -128… Вещественные числа Single Real 7-8 значащих цифр( ) значащих цифр ( )

Оператор присваивания Простейшие операторы Паскаля := ; Структура оператора: Замечания: Слева от знака «:=» в операторе присваивания записывается имя той переменной, которой нужно присвоить новое значение, а справа – выражение, значение которого надо сначала вычислить, а затем присвоить указанной переменной Примеры операторов Оператор Комментарий X:=10;Переменной Х присваивается 10 X:=2*a+6;Переменной Х присваивается значение выражения 2*a+6 A:=Информатика;Текстовой переменной A присваивается текстовая константа Информатика S:=S+1;Переменной S присваивается предыдущее значение S плюс 1

Оператор ввода информации с клавиатуры Простейшие операторы Паскаля READ( ); READLN( ); Структура оператора: Замечания: При выполнение оператора ввода программа ожидает нажатия на Enter. Данные, в список переменных, вводятся через пробел. Пример использования оператора Оператор Комментарий Var A,B:byte; … Read(A,B); … На экране появится мигающий курсор Только после ввода двух чисел, например, 2 5 (через пробел), и нажатия Enter программа продолжит выполнение. … Write(введи число ); Readln(a); … На экране появится: введи число _ После ввода числа и нажатия клавишиEnter программа продолжит выполнение. Список – это перечень переменных, разделенных запятыми

Функции, преобразования числовых переменных Функция НазначениеТип аргумента Тип функции trunc(x) Нахождение целой части x (дробная часть числа отбрасывается) вещественный целый int(x) Округление вещественного числа x по направлению к нулю вещественный round(x) Округление x в сторону ближайшего целого по математическим правилам вещественный целый Frac(x) Вычисление дробной части числа Х вещественный Примеры: Y:=trunc(13.999); (переменной Y присваивается 13), Y:=trunc(13.111); (переменной Y присваивается 13), Y:=round(3.145); (переменной Y присваивается 3), Y:=round(23.5); (переменной Y присваивается 24), Y:=round(-12.5); (переменной Y присваивается -13). Y:=int(2.7); (переменной Y присваивается 2), Y:=int(-32.3); (переменной Y присваивается -32).

Целочисленные арифметические операции Операции div и mod используются только с целочисленными переменными Операция Назначение Пример записи div Вычисление целой части частного при делении a на b C:=a div b; mod Вычисление остатка от деления a на b D:=a mod b; Например, Y := 25 div 3; (переменной Y присваивается 8), Y := - 25 div 4; (переменной Y присваивается -6), Y := 13 mod 3; (переменной Y присваивается 1), Y := 15 mod 4; (переменной У присваивается 3).

Генерация случайных чисел Примеры: Генерация случайного числа в диапазоне от 0 до 45: А : = Random(46); Генерация случайных двухзначных чисел: А : = Random(90)+10; Генерация двухзначных четных чисел: А : = Random(45)*2+10; Генерация вещественных чисел от 0 до 50: X:=Random*50; Randomize – оператор установки базы случайных чисел в зависимости от текущего времени Функции: Random – генерация дробных чисел в диапозоне от 0 до 1 Random(X) – генерация целых чисел в диапозоне от 0 до Х-1

Оператор ветвления Простейшие операторы Паскаля if then [ else ]; Структура оператора: Замечания: Если условие истинно, выполняется оператор 1, иначе выполняется оператор 2. Если структура else отсутствует, то при ложности условия выполняется следующий оператор за оператором if Оператор 1 или оператор 2 может быть составным, то есть содержать несколько операторов, между Begin и end. Примеры операторов Оператор Комментарий if a > b then writeln (большее число a -, a) else writeln (большее число b -, b); Из двух чисел a и b выводится на экран значение большего числа. if x>0 then y:=x; if x<=0 then y:L=sqr(x); Вычисление значения функции: если тогда иначе

Ветвление на несколько направлений Простейшие операторы Паскаля case of : ; : ; [else ] end; Структура оператора: Замечания: Переменная должна быть типа word, boolean, integer, char… Список значений выбора - это значения, которые могут принимать переменная или выражение, перечисленные через запятую или ".. " (например, 1..7 или 'а'..'м') Оператор – это любой оператор, в том числе составной (begin... end;) Принцип работы оператора: - Значение переменной или выражения сравнивается с предложенными списками значений - Если найдено нужное значение, выполняется соответствующий оператор - Если нужное значение не найдено в перечисленных списках, выполняется оператор после else - Если else отсутствует, то, когда нужное значение не найдено, выполняется следующий за case оператор.

GOTO ; Структура оператора: Замечания: двоеточием Метка – число или идентификатор (буквы и цифры), которые ставятся перед оператором и отделяются от него двоеточием. Метки используются для передачи управления на оператор, перед которым стоит метка. Например, М1: writeln(метка); Метки обязательно описывается в разделе описаний: Label ; Оператор безусловного перехода Gotoxy(x, Y); Оператор перемещения курсора в координаты Х,Y Оператор выхода из программы Halt; Операторы перехода

Оператор цикла с параметром Простейшие операторы Паскаля for := to/downto do ; Структура оператора: Замечания: начало, конец - арифметическое выражение to - используется когда начало меньше конца downto - используется когда начало больше конца оператор - тело цикла, любой оператор, в том числе и составной Пример записи оператора Оператор Комментарий S:=0; For I:=25 To 43 do S:=S+I; Writeln(S=,S); Цикл для подсчета суммы чисел от 25 до 43. для до делать Принцип работы оператора: Переменной присваивается значение «начало» Выполняется оператор - тело цикла. Затем переменная сравнивается с « концом ». Если параметр больше/меньше конца, то цикл заканчивается. Иначе к переменной прибавляется/отнимается единица и снова выполняется оператор. Так продолжается пока параметр не станет больше/меньше конца.

Оператор цикла с предварительным условием Простейшие операторы Паскаля While do ; Структура оператора: Замечания: Условие - логическое выражение оператор - тело цикла, любой оператор, в том числе и составной Пример записи оператора Оператор Комментарий readln (n1,n2); while n1<>n2 do if n1>n2 then n1:=n1-n2 else n2:=n2-n1; nod:=n1; writeln 'Наименльший общий делитель - ',nod); Найти наименьший общий делитель двух введенных целых чисел (Алгоритм Евклида). пока делать Принцип работы оператора: Проверяется истинность условия, Если условие истинно выполняется оператор, Цикл работает, пока условие не станет ложным.

Оператор цикла с последующим условием Простейшие операторы Паскаля Repeat until ; Структура оператора: Замечания: Условие - логическое выражение оператор - тело цикла, любой оператор, в том числе и составной Пример записи оператора Оператор Комментарий readln (n1,n2); Repeat if n1>n2 then n1:=n1-n2 else n2:=n2-n1; until n1=n2; nod:=n1; writeln 'Наименьший общий делитель -',nod); Найти наименьший общий делитель двух введенных целых чисел (Алгоритм Евклида). повторять до тех пор пока Принцип работы оператора: Выполняются все операторы между repeat и until, Проверяется ложность условия, Цикл работает, пока условие не станет истинным.

Выход Конец