Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...
Топ:
Методика измерений сопротивления растеканию тока анодного заземления: Анодный заземлитель (анод) – проводник, погруженный в электролитическую среду (грунт, раствор электролита) и подключенный к положительному...
Устройство и оснащение процедурного кабинета: Решающая роль в обеспечении правильного лечения пациентов отводится процедурной медсестре...
История развития методов оптимизации: теорема Куна-Таккера, метод Лагранжа, роль выпуклости в оптимизации...
Интересное:
Подходы к решению темы фильма: Существует три основных типа исторического фильма, имеющих между собой много общего...
Уполаживание и террасирование склонов: Если глубина оврага более 5 м необходимо устройство берм. Варианты использования оврагов для градостроительных целей...
Принципы управления денежными потоками: одним из методов контроля за состоянием денежной наличности является...
Дисциплины:
2021-06-23 | 38 |
5.00
из
|
Заказать работу |
|
|
Поставим перед собой задачу, получить на экране следующую картину: два кружка радиусами R1 и R2 и цветами с1 и с2 движутся навстречу друг другу. В точке соприкосновения на их месте вырастает круг радиусом R1+R2 и цветом кружка большего радиуса.
Начальное положение: Результат:
Сложно подсчитать количество шагов до столкновения, поэтому и затруднительно будет использовать цикл с параметром для решения данной задачи.
Из условий задачи можно определить, что координата по вертикали остается неизменной. Пусть (Х1,Y) и (Х2,Y) – координаты центров заданных кружков.
Координаты по горизонтальной оси будут изменяться в противоположных направлениях (Х1 от R1, Х2 от 639-R2 до столкновения). В какой точке произойдет встреча трудно подсчитать, но можно определить условие, при котором они встретятся.
Из рисунка видно, что разница между центрами кружков должна быть равна сумме радиусов (Х2-Х1=R1+R2). Значит, кружки будут двигаться, пока выполняется условие Х2-Х1>R1+R2.
Когда известно условие, при котором необходимо повторять определенную серию действий, используют цикл с предусловием.
Формат:
WHILE условие работы цикла
тело цикла
WEND
WHILE, WEND – служебные слова;
Условие – строится по тому же принципу, что и в условном операторе, оно будет проверяться перед каждым шагом работы цикла. Если оно заведомо ложно, то и цикл не выполнится ни разу.
Тело цикла – серия операторов, которая будет повторяться, пока условие работы не будет нарушено. В теле цикла обязательно должны быть операторы, выполнение которых влияет на изменение истинности условия, иначе цикл не остановится (произойдет зацикливание).
|
Дословно конструкцию можно прочитать так: Пока условие истинно, выполняй тело цикла.
Вернемся к заданию. Подведем итоги.
Данные величины:
R1 – радиус первого кружка; с1 – цвет первого кружка;
R2 – радиус второго кружка; с2 – цвет второго кружка;
Y – высота движения кружков;
Решение:
Х1=R1 – начало движения первого кружка;
X2=639-R2 – начало движения второго кружка;
X2-X1>R1+R2 – условие движения;
С каждым шагом цикла при истинном условии, выполняются следующие действия:
1. изображаются кружки с центрами (Х1,Y) и (Х2,Y), радиусами R1 и R2, соответственно, и цветами с1 и с2, соответственно;
2. задерживаем изображение;
3. стираем;
4. Х1 увеличивается на шаг (возьмем шаг равный 1 пикселю);
5. Х2 уменьшается на аналогичный шаг;
После выхода из цикла, координаты центра нового шара (Х1+R1, Y). Цвет определим с помощью условного оператора, сравнив с1 и с2.
Программа:
CLS
PRINT “введите высоту движения, радиусы кружков и их цвета”
INPUT Y, R1, R2, C1, C2
X1=R1
X2=639-R2
SCREEN 12
WHILE X2-X1>R2+R1
CIRCLE(X1, Y), R1, C1
PAINT(X1, Y), C1, C1
CIRCLE(X2, Y), R2, C2
PAINT(X2, Y), C2, C2
FOR W=1 TO 1000
NEXT W
LINE (X1-R1, Y-R1)-(X1+R1, Y+R1), 0, BF
LINE (X2-R2, Y-R2)-(X2+R2, Y+R2), 0, BF
X1=X1+1
X2=X2-1
WEND
X=X1+R
R=R1+R2
IF R1>R2 THEN C=C1 ELSE C=C2
CIRCLE(X, Y), R, C
PAINT(X, Y), C, C
END
|
|
Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...
Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...
Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...
Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!