Студопедия
rus | ua | other

Home Random lecture






Символьные и строчные переменные.


Date: 2015-10-07; view: 352.


Tablum

Tabl1

Tabl

 

 

 

 

 

DIM tabl1(1 TO 3 ,1 TO 4) AS INTEGER

 

 

 

 

С помощью двумерного массива 9х9 и двух вложенных циклов можно легко составить программу, реализующую таблицу умножения. Сомножителями будут значения индексов строк и столбцов, а их произведения будут значениями элементов массива.

DIM tablum(1 TO 9 ,1 TO 9) AS INTEGER

 

 

 

 

REM Таблица умножения
DIM tabum(1 TO 9, 1 TO 9) AS INTEGER
REM Заполнение массива - создание таблицы умножения
FOR I=1 TO 9
FOR J=1 TO 9
tabum(I, J)=I*J
NEXT J
NEXT I
REM Вывод массива на экран в виде таблицы
FOR I=1 TO 9
FOR J=1 TO 9
PRINT tabum(I,J);
NEXT J
PRINT
NEXT I
END

Пример: В таблице 3х4 вычислить количество отрицательных элементов, сумму четных элементов, произведение элементов второй строки.

REM вычислить количество...
DIM tabl(1 TO 3, 1 TO 4) AS INTEGER
REM Заполнение массива
FOR I=1 TO 3
FOR J=1 TO 4
INPUT "Введите элемент массива:", tabl(I, J)
NEXT J
NEXT I
REM Вывод массива на экран в виде таблицы
CLS
FOR I=1 TO 3
FOR J=1 TO 4
PRINT tabl(I,J);
NEXT J
PRINT
NEXT I
REM требуемые вычисления
k=0
s=0
p=1
FOR I=1 TO 3
FOR J=1 TO 4
IF tabl(I, J)<0 THEN k=k+1
IF tabl(I, J) MOD 2 = 0 THEN s=s+tabl(I, J)
IF I=2 THEN p=p*tabl(I, J)
NEXT J
NEXT I
PRINT
PRINT "результ:"
PRINT "отрицательных элементов: ", k
PRINT "сумма четных элементов: ", s
PRINT "произведение элементов второй строки: ",p
END

.

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

Строки - последовательность алфавитно-цифровых символов.

Для того, чтобы использовать такие переменные в программе необходимо их соответствующим образом объявить. Для этого используется уже известный оператор DIM.

DIM s AS STRING
s="Cтрока123"

Или добавлять справа от переменной символ $.

s$="Тоже строка 987"

Пример: Эта программа выводит на экран две строки. Обратите внимание на два способа использования и объявления строковых переменных.

DIM stroka AS STRING
stroka="Один"
stroka2$="Два"
PRINT stroka
PRINT stroka2$
END

Еще пример: Та же программа, но с ОШИБКАМИ. Не указано, то что наши переменные строчные.

REM ЗДЕСЬ ОШИБКИ
stroka="Один"
stroka2="Два"
PRINT stroka
PRINT stroka2
END

Строчные переменные можно склеивать и сравнивать друг с другом. Для склеивания строк (конкатенации) используют знак плюс (+).

Пример.

REM конкатенация строк
s1$="Привет! "
s2$="Меня зовут Саша."
s$=s1$+s2$
PRINT s$
END

На экране появится надпись: Привет! Меня зовут Саша.

Для сравнения срок используют операции: >, <, =, >=, <=, <>.

Пример:

REM Сравнение строк
s1$="abc"
s2$="abc"
s3$="klmn"
IF s1$=s2$ THEN PRINT "Строки равны"
IF s1$=s3$ THEN PRINT "Строки равны"
END

Программа выведет "Строки равны только один раз".

Функции для работы со строками:

LEN(s$) Вычисляет длину строки (количество символов).
MID$(s$,n,k) Выделяет из строки s$ k символов начиная с n-го символа.
VAL(s$) Преобразует числовую часть начала строки в число.
STR$(x) Преобразует число в символьную форму.
ASC(s$) Вычисляет десятичный код символа.
CHR$(x) Преобразует код в символ.
INKEY$ Функция опроса клавиш, нажатых на клавиатуре.

Пример: составить программу подсчитывающую, количество букв "а" в предложении.

REM кол-во букв "а"
INPUT "Введите предложение", s$
FOR I=1 TO LEN(s$)
IF MID$(s$,I,1)="а" THEN k=k+1
NEXT
PRINT "Кол-во букв а =", k
END

Пример: Заменить все буквы "а" в предложении на буквы "о".

REM замена букв
ss$=""
INPUT "Введите предложение", s$
FOR I=1 TO LEN(s$)
IF MID$(s$,I,1)="а" THEN
ss$=ss$+"о"
ELSE
ss$=ss$+MID$(s$,I,1)
END IF
NEXT
PRINT "Исправленная строка: ", ss$
END

Пример: Получить предложение в обратном порядке следования символов.

REM обратный порядок букв
ss$=""
INPUT "Введите предложение", s$
FOR I=LEN(s$) TO 1 STEP -1
ss$=ss$+MID$(s$,I,1)
NEXT
PRINT "Исправленная строка: ", ss$
END


<== previous lecture | next lecture ==>
Массивы. Двумерные массивы. | Подпрограммы. Процедуры.
lektsiopedia.org - 2013 год. | Page generation: 0.003 s.