Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Программа стрелочного секундомера




LOOP

NEXT

END IF

SCREEN 12

NEXT

Как видим, программа очень несложна. Сделаем пояснения только к раскрашиванию. Здесь координата Y остается постоянной (240). Координата Х меняется таким образом, чтобы точка находилась внутри очередной окружности, хотя бы на один пиксель отступя от края (320+i*25-1).

 
 


Пример. Составим программу вывода текущего време­ни в формате ЧЧ-ММ-СС. Вывод цифр времени будем осуществлять большими “рисованными” символами (как, например, на рис.2.10.10).

t$ = " "

DO 'бесконечный цикл опроса времени

'если нажата какая-то клавиша

IF INKEY$<>"" THEN END 'завершение программы

IF t$<>TIME$ THEN 'если время изменилось

CLS 'экран очищается

t$ = TIME$ 'запоминается новое время

FOR i=1 TO 8 'перебор цифр времени

x$=MID$(TIME$, i, 1) 'выделение очередного символа времени

‘позиционирование точки начала рисования:

IF i = 1 THEN DRAW "bm40,80" 'позиция первой цифры часов

IF i = 2 THEN DRAW "bm110,80"

'тире часы-минуты

IF i = 3 THEN DRAW "bm185,80bm+0,+60r20d20l20u20"

IF i = 4 THEN DRAW "bm220,80" 'позиция первой цифры минут

IF i = 5 THEN DRAW "bm295,80"

'тире минуты-секунды

IF i = 6 THEN DRAW "bm370,80bm+0,+60r20d20l20u20"

IF i = 7 THEN DRAW "bm405,80" 'позиция первой цифры секунд

IF i = 8 THEN DRAW "bm475,80"

'вывод символов времени:

IF x$="1" THEN DRAW "r40d120r20d20l60u20r20u100l20u20"

IF x$="2" THEN DRAW "r60d80l40d40r40d20l60u80r40u40l40u20"

IF x$="3" THEN DRAW "r60d140l60u20r40u40l20u20r20u40l40u20"

IF x$="4" THEN DRAW "r20d60r20u60r20d140l20u60l40u80"

IF x$="5" THEN DRAW "r60d20l40d40r40d80l60u20r40u40l40u80"

IF x$="6" THEN DRAW

"r60d20l40d40r40d80l60u140bm+20,+80r20d40l20u40”

IF x$="7" THEN DRAW "r60d60g30d50l20u50e30u40l40u20"

IF x$="8" THEN DRAW

"r60d140l60u140 bm+20,+20r20d40l20u40bm+0,+60r20d40l20u40"

IF x$="9" THEN DRAW

"r60d140l60u20r40u40l40u80bm+20,+20r20d40 l20u40"

IF x$="0" THEN DRAW "r60d140l60u140bm+20,+20r20d100l20u100"

Здесь в переменную t$ заносится символьное значение времени с помощью функции TIME$. В бесконечном цикле производится опрос нажатия клавиши. Нажатие любой клавиши является сигналом завершения программы (IF INKEY$<>"" THEN END). Если в очередном цикле произошло изменение значения времени, экран очищается и запоминается новое время. Далее прос­матриваются все восемь символов строки времени. Первая группа операторов IF в зависимости от номера символа, фиксирует текущие координаты в нужном месте экрана. Следующая группа операторов IF выводит уже изображение нужного символа, начиная с этой точки.

 
 


Пример. Составим программу, отобража­ющую стрелочный секундомер (только секун­дную стрелку). В левом верхнем углу экрана (рис.2.10.11) отоб­разим уже в числовом виде текущее время и число секунд от начала работы программы. Для вычисления абсолютного числа прошедших секунд (DS) из текущего времени (TIME$) извлекаются две цифры часов и умножаются на 360, плюс число минут, умноженных на 60, плюс просто число секунд (переменная S). Это значение является точкой отсчета для секундомера, который работает три минуты (180 секунд) от запуска программы. Важным является преобразование числа секунд в угол поворота стрелки. Заметим, что одна минута равна шести градусам и отсчет градусов идет от горизонтальной оси, а минут – от вертикальной, т.е. следует отнять 90 градусов.




Поделиться с друзьями:


Дата добавления: 2014-12-27; Просмотров: 459; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.