Помощь - Поиск - Пользователи - Календарь
Полная версия: Новогодняя елка
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
at0m
Во-первых , всем привет !
Зовут меня Андрей , или просто at0m , хочу выучиться на програмера , сейчас в 11 классе , и вот у меня возникла поблема и поэтому ребята обращаюсь к вам за помощью ...
Я хочу сделать елку с гарляндами на паскале , но никак не получается , помогите мне плз...
Из 4-5 способов я не нашел подходящий вариант для елки ( все корявые ) , обращаюсь к вам за советом...
Спасибо , и всех с наступающим !
Если что мои контакты вы сможете посмотреть у меня в профиле. Вроде бы все , жду ответа rolleyes.gif
klem4
Ну ты покажи те 4-5 вариантов которые тебе кажутся корявыми, что бы было понятно что не надо делать ..

А вообще придумаваешь покруче как будет выглядеть один "ярус" елки и запускаешь рекурсию ;)
at0m
Цитата(klem4 @ 26.12.2005 13:32) *

Ну ты покажи те 4-5 вариантов которые тебе кажутся корявыми, что бы было понятно что не надо делать ..

А вообще придумаваешь покруче как будет выглядеть один "ярус" елки и запускаешь рекурсию ;)

4-5 варианты не удачные , я даже их не сохранял
А если честно , то я пока не крутой программер и делал яруса как получиться , вот поэтому прошу помощи

Ярус smile.gif у меня и этого не получалось , а ты уж рекурсию smile.gif
я хочу увидеть есть ли норм способ сотворить в этом чуде елку
volvo
Цитата
я хочу увидеть есть ли норм способ сотворить в этом чуде елку
Способ есть всегда... Все зависит только от твоей фантазии. Как пример первого наброска - вот такая "елка". Поиграйся с коэффициентами при вычислении Arc (да и со всеми остальными тоже), можешь добавить случайный выбор цвета (зеленый/темно-зеленый), дорисуй шарики - будет тебе елка...

uses Crt, Graph;

const
RStart = 40;

var
grDriver: Integer;
grMode: Integer;
ErrCode: Integer;

x, y, R: integer;
i, j: integer;
begin
grDriver := Detect;
InitGraph(grDriver, grMode,'');
ErrCode := GraphResult;
if ErrCode = grOk then
begin { Do graphics }

setcolor(lightgreen);

for j := 2 to 6 do begin
y := (getmaxy div 10) * j;
R := RStart + 15*j;

for i := 1 to 5 do begin
arc((getmaxx div 2) - R, y, 350-(R div 5)-8*j, 359, R);
arc((getmaxx div 2) + R, y, 181, 190+(R div 5)+8*j, R);
inc(y, 7);
inc(R, 5);
end;
end;

Readln;
CloseGraph;
end
else
Writeln('Graphics error:', GraphErrorMsg(ErrCode));
end.


Можно посмотреть у нас в FAQ-е пример фрактального дерева, там тоже есть коэффициенты, которые можно менять...
at0m
Спасибо большое , шарики я сделаю как нибудь сам , а елка красивая , еще раз спасибо smile.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.