Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...
Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...
Топ:
Теоретическая значимость работы: Описание теоретической значимости (ценности) результатов исследования должно присутствовать во введении...
Марксистская теория происхождения государства: По мнению Маркса и Энгельса, в основе развития общества, происходящих в нем изменений лежит...
Установка замедленного коксования: Чем выше температура и ниже давление, тем место разрыва углеродной цепи всё больше смещается к её концу и значительно возрастает...
Интересное:
Средства для ингаляционного наркоза: Наркоз наступает в результате вдыхания (ингаляции) средств, которое осуществляют или с помощью маски...
Аура как энергетическое поле: многослойную ауру человека можно представить себе подобным...
Что нужно делать при лейкемии: Прежде всего, необходимо выяснить, не страдаете ли вы каким-либо душевным недугом...
Дисциплины:
2021-06-23 | 29 |
5.00
из
|
Заказать работу |
|
|
5) Перемещение объекта по экрану.
Представим, что экран монитора это ночное небо, а на нем перемещается спутник (белая точка). Напишем фрагменты программы, перемещающие спутник по горизонтали слева направо и справа налево, по вертикали вниз и вверх, по диагоналям в ту и другую стороны. В любом из указанных случаев, фрагмент программы должен реализовать алгоритм:
В цикле от начального положения до конечного:
а) рисуем точку;
б) задерживаем;
в) стираем точку, наложив на нее черную;
г) изменяем координаты местоположения точки, на нужный шаг с помощью оператора присваивания или (и) автоматически.
Фрагменты программ могут выглядеть так:
Вид движения | Фрагмент программы | Пояснение |
Y=240 FOR X=0 TO 640 PSET(X,Y),15 FOR W=1 TO 500 NEXT W PSET(X,Y),0 NEXT X | При движении вдоль оси Х изменяется соответствующая координата (автоматически, как параметр), можно добавить шаг, тогда движение будет скачками. | |
Y=240 FOR X=640 TO 0 STEP -1 PSET(X,Y),15 FOR W=1 TO 500 NEXT W PSET(X,Y),0 NEXT X | При движении вдоль оси Х изменяется соответствующая координата (автоматически, как параметр), но в обратном направлении (шаг отрицательный) | |
X=320 FOR Y=0 TO 480 PSET(X,Y),15 FOR W=1 TO 500 NEXT W PSET(X,Y),0 NEXT Y | При движении вдоль оси Y изменяется соответствующая координата (автоматически, как параметр), можно добавить шаг, тогда движение будет скачками. | |
X=320 FOR Y=480 TO 0 STEP -1 PSET(X,Y),15 FOR W=1 TO 500 NEXT W PSET(X,Y),0 NEXT Y | При движении вдоль оси Y изменяется соответствующая координата (автоматически, как параметр), но в обратном направлении (шаг отрицательный) | |
X=0 FOR Y=0 TO 480 STEP 2 PSET(X,Y),15 FOR W=1 TO 500 NEXT W PSET(X,Y),0 X=X+3 NEXT Y Так как экран не квадрат, то координату X нужно изменятьри движении вдоль оси хковую четностьрдинаты с большим шагом. | При движении по диагонали изменяются обе координаты. По вертикали экран короче, поэтому ось Y удобней изменять автоматически, как параметр, а X – с помощью присваивания. | |
X=640 FOR Y=480 TO 0 STEP -2 PSET(X,Y),15 FOR W=1 TO 500 NEXT W PSET(X,Y),0 X=X-3 NEXT Y | Изменяются обе координаты. Ось Y автоматически, как параметр (шаг отрицательный, т.к. движение к 0), а X – с помощью присваивания (значение координаты тоже стремится к 0). | |
X=640 FOR Y=0 TO 480 STEP 2 PSET(X,Y),15 FOR W=1 TO 500 NEXT W PSET(X,Y),0 X=X-3 NEXT Y | Изменяются обе координаты. Ось Y автоматически, как параметр, а X – с помощью присваивания (значение координаты уменьшается). | |
X=0 FOR Y=480 TO 0 STEP - 2 PSET(X,Y),15 FOR W=1 TO 500 NEXT W PSET(X,Y),0 X=X+3 NEXT Y | Изменяются обе координаты. Ось Y автоматически, как параметр (шаг отрицательный, т.к. движение к 0), а X – с помощью присваивания (значение координаты увеличивается). |
Задание:
|
Написать программу движения мяча произвольного радиуса, по фиксированной траектории в форме треугольника. Движение осуществляется по часовой стрелке. Треугольник изображать не нужно.
Решение:
Пусть радиус мяча будет вводиться с клавиатуры и храниться в переменной R.
Мяч движется вначале из точки (80,400) до точки (320, 160), затем до точки (560, 400) и возвращается в точку (80,400). Это движение может реализоваться при последовательном использовании трех циклов с параметром. Данные точки будут центрами окружности, изображающей мяч. Стирать мяч будем с помощью черного квадрата, описанного около окружности. В программе будет реализован следующий алгоритм:
1. Вводим значение радиуса;
2. Зафиксируем значение переменной х=80;
3. В цикле с параметром у от 400 до 160 с отрицательным шагом:
|
а) рисуем мяч;
б) задерживаем;
в) стираем;
г)изменяем координату по оси х с помощью оператора присваивания на величину шага со знаком «+».
4. В цикле с параметром у от 160 до 400 с положительным шагом:
а) рисуем мяч;
б) задерживаем;
в) стираем;
г)изменяем координату по оси х с помощью оператора присваивания на величину шага со знаком «+».
5. В цикле с параметром х от 560 до 80 с отрицательным шагом:
а) рисуем мяч;
б) задерживаем;
в) стираем.
Программа:
CLS
PRINT “введите радиус мяча”
INPUT R
X=80
FOR Y=400 TO 160 STEP -1
CIRCLE(X, Y), R, 4
PAINT(X, Y), 4, 4
FOR W=1 TO 500
NEXT W
LINE(X-R, Y-R)-(X+R, Y+R), 0, BF
X=X+1
NEXT Y
FOR Y=160 TO 400
CIRCLE(X, Y), R, 4
PAINT(X, Y), 4, 4
FOR W=1 TO 500
NEXT W
LINE(X-R, Y-R)-(X+R, Y+R), 0, BF
X=X+1
NEXT Y
FOR X=560 TO 80 STEP -1
CIRCLE(X, Y), R, 4
PAINT(X, Y), 4, 4
FOR W=1 TO 500
NEXT W
LINE(X-R, Y-R)-(X+R, Y+R), 0, BF
NEXT Y
END
Задания для самостоятельного решения:
1. Написать программу движения ракеты от одного края экрана к другому.
|
|
Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...
Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...
Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!