Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

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





 

Функция LEN предназначена для определения длины символьного выражения

Формат:

LEN (текст)

Функция определяет длину значения строкового выражения.

Например:

T$=”Москва”

K=LEN(T$)

PRINT “длина текста = “;K

<На экране появится: длина текста = 6>

В QBASIC существует несколько функций, позволяющих выделять символы из текстового выражения.

Функция LEFT$ возвращает строку символов из n левых символов

Формат:

LEFT$ (текст, n)

Например:

T$=”контрабас”

A$=LEFT$(T$,6)

? A$

<На экране появится: контра>

Функция RIGHT$ возвращает строку символов из n правых символов

Формат:

RIGHT$ (текст,n)

Например:

T$=”контрабас”

A$=RIGHT$(T$,3)

? A$

<На экране появится: бас>

Если число n больше длины текста, то обе функции возвращают весь исходный текст.

Функция MID$ (возвращает фрагмент из текста: n символов, начиная с k-го символа.

Формат:

MID$ (текст,k,[n])

К – порядковый номер символа.

N – количество символов, подлежащих обработке.

Например:

T$=”информатика”

A$=MID(T$,3,5)

? A$

<На экране появится: форма>

Если n не указано, то функция возвращает символы начиная с к-го и до конца текста.

Например:

T$=”Москва, Париж и Лондон”

A$=MID(T$,9)

? A$

<На экране появится: Париж и Лондон>

Пример 1. Задан текст. Подсчитать каких букв в тексте больше “а” или “о” и на сколько.

LINE INPUT “введите текст”;T$

L=LEN(T$)

KA=0: KO=0

FOR I=1 TO L

IF MID$(T$,I,1)=”A” OR MID$(T$,I,1)=”a” THEN KA=KA+1

IF MID$(T$,I,1)=”O” OR MID$(T$,I,1)=”o” THEN KO=KO+1

NEXT I

IF KA>KO THEN PRINT “Букв а больше, чем о на “;KA-KO

IF KO>KA THEN PRINT “Букв o больше, чем a на “;KO-KA

IF KA=KO THEN PRINT “Букв а и о равное количество “

Пример 2. Задан текст. Подсчитать сколько предложений в тексте.

LINE INPUT “введите текст”;T$

L=LEN(T$)

К=0

FOR I=1 TO L

IF MID$(T$,I,1)=”.” OR MID$(T$,I,1)=”!” OR MID$(T$,I,1)=”?” THEN K=K+1

NEXT I

PRINT “В тексте “;K;” предложений”

Пример 3. Дано слово “информатика”. Составить из букв этого слова 3 новых слова.

T$=”информатика”

T1$=MID$(T$,3,3)+MID$(T$,7,1)

T2$=MID$(T$,5,1)+LEFT$(T$,1)+MID$(T$,3,1)+MID$(T$,6,2)

T3$=MID$(T$,2,1)+MID$(T$,4,2)+RIGHT$(T$,2)

PRINT T1$;”, “;T2$;”, “;T3$

<на экране появится: фора, рифма, норка>

Пример 4. Дано слово. Выяснить является ли это слово перевертышем, то есть читается слева направо и наоборот одинаково. Например “казак”.

LINE INPUT “Введите слово”;T$

M$=””

FOR I=LEN(T$) TO 1 STEP -1

M$=M$+MID$(T$,I,1)

NEXT I

IF T$=M$ THEN PRINT “Да является” ELSE PRINT “Нет не является”

 

Для самостоятельного решения:

Задание1:

Задано слово “энциклопедия”. Кто составит больше слов из букв этого слова и кто составит самое длинное слово

Задание 2:

Задано слово. Напечатать это слово в обратном порядке.

Задание 3:

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

 

Функция INSTR ищет подстроку в строке начиная с позиции n. Если n не задано, то поиск осуществляется с первой позиции. Функция INSRT дает номер позиции, начиная с которой заданная подстрока появляется в исходной строке. Функция возвращает 0, если подстрока не найдена в строке.

Формат:

INSTR ([n],текст,подстрока)

Например:

T$=”информатика”

A$=”форма”

N=INSTR(1,T$,A$)

? N

<На экране появится: 3>

 

Пример 1. Задан текст. Подсчитать сколько раз в тексте встречается словосочетание “кот”.

1 способ:

LINE INPUT “Введите текст”;T$

L=LEN(T$)

FOR I=1 TO L

IF MID(T$,I,3)=”кот” THEN K=K+1

NEXT I

? “Количество словосочетаний кот = ”;K

2 способ:

LINE INPUT “Введите текст”;T$

T=INSTR(1,T$,”кот”)

WHILE T<>0

K=K+1

T=INSTR(T+1,T$,”кот”)

WEND

? “Количество словосочетаний кот = ”;K

 

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

LINE INPUT “Введите текст”;T$

T1=INSTR(1,T$,”:”)

T2=INSTR(T1+1,T$,”:”)

PRINT MID$(T$,T1+1,T2-T1-1)

Пример 3. Задан текст. Подсчитать количество слов в первом предложении. Слова разделены пробелом.

1 способ

LINE INPUT “Введите текст”;T$

K=1

PT=INSTR(T$,”.”)

FOR I=1 TO PT

IF MID$(T$,I,1)=” “ THEN K=K+1

NEXT I

PRINT”Количество слов в первом предложении=”;K

2 способ

LINE INPUT “Введите текст”;T$

K=1

I=1

WHILE MID$(T$,I,1)<>”.”

IF MID$(T$,I,1)=” “ THEN K=K+1

I=I+1

WEND

PRINT”Количество слов в первом предложении = ”;K

Пример 4. Задан текст. Подсчитать количество слов «ученик» в последнем предложении.

LINE INPUT “Введите текст”;T$

K=0

I= Len(T$)-1

WHILE MID$(T$,I,1)<>”.”

B$= MID$(T$,I,8)

IF B$=” ученик “ OR B$=” Ученик “ THEN K=K+1

I=I-1

WEND

PRINT”Количество слов ученик в последнем предложении = ”;K

 

Оператор MID$ замещает часть строковой переменной другой строкой.

MID$(строк_переменная$,k[,n])=строк_выражение$

строк_выражение$ - строка, из которой функция MID$ возвращает подстроку, или строка замещения, используемая в операторе MID$. Может быть любым строковым выражением.

K - позиция первого возвращаемого или замещаемого символа в строке.

N - число символов в подстроке. Если длина опущена, MID$ возвращает или замещает все символы справа от начальной позиции.

строк_переменная$ - строковая переменная, изменяемая оператором MID$.

 

Пример:

Text$ = "Париж, Франция"

PRINT Text$ 'Вывод: Париж, Франция

MID$(Text$, 8) = "Сиэтл "

PRINT Text$ 'Вывод: Париж, Сиэтл

 







Дата добавления: 2015-09-06; просмотров: 342. Нарушение авторских прав; Мы поможем в написании вашей работы!




Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...


ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...


Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...


Логические цифровые микросхемы Более сложные элементы цифровой схемотехники (триггеры, мультиплексоры, декодеры и т.д.) не имеют...

Характерные черты официально-делового стиля Наиболее характерными чертами официально-делового стиля являются: • лаконичность...

Этапы и алгоритм решения педагогической задачи Технология решения педагогической задачи, так же как и любая другая педагогическая технология должна соответствовать критериям концептуальности, системности, эффективности и воспроизводимости...

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

Приложение Г: Особенности заполнение справки формы ву-45   После выполнения полного опробования тормозов, а так же после сокращенного, если предварительно на станции было произведено полное опробование тормозов состава от стационарной установки с автоматической регистрацией параметров или без...

Измерение следующих дефектов: ползун, выщербина, неравномерный прокат, равномерный прокат, кольцевая выработка, откол обода колеса, тонкий гребень, протёртость средней части оси Величину проката определяют с помощью вертикального движка 2 сухаря 3 шаблона 1 по кругу катания...

Неисправности автосцепки, с которыми запрещается постановка вагонов в поезд. Причины саморасцепов ЗАПРЕЩАЕТСЯ: постановка в поезда и следование в них вагонов, у которых автосцепное устройство имеет хотя бы одну из следующих неисправностей: - трещину в корпусе автосцепки, излом деталей механизма...

Studopedia.info - Студопедия - 2014-2025 год . (0.01 сек.) русская версия | украинская версия