Форум программистов, компьютерный форум, киберфорум
Free Pascal
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 21.06.2020
Сообщений: 7
1

Нарисовать ёлочку

13.07.2022, 11:02. Показов 618. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Написать программу для решения задачи с использованием процедур и функций компьютерной графики из модуля Graph на языке программирования высокого уровня Pascal.

Нарисовать фигуру «ёлочка», состоящую из n
подобных правильных треугольников с коэффициентом подобия k. Передвигать ёлочку согласно действиям пользователя. При передвижении менять цвет случайным образом.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.07.2022, 11:02
Ответы с готовыми решениями:

Практика душит
Очень нужна помощь в написании следующих программ: 1.Реализовать на ЕОМ алгоритм разветвлённой...

практика группы вт и по 22
1)Числа a и b выражают длины катетов одного прямоугольного треугольника , а c и d другого. эти...

Практика на Pascal ABC
Вообщем ищу интузиастов для решения сборника задач на Pascal ABC, задачи есть а ответов, нету :)...

Практика структура приложения
1.Объявление ссылочного типа для адресации элементов списка 2.Объявление записи структуры...

Теннис(летняя практика)
«Теннис». Написать программу, имитирующую игру в теннис. Игровое поле представляет собой...

1
Эксперт Pascal/Delphi
2386 / 1298 / 1492
Регистрация: 29.08.2014
Сообщений: 4,661
07.09.2022, 09:30 2
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
uses wingraph,wincrt;
const a=10;
      sqrt3=sqrt(3);
var
  driver,mode:integer;
  n,i,hn,y,x0,y0,an:integer;
  k:real;
  p:array[1..4] of pointtype;
begin
  randomize;
  writeln('n=');readln(n);
  writeln('k=');readln(k);
//  writeln (k:5:2,n:10);
  if (k<=1) or (k>5.0) or (n<1) or (n>10) then begin
    writeln('Error in ranges: k between (1..5] and n between [1..10]');
    readln;
    exit;
  end;
  driver:=SVGA;
  mode:=m640x480;
  initGraph(driver,mode,'Triangles. A-left, D-right, W-Up, S-down, Esc-exit');
  x0:=GetMaxX div 2;
  y:=GetMaxY-1;
  repeat
    y0:=y;
    clearviewport;
    setfillstyle(SolidFill,random(15)+1);
    for i:=n downto 1 do begin
      an:=round(a*k*i/2);//тут косяк с подобием
      hn:=round(an*sqrt3);
       p[1].X:=x0-an;p[1].Y:=y0;
       p[2].X:=x0;p[2].Y:=y0-hn;
       p[3].X:=x0+an;p[3].Y:=y0;
       p[4]:=p[1];
       FillPoly(4,p);
      y0:=y0-hn;
     end;
   case ReadKey of
    #27:exit;//esc-exit
    'a','A':dec(x0);//left
    's','S':inc(y);//down
    'w','W':dec(y);//up
    'd','D':inc(x0);//right
   end;
  until false;
  closeGraph;
end.
модули wingraph и wincrt тут Как подключить мышь в graph
0
07.09.2022, 09:30
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.09.2022, 09:30
Помогаю со студенческими работами здесь

Двумерные массивы (теория+практика)
Всем привет. Помогите разобраться с решением задач на двумерные массивы. Дайте теорию на эту тему и...

Парни практика горит!!!помогите пожалуйста
помогите с этим рисунком с клавиатуры вводится точка М с координатами х и у вычислить принадлежит...

Практика
Добрый день....у меня проблемы с несколькими задачами...выкладываю файл... Заранее спасибо.

Практика по программированию
Помогите пожалуйста с заданием

Практика по алгоритмизации
Обработка двухмерных массивов. 1. В данной действительной квадратной матрице порядка N*N: найти...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru