Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лабораторки по информатике.doc
Скачиваний:
18
Добавлен:
06.11.2018
Размер:
9.06 Mб
Скачать

1.10.5. Вопросы для самопроверки

1. Зачем нужны функции пользователя? Как они определяются?

2. Что такое формальный параметр? Каково соответствие между формальными и фактическими параметрами?

3. В каком месте БЭЙСИК-программы должен находиться оператор DEF?

4. Каким образом должна быть оформлена подпрограмма?

5. Чем отличается оператор GOTO от оператора GOSUB?

6. Поясните механизм передачи управления во вложенных циклах?

Лабораторная работа № 1.11 ( C:\USER\GROUP\NOF\lab11.bas )

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

1.11.1. Цель работы. Получение практических навыков алгоритмизации и программирования цепочек текстовых переменных при формировании изображения типа “ шахматная доска”.

1.11.2. Справочный материал. В алгоритмическом языке БЭЙСИК наряду с арифметическими константами и переменными используются текстовые константы и переменные. Для описания текстовых величин используется специальный символ $, так например, для описания текстовой переменной А , а также массива T, имеющего 5 компонент, необходимо записать A$ и DIM T$(4).

С текстовыми переменными нужно работать так же, как и с арифметическими, т.е. их можно вычитать, складывать и так далее, тем самым формировать цепочки текстовых переменных разной длины, использовать их в операторах IF, INPUT, READ, PRINT и т. д.

1.11.3. Пример. Подготовить и организовать алгоритм формирования изображения типа “ шахматная доска” по заданному правилу чередования “звездочек”( * ) и пробелов, приведенному ниже. При этом длина текстовой цепочки ( число звездочек и пробелов ) равна 30, а число столбцов и строк в группе соответственно равно 5 и 3:

__________________________________

!*****! !*****! !*****! !

!*****! !*****! !*****! !

!*****! !*****! !*****! !

! !*****! !*****! !***** !

! !*****! !*****! !***** !

! !*****! !*****! !***** !

!*****! !*****! !*****! !

!*****! !*****! !*****! !

!*****! !*****! !*****! !

! !*****! !*****! !***** !

! !*****! !*****! !***** !

! !*****! !*****! !***** !

!_________________________________!

Текст БЭЙСИК-программы алгоритма формирования изображения типа “шахматная доска” с использованием цепочек текстовых переменных приводится ниже:

CLS

10 DIM T$( 2 )

20 FOR I = 0 TO 2

30 READ T$( I ): NEXT I

40 DATA ------------

50 DATA *****

60 DATA ! !

70 S$ = “ “: G$ = “ “: O$ = “ “

80 FOR K = 1 TO 3

90 O$ = O$ + T$( 0 )

100 S$ = S$ + T$( 1 ) +T$( 2 )

110 G$ = G$ + T$( 2 ) +T$( 1 )

120 NEXT K

130 PRINT O$

140 FOR I = 1 TO 2

150 FOR J = 1 TO 3

160 PRINT S$: NEXT J

170 FOR J = 1 TO 3

180 PRINT G$: NEXT J

190 NEXT I

200 PRINT O$

210 END

Итак, в 10-й строке программы описано три элемента текстового массива T$ с номерами: 0, 1, 2.

В 20-60 строках считываются три разных структуры текстовых компонент массива T$, необходимых для формирования рамки и поля “шахматной доски”, а 70 строка необходима для того, чтобы текстовые переменные O$, S$, G$ задать пустыми (“обнулить”). Текстовые переменные T$(1) и T$(2) формируются в цепочки в цикле по k в строках 80-120. При этом T$(1) представляет собой “элементарную ячейку”, состоящую из пяти “звездочек”, а T$(2) имеет пять пробелов, ограниченных по краям восклицательными знаками. Компонента T$(0) состоит из двенадцати минусов (5 +5 +2) и формирует рамку доски (верхнюю кромку в 130 строке, а нижнюю - в 200-й).

1.11.4. Задание к лабораторной работе. Подготовить и организовать на ПЭВМ алгоритм формирования изображения типа “шахматная доска” по заданному правилу чередований звездочек и пробелов согласно табл. 1.11.1.

Таблица 1.11.1

Номер варианта

Длина текстовой цепочки

Число столбцов в группе

Число строк

в группе

1

18

3

3

2

24

3

3

3

24

4

4

4

30

5

4

5

20

5

5

6

16

2

3

7

20

2

2

8

32

4

5

9

24

6

5

10

24

3

3

11

24

3

5

12

32

8

7

13

20

10

10

14

28

7

7

15

18

9

8