Нарисовать 4 вида стрелы - Turbo Pascal

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

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

Нужно нарисовать стрелу повёрнутую влево, право, вверх , вниз. Как сделать чтоб можно было выбрать какое изображение строится? Например нажимают "1" -влево "2"- вправо "3"-вверх "4"-вниз Вот изображения стрел Вправо:
Влево:
Вверх
Вниз:
Правильное изображение. Вверх

Решение задачи: «Нарисовать 4 вида стрелы»

textual
Листинг программы
uses graph,crt;
const x=320;
      y=240;
      a=220;
procedure strela(k1x,k1y,k2x,k2y,k3x,k3y:integer);
var h,x1,y1,x2,y2,x3,y3:integer;
begin
x1:=x+k1x*a;
y1:=y+k1y*a;
h:=a div 5;
x2:=x1+k2x*h;
y2:=y1+k2y*h;
x3:=x1+k3x*h;
y3:=y1+k3y*h;
line(x,y,x1,y1);
line(x1,y1,x2,y2);
line(x1,y1,x3,y3);
line(x2,y2,x3,y3);
readln;
restorecrtmode;
end;
var g,d:integer;
    w:char;
begin
repeat
clrscr;
writeln('1-left');
writeln('2-right');
writeln('3-up');
writeln('4-down');
writeln('else - exit');
readln(w);
case w of
'1':begin
    initgraph(g,d,'');
    strela(-1,0,1,1,1,-1);
    end;
'2':begin
    initgraph(g,d,'');
    strela(1,0,-1,1,-1,-1);
    end;
'3':begin
    initgraph(g,d,'');
    strela(0,-1,-1,1,1,1);
    end;
'4':begin
    initgraph(g,d,'');
    strela(0,1,-1,-1,1,-1);
    end;
end;
until not(w in ['1'..'4']);
end.

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

  1. Подключаются необходимые библиотеки graph и crt.
  2. Задаются начальные значения переменных x, y, a.
  3. Создается процедура strela, которая принимает 5 аргументов k1x, k1y, k2x, k2y, k3x, k3y типа integer.
  4. Внутри процедуры используются локальные переменные h, x1, y1, x2, y2, x3, y3 типа integer.
  5. Выполняются следующие действия:
    • x1 и y1 вычисляются как среднее арифметическое от x и y с множителем a.
    • h вычисляется как a, деленное на 5.
    • x2 и y2 вычисляются как среднее арифметическое от x1 и y1 с множителем h.
    • x3 и y3 вычисляются как среднее арифметическое от x1 и y1 с множителем 3*h.
  6. Выводятся линии на экран с помощью функции line.
  7. Восстанавливается режим экрана с помощью функции restorecrtmode.
  8. В основной части программы в цикле повторяется следующее:
    • Выводится приглашение для ввода выбора действия.
    • Считывается ввод пользователя.
    • Проверяется введенный вариант.
    • Если введенный вариант соответствует одному из ожидаемых вариантов, то выполняется соответствующий код.
    • Если введенный вариант не соответствует ожидаемым вариантам, то программа завершается.
  9. Программа завершается после того, как были проверены все варианты ответа.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

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