Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Функции для работы с текстами
Функция 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$ 'Вывод: Париж, Сиэтл
Date: 2015-07-24; view: 374; Нарушение авторских прав |