Как сделать снеговика в паскале абс
Pascal ABC Файл Правка Вид Программа Сервис Помощь DEHO % • Program1.pos uses GraphABC; begin line (100100150 .
Разработка новой игры - Нарядим снеговика. Ресурсы для урока yadi.sk/d/4F3hCUyAmP2ga Композиция "Jingle Bells .
Разработка новой игры - Нарядим снеговика. Ресурсы и исходный код к игре yadi.sk/d/PpZ66rqymfyu3 Композиция .
Разработка новой игры - Нарядим снеговика. Ресурсы для урока yadi.sk/d/4F3hCUyAmP2ga Композиция "Jingle Bells .
Разбирается как сделать анимацию (движение объектов) в Pascal. Модель химического элемента в Pascal с исходником: .
Мы продолжаем разрабатывать игру - Уборщик снега. В данном уроке начнем программировать нашу машину убирающею .
LearnToCode - обучающий программированию канал. Изучаем команды: Line, Circle, Rectangle, Pen, Brush.
В данном видео из курса по программированию для начинающих "Паскаль с нуля", вы познакомитесь со средой .
Мы продолжаем разрабатывать игру - Уборщик снега. В данном уроке начнем программировать нашу машину убирающею .
Подготовка к новому году уже идет полным ходом. Покупаются и наряжаются елки, вещаются гирлянды. Мы же .
Мы завершаем разрабатывать игру - Уборщик снега. Ресурсы для урока yadi.sk/d/WRV5nTGJkoAJP Композиция .
В принципе картинку картину нарисовать можно ну это надо мучаться в лопухи скорее всего они в ходе все это был pascal .
Рисуем Снеговика! Пришла зима и пора лепить Снеговиков! Но если снега еще мало, то можно их нарисовать! Маркеры .
Наш проект живет и развивается для тех, кто ищет ответы на свои вопросы и стремится не потеряться в бушующем море зачастую бесполезной информации. На этой странице мы рассказали (а точнее - показали :) вам Как нарисовать снеговика в pascal abc . Кроме этого, мы нашли и добавили для вас тысячи других видеороликов, способных ответить, кажется, на любой ваш вопрос. Однако, если на сайте все же не оказалось интересующей информации - напишите нам, мы подготовим ее для вас и добавим на наш сайт!
Если вам не сложно - оставьте, пожалуйста, свой отзыв, насколько полной и полезной была размещенная на нашем сайте информация о том, Как нарисовать снеговика в pascal abc .
Ответ от Ўрий[гуру]
program baba;
uses graph;
var a,b:integer;
begin
a:=detect;
initgraph(a,b,”);
setbkcolor(1);
Setcolor(15);
circle(358,183,36);
circle(358,287,70);
circle(358,475,115);
line(317,151,399,151);
line(317,151,340,100);
line(340,100,378,100);
line(378,100,399,151);
arc(358,183, 360,170,25);
circle(346,170,5);
circle(370,170,5);
ellipse (294,592,360,0,31,18);
ellipse (410,595,360,0,31,18);
line(288,287,183,393);
Line(212,364,212,406);
line(212,364,174,365);
line(427,287,507,393);
line(485,364,516,406);
line(536,365,485,365);
readln;
closegraph;
end.
Не проверял, напиши что получилось
Чтобы добавить хороший ответ необходимо:
Этого делать не стоит:
Есть сомнения?
Не нашли подходящего ответа на вопрос или ответ отсутствует? Воспользуйтесь поиском по сайту, чтобы найти все ответы на похожие вопросы в разделе Информатика.
Трудности с домашними заданиями? Не стесняйтесь попросить о помощи – смело задавайте вопросы!
Информатика — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность её использования для принятия решений.
Другие интересные вопросы и ответы
Почему Дисней решили сделать Эластикгерл такую большую попу?
procedure RLine(x, y, x1, y1: real):=Line(Round(x), Round(y), Round(x1), Round(y1));
procedure Draw(x, y, l: real; iterations: integer);
var lx := x + l * Cos(Angle);
var ly := y + l * Sin(Angle);
var rx := x + l * Cos(angle1);
var ry := y + l * Sin(angle1);
if iterations > 0 then
Draw(lx, ly, l, iterations);
Draw(rx, ry, l, iterations);
procedure RLine(x, y, x1, y1: real):=Line(Round(x), Round(y), Round(x1), Round(y1));
procedure Draw(x, y, l: real);
Draw(Window.Width / 2, Window.Height / 2, 100);
Чёртова лестница Кантора:
procedure RLine(x, y, x1, y1: real):=Line(Round(x), Round(y), Round(x1), Round(y1));
function Distance(x, y, x1, y1: real):= Sqrt(Sqr(x1 — x) + Sqr(y1 — y));
procedure Draw(x, y, x1, y1: real);
RLine(x + dx, my, x + 2 * dx, my);
if Distance(x, y, x1, y1) Volobuev 6
Как в паскаль ABC нарисовать полностью закрашенный треугольник?
Ты закрашиваешь ту точку, из которой рисуешь линию
закрашивай внутри треугольника
Как сделать овал под определенным углом в программе Pascal graphABC?
Привет. Под углом овал рисуется помощью кода, вот пример элипса под углом:
uses graphABC;
function rot_x(x,y:integer;t:real):integer;
begin
rot_x:=round(x*cos(t)-y*sin(t));
end;
function rot_y(x,y:integer;t:real):integer;
begin
rot_y:=round(x*sin(t)+y*cos(t));
end;
procedure ellips(x,y,a,b:integer;u:real; c:integer);
var sx,sy,rx,ry,i:integer;
du:real;
begin
sx:=x+rot_x(a,0,u);
sy:=y+rot_y(a,0,u);
setpencolor(c);
moveto(sx,sy);
du:=0;
for i:=1 to 38 do
begin
du:=du+pi/20;
rx:=round(a*cos(du));
ry:=round(b*sin(du));
lineto(x+rot_x(rx,ry,u),y+rot_y(rx,ry,u));
end;
lineto(sx,sy);
end;
var x0,y0:integer;
begin
x0:=windowwidth div 2;
y0:=windowheight div 2;
ellips(x0,y0,100,25,pi/4,clRed);
ellips(x0,y0,100,25,3*pi/4,clBlue);
end.
Тип урока: комбинированный урок
Оборудование: интерактивная доска, проектор, карточки-задания, презентация
I. Организационный момент
Приветствие ребят! Проверка присутствующих и готовность их к уроку!
II. Актуализация ЗУНов
Работа по карточкам
I вариант:
1) Переведите выражение из обычной записи в линейную:
2) Переведите выражение из линейной записи в обычную математическую:
3) Напишите программу нахождения значения выражения на языке программирования Pascal ABC:
II вариант:
1) Переведите выражение из обычной записи в линейную:
2) Переведите выражение из линейной записи в обычную математическую:
3) Напишите программу нахождения значения выражения на языке программирования Pascal ABC:
III вариант:
1) Переведите выражение из обычной записи в линейную:
2) Переведите выражение из линейной записи в обычную математическую:
3) Напишите программу нахождения значения выражения на языке программирования Pascal ABC:
III. Подготовка к изучению нового материала
Для того чтобы узнать тему нашего занятия, я предлагаю разгадать небольшой кроссворд.
Ключевое слово GRAPHICA.
IV. Объяснение нового материала
Компьютерная графика в Паскале – область информатики, изучающая методы и свойства обработки изображений с помощью программно-аппаратных средств.
Представление данных на компьютере в графическом виде впервые было реализовано в середине 50-х годов. Сначала, графика применялась в научно-военных целях.
Построение графических изображений в Паскале, исследование графиков функций, одной из важных и интересных тем программирования.
Обычно экран компьютера находится в символьном режиме, а для переключения экрана в графический режим необходимо подключение модуля graphABC. В результате этого, экран очищается и переходит в цветной графический режим.
При работе в графическом режиме изображение на экране строится из точек (пиксель). Каждый пиксель на экране имеет координаты (X,Y), которые образуются номерами столбцов (Х) и строк (Y). Нумерация начинается в верхнем левом углу. Именно в этом углу расположен пиксель с координатами (0,0). Координата Х растет вправо, координата Y – вниз.
Любая графическая картинка формируется из простых геометрических фигур. Это точки, отрезки (линии), прямоугольники, окружности и т.д. Графические координаты принимают только целочисленные значения.
Рисование различных геометрических фигур осуществляется с помощью специальных стандартных команд (процедур). Команды для работы в графическом режиме хранятся в библиотечном модуле GraphAbc, который описывается в разделе описаний с помощью зарезервированного слова Uses. В модуле GraphAbc с помощью команды setwindowsize(X,Y) можно задавать размеры графического окна.
По умолчанию графическое окно будет принимать размеры экрана компьютера.
Стандартные цвета с задаются символическими константами:
clBlack | черный | clYellow | желтый |
clWhite | белый | clNavy | темно-синий |
clRed | красный | clMaroon | темно-красный |
clGreen | зеленый | clPurple | фиолетовый |
clBrown | коричневый | clCream | кремовый |
clBlue | синий | clAqua | бирюзовый |
clSkyBlue | голубой | clOlive | оливковый |
clFuchsia | сиреневый | clTeal | сине-зеленый |
clGray | темно-серый | clMedGray | серый |
clLime | ярко-зеленый | clSilver | серебряный |
Процедура Line(x1,y1,x2,y2) вычерчивает прямую линию из точки (х1,y1) в точку (x2,y2) цветом установленным процедурой SetPenColor(c).
Процедура Rectangle(x1,y1,x2,y2) рисует прямоугольник, где (х1,y1) координаты верхней левой точки, а (х2,y2) – правой нижней.
Процедура FillRect(x1,y1,x2,y2: integer) – заливает прямоугольник, заданный координатами противоположных вершин (x1,y1) и (x2,y2), цветом текущей кисти.
Процедура Сircle(x,y,r) рисует окружность с центром в точке (х,y) и радиусом r.
Закрасить замкнутую фигуру можно с помощью процедуры FloodFill(х,у,c), (х,у) – координата точки внутренней области фигуры, c – цвет заливки.
Процедура СlearWindow(color) устанавливает цвет графического окна. Закрасить прямоугольник и круг можно, используя команду закраски кистью SetBrushColor (color).
Процедуры для ввода текста:
TextOut(x,y: integer; s: string) – выводит строку s в позицию (x,y) (точка (x,y) задает верхний левый угол прямоугольника, который будет содержать текст из строки s);
SetFontSize(size: integer) – устанавливает размер текущего шрифта в пикселях;
SetFontColor(c: Color) – устанавливает цвет текущего шрифта;
SetFontStyle(fs: integer) – устанавливает стиль текущего шрифта.
А теперь попробуем нарисовать домик вместе.
Пример программы рисования домика:
(преподаватель демонстрирует и объясняет, а обучающиеся повторяют каждую строчку)
Uses graphABC;
Begin
line(100,100,150,50);
line(150,50,200,100);
line(200,100,100,100);
floodfill(120,90,clgreen);
Измените размер домика и поменяйте цвета самостоятельно.
V. Практическая работа (закрепление изученного материала)
Напишите программу, рисующую снеговика и закрасьте его.
Какие процедуры вам для этого понадобятся?
Пример программы, рисующую снеговика.
Program snegovik; uses graphABC; begin FloodFill(50, 80, clYellow); ellipse(120, 350, 280, 480); circle(200, 300, 60); circle(200, 210, 40); line(170, 120, 230, 120); line(160, 180, 240, 180); line(170, 120, 160, 180); line(230, 120, 240, 180); floodfill(200, 173, clblack); floodfill(200, 123, clblack); setbrushcolor(clblack); circle(190, 200, 5); circle(210, 200, 5); line(200, 210, 220, 220); line(200, 220, 220, 220); line(200, 210, 200, 220); floodfill(204, 214, clblack); setpenwidth(5); line(210, 230, 190, 230); line(70, 320, 170, 250); line(230, 250, 330, 300); line(327, 450, 327, 200); circle(200, 265, 10); circle(200, 300, 10); circle(200, 338, 10); circle(200, 390, 10); circle(200, 428, 10); circle(200, 460, 10); end. |
VII. Домашнее задание
Написать в тетради программу, рисующую новогоднюю ёлку.
Работа с графикой в PascalABC
После запуска PascalABC, по умолчанию, запускается текстовый режим. Для работы с графикой служит отдельное графическое окно.
Чтобы его открыть, необходимо подключить модуль GraphABC. В этом модуле содержится набор процедур и функций, предназначенных для работы с графическим экраном, а также некоторые встроенные константы и переменные, которые могут быть использованы в программах с графикой.
С их помощью можно создавать разнообразные графические изображения и сопровождать их текстовыми надписями.
Подключение осуществляется в разделе описаний.
Формат подключения модуля GraphABC:Uses GraphABC;
Графический экран PascalABC (по умолчанию) содержит 640 точек по горизонтали и 400 точек по вертикали. Начало отсчета – левый верхний угол экрана. Ось x направлена вправо, а ось y –вниз. Координаты исчисляются в пикселях.
Все команды библиотеки GraphABC являются подпрограммами и описаны в виде процедур и функций. Для того, что бы команда выполнилась необходимо указать команду и задать значения параметров.
Управление графическим окном
После запуска PascalABC, по умолчанию, запускается текстовый режим. Для работы с графикой служит отдельное графическое окно.
Чтобы его открыть, необходимо подключить модуль GraphABC. В этом модуле содержится набор процедур и функций, предназначенных для работы с графическим экраном, а также некоторые встроенные константы и переменные, которые могут быть использованы в программах с графикой.
С их помощью можно создавать разнообразные графические изображения и сопровождать их текстовыми надписями.
Подключение осуществляется в разделе описаний.
Формат подключения модуля GraphABC:Uses GraphABC;
Графический экран PascalABC (по умолчанию) содержит 640 точек по горизонтали и 400 точек по вертикали. Начало отсчета – левый верхний угол экрана. Ось x направлена вправо, а ось y –вниз. Координаты исчисляются в пикселях.
Все команды библиотеки GraphABC являются подпрограммами и описаны в виде процедур и функций. Для того, что бы команда выполнилась необходимо указать команду и задать значения параметров.
Процедуры рисования графических примитивов
Процедуры, используемые для работы с цветом
Процедуры для работы с текстом
Цвета в PascalABC
Пример графической программы, рисующей изображение дома:
Рисунок в PascalABC
Программа, рисующая фигурку:
Практическая работа за компьютером
Задание 1. Определите координаты и составьте программу, выводящую на экран рисунок дома и дерева.
Программа будет иметь вид:
Задание 2. Используя оператор цикла и введя переменную для пересчета координат по оси x, постройте “поселок”, состоящий из 5 домов. Внесите соответствующие дополнения и изменения в предыдущую программу.
Выберем в качестве параметра цикла целочисленную переменную X.
Для всех элементов нашего рисунка абсолютное значение координаты X заменим на относительное. Например, для стены дома процедура для рисования запишется следующим образом:
Отличное подспорье в подготовке к уроку. Спасибо
Большое спасибо.Хорошо представлен материал, удобнее чем в справке языка.
Спасибо! Доступно и методически грамотно изложено.
Спасибо большое! Просто и доступно!
Прекрасно и доходчиво изложен материал.Очень мне помог.Спасибо
Давно пользуюсь Вашими разработками. Большое спасибо.
Ищу урок о преобразовании компьютерной системы координат в математическую в PascalABC.
Для Visual Basic у Вас такой урок есть.
Для работы с графикой в pascal abc используется модуль GraphABC. Для его подключения используется следующий код:
uses GraphABC; begin . end.
Система координат в Паскале соответствует экранной системе координат и выглядит следующим образом:
Управление цветом
Для того, чтобы использовать цвет, необходимо применить этот цвет к инструменту перо:
- SetPenColor(color) — устанавливает цвет пера, задаваемый параметром color;
- setBrushColor(color) — устанавливает цвет кисти, задаваемый параметром color;
- либо для палитры RGB: SetPenColor(rgb(0-255, 0-255, 0-255));
или использовать для заливки:
После чего можно использовать процедуры для рисования геометрических фигур.
clBlack – черный
clPurple – фиолетовый
clWhite – белый
clMaroon – темно-красный
clRed – красный
clNavy – темно-синий
clGreen – зеленый
clBrown – коричневый
clBlue – синий
clSkyBlue – голубой
clYellow – желтый
clCream – кремовый
clAqua – бирюзовый
clOlive – оливковый
clFuchsia – сиреневый
clTeal – сине-зеленый
clGray – темно-серый
clLime – ярко-зеленый
clMoneyGreen – цвет зеленых денег
clLtGray – светло-серый
clDkGray – темно-серый
clMedGray – серый
clSilver – серебряный
Точки, отрезки и ломаные
Для отображения точки в паскале используется процедура:
uses GraphABC; begin SetPixel(300,200,clred); end.
Для рисования линии используется:
uses GraphABC; begin SetPenColor(clgreen); line(100,50,500,250); end.
Ломаные можно рисовать с помощью процедур MoveTo (x1, y1) и LineTo (x2, y2) .
Процедуры работают в паре: MoveTo передвигает курсор в определенную точку, а процедура LineTo рисует линию с этой точки до точки, определенной параметром данной процедуры.
uses GraphABC; begin . SetPenColor(clblue); MoveTo (x1, y1); LineTo (x2, y2); LineTo (x3, y3); LineTo (x4, y4); LineTo (x5, y5); end.
Задание 0: При помощи операторов SetPenColor(), LineTo (x2, y2) и MoveTo (x1, y1) нарисовать квадрат и равносторонний треугольник.
[Название файла: L4_2task0.pas ]
Для установки размеров графического окна используется процедура
Рисование фигур
uses GraphABC; begin Rectangle(50,50,200,200); end.
uses GraphABC; begin Rectangle(50,50,200,200); FloodFill(100,100,clBlue); end.
Line(x1,y1,x2,y2);
LineTo(x,y);
uses GraphABC; begin setpenwidth(20); setpencolor(clred); moveTo(300,100); lineTo(500,300); lineto(100,300); lineto(300,100); floodfill(300,200,clgreen); end.
uses GraphABC; begin Circle(500,200,100); FloodFill(500,200,clred); end.
uses GraphABC; Begin SetPenWidth(10); Arc(300,250,150,45,135); end.
[Название файла: L4_2task1.pas ]
[Название файла: L4_2task2.pas ]
Функция random для использования окраски
Задание 3: Нарисовать горизонтальный ряд окружностей радиусом 10 на расстоянии 100 от верхнего края экрана и с такими горизонтальными координатами 50, 80, 110, 140, … , 290.
* раскрасить круги случайным цветом
[Название файла: L4_2task3.pas ]
[Название файла: L4_2task4.pas ]
Задание 5:
Воспроизвести изображение при помощи программы:
[Название файла: L4_2task5.pas ]
Нарисовать штриховку на Паскале можно, используя процедуры рисования прямоугольника и линии:
Программа будет выглядеть следующим образом:
uses graphABC; var i, x1, x2, y1, y2, N: integer; h, x: real; begin x1 := 100; y1 := 100; x2 := 300; y2 := 200; N := 10; Rectangle (x1, y1, x2, y2); h := (x2 - x1) / (N + 1); x := x1 + h; for i:=1 to N do begin Line(round(x), y1, round(x), y2); x := x + h; end; end.
[Название файла: L4_2task6.pas ]
Анимация в Паскале
Анимация в программировании заключается в том, что сначала рисуется фигура цветным инструментом, затем с тем же координатами рисуется та же фигура белым цветом. После чего происходит сдвиг фигуры и действия повторяются.
uses GraphABC; var x:integer; begin x:=40; repeat SetPenColor(clWhite); Circle(x,100,10); SetPenColor(clBlack); Circle(x,100,10); x:=x+1 until x>600; end.
Задание 7: Выполнить анимацию движения квадрата по следующей траектории:
Читайте также: