Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
TurboBasic.doc
Скачиваний:
18
Добавлен:
21.11.2019
Размер:
493.57 Кб
Скачать
    1. Моделирование хода часов.

Применение знаний из геометрии требует задача моделирования хода часов. Ниже будет рассмотрена модель движения секундной стрелки часов.

О дин конец секундной стрелки неподвижен и находится в центре часов, а другой обращается вокруг него. Его координаты изменяются следующим образом:

X=R*COS(I)+320

Y=R*SIN(I)+175

Значение переменной I меняется с шагом 1/60 окружности от верхнего положения –PI/2 до полного оборота 44*PI/30. Для регулировки хода часов вводим цикл задержки.

Программа: "ход секундной стрелки".

CLS: PI=3.142

FOR I=-PI/2 TO 44*PI/30 STEP PI/30

LINE(320,175)-(X,Y),0

X=80*COS(I)+320

Y=80*SIN(I)+175

LINE(320,175)-(X,Y),1

FOR T=1 TO 2000: NEXT T

NEXT I

Несложно дополнить программу минутной и часовой стрелкой.

Программа: механические часы.

CLS: PI=3.142

FOR I2=-PI/2 TO 8*PI/6 STEP PI/6

LINE(320,175)-(X2,Y2),0

X2=50*COS(I2)*320

Y2=50*SIN(I2)+175

FOR I1=-PI/2 TO 44*PI/30 STEP PI/30

LINE(320,175)-(X1,Y1),0

X1=50*COS(I1)*320

Y1=50*SIN(I1)+175

FOR I=-PI/2 TO 44*PI/30 STEP PI/30

LINE(320,175)-(X,Y),0

LINE(320,175)-(X1,Y1),2

LINE(320,175)-(X2,Y2),3

X=80*COS(I)+320

Y=80*SIN(I)+175

LINE(320,175)-(X,Y),1

FOR T=1 TO 2000: NEXT T

NEXT I

NEXT I1

NEXT I2

Задания для самостоятельной работы.

  1. Расставить метки и цифры (12, 3, 6, 9) на циферблате.

  2. Изобразить контуры часов.

  3. Снабдить часы функциями установки времени.

  4. Смоделировать будильник.

    1. Программирование справочных систем.

Ряд задач требует организации вывода каких-либо справочных данных. Например: математические формулы, физические законы, исторические даты и т.п. При этом содержание справочного материала определяется меню – на экран выводится несколько пунктов в которых можно производить выбор. Выбор пункта производится перемещением курсора с последующим нажатием клавиши {Enter}. Возврат в меню производится по нажатию пробела.

Рассмотрим программу, которая позволяет получить информацию о законах Ньютона. Она состоит из меню и трех блоков, содержащих формулировки законов Ньютона. Выбрав соответствующий пункт меню пользователь получает справку об одном из законов. Для окончания работы предусмотрен пункт меню "Выход".

При составлении программы полезно использовать следующую схему:

МЕНЮ

ВЫБОР ИНФОРМАЦИИ: УСТАНОВИТЬ КУРСОР НА НОМЕР БЛОКА И НАЖАТЬ КЛАВИШУ {Enter}

1 Закон ньютона

2 Закон ньютона

3 Закон ньютона

ВЫХОД

ВОЗВРАТ В МЕНЮ – КЛАВИША {ПРОБЕЛ}

Рассмотрим основные элементы программы.

"Заставка"

CLS

?"ЗАКОНЫ НЬЮТОНА"

?"СПРАВОЧНАЯ СИСТЕМА"

?"НАЖМИТЕ ПРОБЕЛ"

10 A$= INKEY$

IF A$<>" " THEN 10

"Меню"

CLS

?"МЕНЮ"

……………

    1. Программирование игр.

Диалоговый режим работы позволяет реализовывать игровые программы, где компьютер генерирует случайные числа, необходимы практически в любой игре, а также может выступать в роли партнера. В качестве вариантов игр, легко поддающихся программированию, такие как "Морской бой", "Быки и коровы", "Бросание костей". Чтобы избежать громоздких программ, условия некоторых игр упрощаются по сравнению с существующими правилами.

В качестве примера рассмотрим реализацию игры "Морской бой". Игра происходит между двумя участниками, один из которых компьютер, на игровом поле 5х5 клеток. Каждый из участников расставляет на поле 5 одноклеточных катеров (катера могут касаться друг друга). При попадании в катер при очередном ходе он считается уничтоженным. Побеждает уничтоживший первым катера противника. Если участник во время очередного хода уничтожил катер противника, то он ходит еще раз. Компьютер расставляет катера случайным образом. Партнер вводит координаты катеров с клавиатуры.

Программа состоит из трех блоков:

  1. заставка: название игры, авторы, краткая информация о правилах игры;

  2. Игровое поле

ВВЕДИТЕ КООРДИНАТЫ ДЛЯ БОМБОМЕТАНИЯ:

Х:

У:

БРАВО АДМИРАЛ! ВЫ ПОПАЛИ!

ПРОДОЛЖИТЬ БАТАЛИЮ (Д/Н)?

Вводятся координаты 5 катеров и они выставляются на игровое поле. Первый ход делает компьютер. В месте выстрела на игровом поле ставится кружок. По нажатию клавиши {Enter} игровое поле очищается для Вашего выстрела, а в правом верхнем углу запрос о вводимых координатах. В случае попадания на экране появляется надпись "Попал!", в случае промаха "Мимо". Игра заканчивается после того как выявляется победитель.

  1. Итоги игры: попадание с 10 выстрелов –присуждается орден; с 15 – медаль; с 20 –похвала. Предлагается повторная игра.

Рассмотрим основные элементы программы.

"Координатная сетка"

FOR I=1 TO 6

LINE(20*I,20)-(20*I,120),2

LINE(20,20*I)-(120,20*I),2

NEXT I

"Установка катеров компьютером"

RANDOMIZE TIMER

DIM A(4,4)

FOR I=0 TO 4

FOR J=0 TO 4

A(I,J)=INT(RND+0.5)

NEXT J,I

"Ввод координат катеров играющего и проверка попадания"

INPUT "X=";X

INPUT "Y=";Y

IF A(X,Y)=1 THEN 10

?"Мимо"

CIRCLE(20*X+10,20*Y+10),3,3

10 ?"Попал"

LINE(20*X,20*Y)-(20*X+20,20*Y+20),2

Задания для самостоятельной работы.

  1. Создать поле 10х10, выставлять 10 кораблей.

  2. Создать второе поле, где будет отражаться расположение катеров противника.

  3. Расставлять один четырехклеточный, два трехклеточных, три двухклеточных и четыре одноклеточных катера. Добиться того чтобы корабли при расстановке не касались друг друга.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]