Помощь - Поиск - Пользователи - Календарь
Полная версия: Графический "Чудо-домик"
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
nadja yak
привет, уважаемые программисты.
учусь в старших классах.Учимся мы на это презентации ниже выложу её голубушку.
Слайд №103
Графика в Паскале -там домик.
Программа создана для обучения учеников, только вот не пойму, как обучать,если программа не рабочая.Япервый раз сталкиваюсь с графикой.Будте любезны,исправте ошибку в программе с домиком, чтоб впоследствии мне по этому образцу делать и другие работы! Буду признательна!
=====>>> презентация внизу.
вот код,если не скачаете
program qq;
begin
Pen(2, 255, 0, 255);
Brush(1, 0, 0, 255);
Rectangle(100, 100, 300, 200);
MoveTo(100, 100);
LineTo(200, 50);
LineTo(300, 100);
Brush(1, 255, 255, 0);
Fill(200, 75);
Pen(2, 255, 255, 255);
Brush(1, 0, 255, 0);
Ellipse(150, 100, 250, 200);
end.

Я так подозреваю, тут нет графического модуля? Как это всё оформить, чтоб заработало? boredom.gif boredom.gifНажмите для просмотра прикрепленного файла

http://rghost.ru/5237242
volvo
Цитата
как обучать,если программа не рабочая
Что значит "не рабочая"? Рабочая. К.Ю.Поляков пишет на Алго ( скачать можно здесь: http://petriv.ho.com.ua/algo/rus/index.php ), в этом интерпретаторе как раз все прекрасно рисуется...
nadja yak
Спасибо! не знала!
Lapp
Цитата(volvo @ 18.04.2011 20:06) *
в этом интерпретаторе как раз все прекрасно рисуется...
И все же странно, что речь идет о Паскале
Цитата(nadja yak @ 18.04.2011 19:13) *
Графика в Паскале -там домик.
- но при этом дается пример на некотором другом языке..

Цитата
Я так подозреваю, тут нет графического модуля?
Твои подозрения совершенно беспочвенны. В TurboPascal есть графический модуль Graph, который считается классическим и благодаря этому воспроизведен в более поздних средах - FreePascal, например. Конечно, этот модуль безнадежно устарел (как и сам TP), но раз уж у вас такой план обучения - что ж тут сделаешь..

Цитата
Как это всё оформить, чтоб заработало?
Я "перевел" этот твой проимер на Паскаль (модуль Graph), придерживаясь оригинала, насколько это было возможным. Кое-где пришлось транслировать один вызов в два. Также, добавилось обычное паскалевское окружение (подключение модуля, объявление переменных, инициализация графики..) Я оставил все оригинальные строки, большинство их поместив в комментарии.

program qq;
uses
Graph;

var
gd,gm: integer;

begin
gd:= Detect;
InitGraph(gd,gm,'');
{Pen(2, 255, 0, 255);}
SetColor(Magenta);
SetLineStyle(SolidLn,0,3);
{Brush(1, 0, 0, 255);}
SetFillStyle(SolidFill,LightBlue);
{Rectangle(100, 100, 300, 200);}
Bar(100,100,300,200);
Rectangle(100, 100, 300, 200);

{эта группа остается без изменений}
MoveTo(100, 100);
LineTo(200, 50);
LineTo(300, 100);

{Brush(1, 255, 255, 0);}
SetFillStyle(SolidFill,Yellow);
{Fill(200, 75);}
FloodFill(200,75,Magenta);
{Pen(2, 255, 255, 255);}
SetColor(White);
{Brush(1, 0, 255, 0);}
SetFillStyle(SolidFill,LightGreen);
{Ellipse(150, 100, 250, 200);}
Ellipse(200, 150, 0, 360, 50, 50);
FloodFill(200,150,White);

ReadLn;
CloseGraph
end.

Если что-то не пойдет (запросто может не инициализироваться графика, если у тебя путь к модулям не прописан или bgi файл не там..) - задавай вопросы.
volvo
Цитата
но при этом дается пример на некотором другом языке.
Язык и компилятор/интерпретатор - разные вещи. Да, изучение ведется на Паскале но для этого используется не FPC/Turbo/PascalABC, а Алго. Можно было сходить по ссылке, там написано:
Цитата
АЛГО - это интерпретатор языка Паскаль в системе Windows.


Хотя, о чем это я. Это только избранным можно требовать реакции на свой пост, и извинений за то, что он остался без внимания. Правда? От избранных этого ожидать глупо, они будут писать то, о чем их не просили даже после того, как ответ на вопрос уже получен...

Заметь, -1 ты не получил... Хотя следовало бы...
Lapp
Цитата(volvo @ 19.04.2011 14:07) *
Язык и компилятор/интерпретатор - разные вещи.
Именно.
Я сужу по тому, что вижу. А вижу я, что модули не подключены, хотя используются сторонние процедуры, и тогда это уже не совсем Pascal. По традиции (идущей от Borland), такой привилегией пользуется только модуль System. Хотя, конечно, ничего такого страшного в этом нет, и я готов признать, что.. (см. ниже)

Цитата
Да, изучение ведется на Паскале но для этого используется не FPC/Turbo/PascalABC, а Алго. Можно было сходить по ссылке, там написано:
Я не склонен слепо верить всему написанному. Но с учетом вышесделанных оговорок я могу это принять. Да, это можно считать мелким отступлением от языка. Беру назад свои слова о "другом языке" и извиняюсь за неточность. Спасибо, volvo, что исправил мою ошибку.

Цитата
Хотя, о чем это я. Это только избранным можно требовать реакции на свой пост, и извинений за то, что он остался без внимания.
Не надо только передергивать. Я упомянул о твоем посте (даже с цитатой) и сказал свое мнение. То, что оно оказалось ошибочным, дела не меняет.
А за передергивание тебе еще один -1 norespect.gif Поставлю, когда пройдут сутки с того.

Цитата
Правда? От избранных этого ожидать глупо, они будут писать то, о чем их не просили даже после того, как ответ на вопрос уже получен...
У каждого свое представление о том, что "просили/не просили". Я высказал свое мнение, что и предполагается делать на форумах со времен еще Древнего Рима. Ты не забыл, что зашел именно на форум, а не в свой огород? volvo, прекрати юродствовать. На форуме у всех есть право высказываться, ошибаться и исправлять ошибки (как чужие, так и свои). Будь добр, помни это.

Цитата
Заметь, -1 ты не получил... Хотя следовало бы...
Вот, пожалуйста, поясни - за что "следовало бы"? За высказывание своего мнения? Еще раз: я сделал то понижение за игнорирование предыдущего поста в теме (как и сказано в ремарке). Или ты все же думаешь, что я недостаточно обсудил твой ответ в тему? Второе ты получишь за искажение фактов. Вот мои основания. Пожалуйста, поясни свои.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.