Графика pascalabc.NET

Узнай цену своей работы

Формулировка задачи:

Ввести с клавиатуры число линий и построить фигуру

Решение задачи: «Графика pascalabc.NET»

textual
Листинг программы
uses graphABC;
var n,da,db,x1,y1,x2,y2:integer;
begin
repeat
write('Введите количество точек от 2 до 50 n=');
readln(n);
until n in [2..50];
clearwindow;
da:=(windowwidth-100)div (n-1);//расстояние между точками ввверху
db:=da div 4;//то же внизу
if odd(n) then//если n нечетное
 begin
  x1:=windowwidth div 2-da*(n div 2);
  x2:=windowwidth div 2-db*(n div 2);
 end
else //если четное
 begin
  x1:=windowwidth div 2-da*(n div 2-1)- da div 2;
  x2:=windowwidth div 2-db*(n div 2-1)- db div 2;
 end ;
y1:=50;
y2:=windowheight-50;
for var i:=0 to n-1 do
line(x1+i*da,y1,x2+i*db,y2);
line(x1,y1,x1+(n-1)*da,y1);
line(x2,y2,x2+(n-1)*db,y2);
end.

Объяснение кода листинга программы

  1. Ввод количества точек от 2 до 50.
  2. Очистка окна.
  3. Вычисление расстояния между точками вверху и внизу.
  4. Если количество точек нечетное, то вычисление координат двух точек.
  5. Если количество точек четное, то вычисление координат двух точек.
  6. Вычисление координат нижней границы первой линии.
  7. Вычисление координат верхней границы первой линии.
  8. Вычисление координат нижней границы второй линии.
  9. Вычисление координат верхней границы второй линии.
  10. Цикл по рисованию линий.
  11. Рисование верхней линии.
  12. Рисование нижней линии.
  13. Рисование вертикальной линии слева.
  14. Рисование вертикальной линии справа.
  15. Конец программы.

Оцени полезность:

13   голосов , оценка 4.231 из 5
Похожие ответы