Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
TURBO PASCAL.doc
Скачиваний:
41
Добавлен:
09.06.2015
Размер:
948.74 Кб
Скачать

А можно и так:

Const

A: Array[1..10] of String =

('Одна из строк массива',

'Очередная строка массива',

............

'Очередная строка массива');

begin

.......

end.

Это знакомый нам вариант с предопределением переменных.

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

Представьте себе строку, движущуюся по экрану - сначала горизонтально к центру, а потом падающую вниз. Что это? Это пример самой, что ни на есть анимации. Реализовываться она путем вывода строки с последующим ее затиранием. Похожий пример мы разбирали в задаче N1, где выводились здезды с последующим затиранием их пробелом.

Итак, мы нужно выводить строки и после их затирать. Это несложно, как мне кажестся. Дальше нужно разобраться с самим движением, а точнее со способом передвижения строки по экрану. Из предыдущих задач известно, что для отображения строки в определенном месте экрана надо перевести курсор в место с необходимыми координатами, после чего уже вывести строку. Координаты нужно изменять в двух циклах - сначала будем двигаться горизонтально от края к центру, после вниз до конца. И опять, по новой - но уже с другим элементом массива, то есть с другой строкой.

Циклы предстоит реализовать вам :) равно как и необходимые действия по анимации. Я же расскажу, как состаить общий план алгоритма работы, которого вам предстоит придерживаться.

Итак, программа будет работать следующим образом:

  • Пока пользователь не захочет выйти (не нажата клавиша Esc и т.п.) делаем:

    • Увеличиваем индекс строки (новая строка массива)

  1. Выводим текущую строку в ее координаты (горизонтально);

  2. Выполняем необходимые действия по анимации;

  3. Изменяем координаты;

  4. Выводим текущую строку в ее координаты (вертикально);

  5. Выполняем необходимые действия по анимации;

  6. Изменяем координаты;

Вот такие вот действия. Все достаточно просто, однако вам уже предстоит выполнить больше действий, чем в прошлых программах. Но они очень простые, так что думаю, что сложностей не возникнет. Посмотреть, как работает предложенный нами вариант программы можно как всегда на сайте http://prog.agava.ru.

Домашнее задание

Предлагаю вашему вниманию несколько задач для самостоятельного рассмотрения. Очень рекомендую попробовать решить их, используя приведенные мной примеры составления решений и алгоритмов. Поседите с бумагой и ручкой, возможно что-то и не будет получаться с первого раза - не беда, дальше обязательно выйдет. Главное - помните, при хорошем рассмотрении и разложении по полочкам любая из этих задач вам по силам.

Итак, задачи:

1

Написать программу, чтобы слово съезжалось с боков экрана по буквам

2

Написать программу, к-ая переворачивает вводимое слово задом наперед.

3

Написать программу-меню. Выбор какого-либо пункт осуществляется по вводу его номера с клавуатуры. При этом должны писаться разные сообщения.

4

Написать программу "строки состояния". Строка экрана постепенно заполняется минусами "-". Строка останавливается каждый раз в разном месте. В следующей строчке выводится процент заполнения. Вариант: строка до конца, процент заполнения выводится динамически.

5

Написать программу-калькулятор (Мы также вместе замемся этим в дальнешем, я предложу свой вариант калькулятора)

6

Написать программу "ввода пароля". Запрашивается пароль, очищается экран, затем дается три попытки его ввести.

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

Занимайтесь, ибо это и есть двигатель на пути к успеху!

Вопросы- ответы

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