![]() Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву ![]() Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Другие функции необходимые для работы со строкамиСодержание книги
Поиск на нашем сайте
Asc(str) – код первого символа строки Str Chr(code) – символ с кодом code по таблице ASCII Join(Array,[break]) – преобразует строковый массив Array в строку. Элементы массива разделены строкой break или пробелом. Split(str[,break[, count]]) – Преобразует строку str в массив break – разделитель элементов, count – количество элементов необходимых для обработки. Вместо разделителя по умолчанию - пробел LCase(str) – все символы строки str переводит в нижний регистр UCase(str) – все символы строки str переводит в верхний регистр Left(str, len) – возвращает len символов строки str слева Right(str, len) – возвращает len символов строки str справа
RTrim(str) – удаляет из строки str начальные, конечные или те и другие пробелы Trim(str) Space(x) – строка из x пробелов String(number, char)-строка из number символов char (указывается код) Replace(source, pattern, replacewith[, start[, count]]) – заменяет вхождения pattern в source на replacewith, начиная со start. Count указывает количество замен.
Переводят число x в восьмеричную или шестнадцатеричную систему счисления виде строки OCT(x) Основные функции для работы с датой и временем: Date – возвращает текущую дату IsDate(слово) – Проверяет является ли данной «слово» датой. MonthName(numb,[abbr]) – возвращает название месяца по номеру, [абр.] – в сокращенном виде. Now – возвращает текущие дату и время Time – текущее время. Timer – количество секунд прошедших с полуночи Weekday(date[,первый день недели]) – возвращает номер дня недели по дате, если нужно считает первым днем номер, указанный в параметре. WeekdayName(weekday[,abbr[,]первый день недели])- возвращает НАЗВАНИЕ дня недели по номеру. ДЕМОНСТРАЦИОННЫЕ ПРИМЕРЫ Пример 1 ' Имя файла ASCII.vbs ' Программа выводит таблицу ASCII-кодов option explicit '--------------------------------------- sub ASCII(N,M) dim i dim a a="" For i=N to M a=a&CStr(i)&" - "&chr(34)&chr(i)&Chr(34)&"; " Next msgbox a,,"Вывод таблицы ASCII" end sub '--------------------------------------- ASCII 32,129 ASCII 130,200 ASCII 201,255 Пример 2 'Имя файла Len_+_Mid.vbs 'Демонстрация операции конкатенации "+" 'а также функций работы со строками Len и Mid
option explicit dim str MsgBox "Демонстрация функции Len, которая возвращает длину строки" str=CStr(inputbox("Введите строку","Окно ввода","Первая строка")) Msgbox "Длина строки "&chr(34)&str&chr(34)&" - "&CStr(len(str))
dim str1,str2,str3 MsgBox "Демонстрация операции конкатенации "+" "
str1=CStr(inputbox("Введите параметр","Введите первую строку","")) str2=CStr(inputbox("Введите параметр","Введите вторую строку","")) str3=CStr(inputbox("Введите параметр","Введите третью строку",""))
dim concat 'конкатенация строк concat=str1+str2+str3 Msgbox "Конкатенация трех строк: "&chr(34)&concat&chr(34)
MsgBox "Демонстрация функции Mid, которая возвращает подстроку строки" str=CStr(inputbox("Введите последовательность символов","","")) dim start 'начало вырезки start=CInt(inputbox("Введите целое положительное число",_ "Введите начало вырезки","0")) dim length length=CInt(inputbox("Введите целое положительное число",_ "Введите длину вырезки",Cstr(len(str)))) Msgbox "mid из "&chr(34)&str&chr(34)&vbcrlf&_ " - "&chr(34)&mid(str,start,length)&chr(34),0,"Результат" Пример 3 'Имя файла Udvoenie.vbs 'Программа удваивает каждую букву введенного слова
option explicit dim str str=Cstr(Inputbox("Введите слово","Удвоение букв")) dim i dim str1 str1="" for i=1 to len(str) str1=str1+mid(str,i,1)+mid(str,i,1) next msgbox "Результат: "&str1 Пример 4 'Имя файла Palindrom.vbs 'Программа проверяет является ли строка палиндромом. 'Палиндром - слово, которое читается одинаково слева на право и справа налево
option explicit dim str, STR1, RTS dim i str=CStr(inputbox("Введите параметр","Введите строку","")) STR1=Ucase(str) ' Переводим символы строки в верхний регистр STR1=replace(STR1," ","") ' Удаление пробелов RTS="" 'Записываем слово в обратном порядке For i=1 to len(STR1) RTS=Mid(STR1,i,1)+RTS Next msgbox str&": полиндром - "&(RTS=STR1) Пример 5 'Имя файла Dva_podryad.vbs 'Программа определяет есть ли в строке два одинаковых подряд идущих символа
dim otvet otvet="нет" dim str str=Inputbox("Введите строку","Поиск двух повторяющиеся подряд букв в строке") dim i For i=1 to len(str)-1 If Mid(str,i,1)=Mid(str,i+1,1) Then otvet="есть" End If Next msgbox "В "&str&" "&otvet&" 2 одинак. букв. подр.",,"Результат:" Пример 6 'Имя файла A_or_B.vbs 'Программа определяет, какая из букв встречается раньше а или б.
option explicit dim str str=Inputbox("Введите строку","Кто раньше "&Chr(34)&"а"&Chr(34)&" или "&_ Chr(34)&"б"&Chr(34)) dim rez rez="Тут нет ни а ни б"
dim i i=0 str=LCase(str)
Do i=i+1 If Mid(str,i,1)="а" Then rez="А встретилось раньше" End if If Mid(str,i,1)="б" Then rez="Б встретилось раньше" End if loop until Mid(str,i,1)="а" or Mid(str,i,1)="б" or (i>len(str)) msgbox rez,,"Результат:" Пример 7 'Имя файла Podslovo.vbs 'Подсчёт сочетаний «Кря» во введенном слове
option explicit dim str str=Inputbox("Введите строку","Поиск подслова кря:") str=LCase(str) ' Переводим элементы строки в нижний регистр dim i dim s dim fstr 'то подслово что ищем fstr="кря" s=0 For i=1 to (len(str)-len(fstr)+1) If mid(str,i,len(fstr))=fstr Then s=s+1 End If Next msgbox fstr&" повторяется в слове "&str&" "&Cstr(s)&" раз" Пример 8 ' Имя файла Cifra_v_chisle.vbs 'Встречается ли цифра в числе
'------------------------------------- function Poisk(chislo,cifra) chislo=Cstr(chislo) cifra=Cstr(cifra) dim i poisk=Cbool(false) i=1 While mid(chislo,i,1)<>cifra and i<=len(chislo) i=i+1 WEnd If i<=len(chislo) Then poisk=Cbool(true) End If end function '-------------------------------------- dim chislo, cifra msgbox "Программа определяет, встречается ли введённая цифра"&_ " в введённом числе" chislo=Inputbox("Введите число") cifra=Inputbox("Какой цифрой Вы интересуетесь") If IsNumeric(chislo) and IsNumeric(cifra) and len(cifra)=1 Then chislo=CDbl(chislo) Cifra=CByte(cifra) If poisk(chislo,cifra) Then msgbox "Такая цифра есть" Else msgbox "Такой цифры нет" End If Else msgbox "Вы ввели неправильную строку" End If Пример 9 ' Имя файла Summa_kubov.vbs 'Программа находит все числа не превосходящие суммы кубов цифр
dim ch ch=Cint(Inputbox("Введите число")) dim i,j dim s dim str str="" For i=0 to ch s=0 For j=1 to Len(Cstr(i)) s=s+Cint(Mid(Cstr(i),j,1))^3 Next If Cint(s)=Cint(i) Then str=str+Cstr(i)+"; " End If Next msgbox str ЗАДАЧИ ДЛЯ САМОСТОЯТЕЛЬНОГО РЕШЕНИЯ Модификаторы 1. Напишите программу замены в слове X всех букв "а" на сочетание "ку". 2. Напишите программу, записывающую слово X в обратном порядке. 3. Напишите программу замены всех сочетаний "ку" в слове X на букву "а". 4. Напишите программу, выделяющую в слове Х все буквы "о" символами "пробел". Например, слово "сосна" должно быть преобразовано в "с о сна". 5. Напишите программу, удваивающую каждую букву слова Х. 6. Напишите программу, выделяющую в слове Х каждую букву "о" с помощью буквы "-" слева и справа. 7. Замените в слове Х все буквы "а" на сочетание "ку", а сочетание "ку" на букву "б". 8. В слове Х перед каждой буквой "к", которой предшествует буква"с", вставить букву "н". 9. Напишите программу циклической перестановки букв в слове X так, что i-я буква слова становится (i+1)-ой, а последняя - первой. 10. В слове X замените букву "а" на букву "е", если "а" стоит на чётном месте, и замените букву "б" на сочетание "ак", если "б" стоит на нечётном месте. 11. Напишите программу, заменяющую в слове X все буквы "а" и "я" на сочетание "йа". 12. Напишите программу, исправляющую следующую ошибку в математическом тексте: tg(x)=cos(x)/sin(x). 13. Напишите программу, заменяющую окончание "ing" каждого слова, встречающегося в заданном предложении, на "ed". 14. Город Гжатск получил новое название - "Гагарин". Напишите программу, осуществляющую в тексте замену слова "Гжатск" словом "Гагарин" (учесть, что слова имеют разную длину!) 15. Реализуйте двухместную операцию, называемую в языке программирования APL вращением, которая берет первые К символов слова X и помещает их в конец этого слова. 16. Дана последовательность слов, в каждом из которых от до 10 латинских букв; между соседними словами - не менее одного пробела.
Напечатайте все слова, отличные от последнего слова, предварительно преобразовав каждое из них по следующему правилу: (1) перенести первую букву в конец слова; (2) перенести последнюю букву в начало слова. 17. Отредактируйте заданное предложение, удаляя из него все слова с нечётными номерами и переворачивая слова с чётными номерами. Например, текст "How do you do" должен преобразоваться в "od od". 18. Напишите программу, которая в заданном тексте меняет все вхождения символа "а" на "б" и "б" на "а". Например, текст "шайба" преобразуется в текст "шбйаб". 19. Измените предыдущую программу так, чтобы она заменяла по указанному правилу любые два различные символа. 20. Напишите программу, которая удаляет в данном тексте все лишние пробелы. 21. Составьте программы для перевода арабских чисел в римские и для обратной операции. Например, 55=CCLV=сто+сто+пятьдесят+пять. Замечание Подобными алгоритмами перевода чисел из одной системы в другую мы пользуемся в тех случаях, когда ведем денежные расчеты. Сумма денег- это арабское число, которому соответствует определенный набор банкнот и монет (аналоги римских цифр). 22. Автоморфными числами называются числа, которые содержатся в последних разрядах их квадрата. Например: 5·5=25, 25·25=625. Составьте программу для нахождения нескольких автоморфных чисел. “Вычеркиватели” (частный случай модификаторов) 1. Напишите программу для вычеркивания всех букв "о", стоящих в слове X на чётных местах. 2. Напишите программу для вычеркивания из слова X всех букв "K" и "G". 3. Напишите программу для вычеркивания в слове X всех букв, стоящих на нечётных местах после буквы "а". 4. Напишите программу для вычеркивания из слова X всех букв "р", перед которыми стоит буква "а". 5. Напишите программу для вычеркивания из слова X каждой третьей буквы. 6. Вычеркните из слова Х все буквы "с" и "л", стоящие на нечётных местах. 7. Вычеркните из слова Х все буквы "б". 8. Вычеркните из слова Х буквы, стоящие на чётных местах. 9. Вычеркните из слова Х буквы, стоящие на нечётных местах. 10. Вычеркните из слова Х все буквы "ш" и "л", стоящие на чётных местах. 11. Вычеркните из слова X те буквы, что встречаются трижды. 12. Вычеркните из слова X те буквы, что используются при написании слова Y. 13. Вычеркните из слова i-ю букву. 14. Если в слове X есть буква "а", то вычеркните из этого слова все буквы, стоящие на чётных местах.
15. Вычеркните из слова повторяющиеся буквы. 16. Дана последовательность, содержащая от до 30 слов, в каждом из которых от до 10 латинских букв; между соседними словами – не менее одного пробела. Напечатайте все слова, отличные от последнего слова, предварительно преобразовав каждое из них по следующему правилу: (1) удалить из слова первую букву; (2) удалить из слова последнюю букву; (3) удалить из слова все последующие вхождения первой буквы; (4) оставить в слове только первые вхождения каждой буквы; (5) если слово нечётной длины, то удалить его среднюю букву. Наблюдатели (предикаты) 1. Выясните, является ли данное слово палиндромом. 2. Напишите программу, проверяющую, есть ли в слове X две одинаковые буквы. 3. Напишите программу, выясняющую, есть ли в слове X буква "a", стоящая на нечётном месте после буквы "к". 4. Напишите программу, проверяющую, есть ли в слове X буква "к", стоящая на чётных местах перед буквой "и". 5. Напишите программу, проверяющую, все ли буквы слова X одинаковы. 6. Напишите программу, выясняющую, можно ли из букв слова X составить слово Y. 7. Напишите программу для проверки, есть ли в слове X буквы "в". Если есть, то найдите номер первой из них. 8. Напишите программу, выясняющую, есть ли в слове X буква "к", и, если есть, то замените все буквы "а" в этом слове на "с". 9. Напишите программу, проверяющую, все ли буквы слова Х, стоящие на чётных местах, одинаковы. 10. Даны два "стринга" А и В. Проверьте, можно ли из букв, входящих в стринг А, составить стринг В. Буквы можно переставлять, и каждую букву можно использовать более одного раза. 11. Определите, есть ли в словах Х и Y одинаковые буквы. 12. Выясните, есть ли в слове Х буква "в", стоящая на нечётном месте. 13. Определите, имеются ли в слове Х две одинаковые буквы, идущие подряд. 14. Выясните, есть ли в слове Х хотя бы одна из букв "о" или "а". 15. Проверьте, есть ли в слове Х буква "б". Если есть, замените последнюю из них на букву "а". 16. Выясните, все ли буквы слова Х, стоящие на нечетных местах, различны. 17. Проверьте, есть ли в слове Х буква "а". Если есть, найдите номер последней из них. 18. Определите, встречается ли в слове Х первая буква слова Y. 19. Определите, все ли буквы слова различны. 20. Выясните, есть ли в слове буква "я". 21. Проверьте, встречается ли в данном тексте последовательность слов "Не думай о секундах свысока". Слова могут идти не обязательно подряд, но порядок должен быть сохранен. 22. Определите, упорядочена ли данная последовательность латинских букв по алфавиту. 23. Даны два "стринга" А и В. Проверьте, можно ли из букв, входящих в стринг А, составить стринг В. Буквы можно переставлять, но каждую букву можно использовать не более одного раза. 24. Заданы два "стринга" А и В, причем длина А больше длины В. Определите, содержится ли в стринге А стринг В. 25. Танка (короткая песня) - это жанр японской поэзии; нерифмованное пятистишие, состоящее из 31 слога (5+7+5+7+7). Хокку – это также жанр японской поэзии; нерифмованное трехстишие, генетически восходящее к "танка"; состоит из 17 слогов (5+7+5). Напишите предикат, определяющий для заданных трёхстишия и пятистишия их принадлежность к хокку и танка.
Подсчет 1. Напишите программу для подсчёта числа букв "о", стоящих в слове X на чётных местах. 2. Напишите программу для подсчёта числа сочетаний "ку" в слове X. 3. Напишите программу для подсчёта суммы мест, на которых в слове X стоит буква "б". 4. Напишите программу для подсчёта в слове X всех сочетаний "нн". Считайте, что в слове "ннн" подслово "нн" встречается один раз. 5. Напишите программу, выясняющую, сколько раз в слове X встречается сочетание из первых двух букв слова Y. 6. Составьте программу, выясняющую сколько раз в слове X, начиная с нечётного места, встречается слово "ро". 7. Напишите программу, выясняющую, какая из букв (первая или последняя) встречается в слове X чаще. 8. Напишите программу для подсчёта числа букв "а" в слове X, стоящих на местах, номер которых кратен трем. 9. Напишите программу для подсчета числа букв "о", стоящих в слове X на местах, номер которых кратен 4. 10. Напишите программу для подсчёта числа букв "у" в слове Х, стоящих на нечётных местах. 11. Напишите программу для подсчета суммарного количества букв "м" и "н" в слове Y. 12. Напишите программу, проверяющую сколько раз первая буква слова X встречается в слове Y. 13. Напишите программу для подсчета количества слов в заданном тексте. 14. Напишите программу, выясняющую сколько раз вторая буква слова X встречается в слове Y на чётных местах. 15. Напишите программу для подсчета числа букв "о", стоящих после буквы "л" в слове X. 16. Подсчитайте, сколько различных символов слова Х употребляется в написании Х более одного раза. 17. Подсчитайте, сколько раз последняя буква слова Y встречается в слове Х. 18. Определите букву, чаще всего встречающуюся в слове Х. 19. Подсчитайте, сколько раз встречается в слове Х утроенное сочетание какой-либо одной буквы. Считать, что в слове "ннннн" подслово "ннн" встречается один раз. 20. Подсчитайте, сколько раз слово Y встречается в слове Х в качестве его подслова. 21. Подсчитайте, сколько букв надо исправить в слове Х, чтобы получилось слово Y (Х и Y - это слова одинаковой длины). 22. Подсчитайте, сколько одинаковых букв стоят на одних и тех же местах в словах Х и Y. 23. Подсчитайте, сколько раз встречается в слове Х подслово "нн". Считайте, что в слове "ннннн" подслово "нн" встречается два раза. 24. Определите, каких букв, "а" или "б", в слове Х больше. 25. Подсчитайте, сколько раз последняя буква слова Y встречается на чётных местах в слове X. 26. Подсчитайте число различных букв в слове X. 27. Подсчитайте, сколько раз в слове X встречается буква "а", за которой следует буква "б". 28. Подсчитайте, какое минимальное число букв необходимо заменить в слове X с тем, чтобы оно стало палиндромом? 29. Подсчитайте, сколько различных букв слова X используются при написании слова Y. 30. Напишите программу для подсчёта числа одинаковых букв в словах X и Y равной длины, стоящих на одних и тех же местах. 31. Подсчитайте, сколько раз встречается слово "ал" в заданном тексте. 32. Подсчитайте количество гласных букв в данном русском слове. 33. Подсчитайте, сколько раз первая буква слова встречается в этом слове. 34. В данной последовательности букв найдите количество повторений букв слова "луна". 35. Составьте таблицу слов данного предложения, начинающихся с буквы "А", с указанием количества повторений каждого слова. 36. Задано определённое количество конкретных сочетаний букв (например, "ущ", "ющ" и др.). Определить, сколько таких групп символов содержится в заданном тексте. 37. Напишите программу, определяющую количество различных букв, содержащихся в заданном слове. 38. Напишите программу, которая считает число слов в предложении, начинающихся на заданную букву. 39. Напишите программу, подсчитывающую количество предложений в тексте (предложение оканчивается символами ".", "?", "!"). 40. Напишите программу, подсчитывающую количество слов в предложении. 41. Подсчитайте количество слов заданного текста, начинающихся с гласной. 42. Подсчитайте количество гласных и согласных букв, содержащихся в заданном тексте. 43. Для каждого из слов заданного предложения укажите, сколько раз оно встречается в предложении. 44. Для каждой буквы из заданного текста укажите, сколько раз она встречается в тексте. 45. Для запоминания числа p иногда используют "магические" фразы, например: "это я знаю и помню прекрасно Пи многие знаки мне лишни напрасны" или "кто и шутя и скоро пожелаетъ Пи узнать число ужъ знаетъ". Число букв в каждом слове любой из данных фраз представляет собою некоторую цифру числа p: "это" - 3, "я" - 1, "знаю" - 4 и т.д. Выведите на экран число p, используя любую из указанных фраз. 46. Для заданного стринга, состоящего из цифр, напишите программу его преобразования в число. Учтите всевозможные варианты вводимой информации. 47. Для заданного текста определить длину содержащейся в нем максимальной последовательности букв, отличных от латинских. Поиск в словах 1. Найдите слово максимальной длины в заданном тексте. 2. Перечислите все слова заданного текста, которые состоят из тех же букв, что и первое слово текста. 3. В заданном тексте найти пару слов, из которых одно является обращением другого. 4. Из данного текста выберите слова, имеющие заданное число букв. 5. Составьте таблицу слов данного текста, начинающихся с буквы "А", с указанием количества повторений каждого слова.
ЛИТЕРАТУРА
|
|||||||||
Последнее изменение этой страницы: 2016-08-15; просмотров: 770; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.128.203.158 (0.012 с.) |