1. Ввести слово и преобразовать его следующим образом: две первые и две последние буквы отделить от середины слова пробелами.
2. На какую букву начинается больше слов в предложении (прописные буквы не учитывать).
3. Определить количество вхождений подстроки А$ в строку В$.
4. Выяснить, является ли введенная буква гласной.
5. Заменить в предложении гласные на «1», согласные — на «2», остальные знаки — на «З».
6. Вывести последовательность символов ABBCCC…Z…Z.
7. Подсчитайте количество запятых в заданном тексте.
8. Подсчитайте, сколько раз в заданном тексте встречается заданный символ.
9. Определите долю пробелов в заданной строке.
10. Проверьте, является ли заданное слово названием времени года на русском языке.
11. Замените в заданном тексте буквосочетание min на max.
12. В заданном тексте подсчитате общее количество букв x и y.
13. В заданном тексте везде букву а замените на букву б, а букву б — на букву а.
14. Удвойте каждую букву в заданном тексте.
15. В заданном слове каждую букву б замените буквосочетанием ку.
16. Вычеркните из заданного слова все буквы а.
17. Подсчитате, сколько раз в заданном слове встречается буквосочетание аб.
18. Заданную строку А перепишите в обратном порядке в строку В.
19. Выясните, есть ли в заданном предложении буква ы.
20. Выясните, верно ли, что в заданном предложении P есть все буквы, входящие в заданное слово S.
21. Определите количество предложений в заданном тексте (предложение заканчивается либо точкой, вопросительным или восклицательным знаком).
22. Определите долю гласных букв в заданном тексте на русском (английском) языке.
23. Определите, является ли одно заданное слово обращением другого заданного слова.
24. Из заданного текста удалите те его части, которые заключены в кавычки (вместе с кавычками).
25. Каждые n символов во введенном тексте отделите знаком !.
26. Выясните, верно ли, что в заданном предложении есть пара соседствующих одинаковых символов.
27. Найдите хотя бы одно слово, которое встречается в каждом из трех заданных предложений.
28. Отредактируйте заданное предложение, удаляя из него все слова с чётными номерами.
29. В заданном предложении укажите слово, в котором доля гласных (A, E, I, O, U — строчных или прописных) максимальна.
30. Дан текст из цифр и строчных латинских букв, за которым следует точка. Определите, каких букв — гласных (A, E, I, O, U) или согласных — больше в этом тексте.
31. В заданную упорядоченную в лексикографическом (алфавитном) порядке последовательность слов вставьте новое заданное слово так, чтобы лексикографический порядок сохранился.
32. В заданной последовательности слов найдите все слова, начинающиеся с заданной приставки.
33. В заданной последовательности слов найдите все слова, имеющие заданное окончание.
34. Найдите самое длинное и самое короткое слово в заданном предложении.
35. В заданном тексте подсчитайте наибольшее количество подряд идущих пробелов.
36. Для каждого из слов заданного предложения укажите, сколько раз оно встречается в предложении.
37. Найдите самое длинное симметричное слово заданного предложения.
38. Из заданного текста выберите и напечатайте те символы, которые встречаются в нём ровно один раз.
39. Определите частоту вхождения в заданный текст каждой буквы русского алфавита.
40. Дана последовательность слов, в которой слова разделены запятыми, а за последним словом — точка. Напечатайте:
а) эту же последовательность слов, но в обратном порядке;
б) все различные слова, указав для каждого из них число его вхождений в последовательность.
41. Отредактируйте заданное предложение, удаляя из него все лишние пробелы.
42. Из заданного предложения удалите те слова, которые уже встречались в предложении раньше.
43. Преобразуйте заданное десятичное натуральное число в римскую систему счисления.
44. Преобразуйте число, заданное в римской системе счисления, в число десятичной системы.
45. Известны фамилии и имена учеников класса. Напечатайте список класса с указанием для каждого ученика количества его однофамильцев и тезок.
46. В заданном предложении найдите такие слова, которые, не имея приставки, начинаются с заданного корня, содержат или не содержат произвольный суффикс и имеют одно из трех заданных окончаний. Найденные слова распечатайте в алфавитном порядке.
47. Составьте целочисленный массив, элементами которого являются количества слов заданного текста на русском языке, начинающихся с соответствующей шипящей согласной (ж, ш, ч), прописной или строчной. Слова, содержащие менее трех букв, не учитывайте.
48. Упорядочьте слова заданного предложения по возрастанию количества букв. Затем слова с одинаковым количеством букв упорядочьте по алфавиту (лексикографически).
49. Определите, сколько слов заданного текста составлено из букв русского алфавита, а сколько — из букв латинского алфавита. Слова, в которых встречаются буквы обоих алфавитов, замените словом Смесь.
Приложение к уроку 10
Задание для любознательных по теме
«Выполнение практических заданий
с использованием символьных и строковых величин»
Пример 4.Составить программу, которая выполняет шифрование введенного с клавиатуры слова путем изменения кода символа
на некоторое число (шифр Цезаря)
Простейший алгоритм шифра Цезаря заключается в том, что код каждого символа изменяется на некоторое число – ключ K. Причем результирующий код (сумма кода символа и ключа) должен быть в пределах от 0 до 255, иначе программа будет прервана с сообщением: “Ошибка: код символа вне диапазона 0..255”. Значения ключа K 0 неприемлемы для кодовой таблицы CP?1251, в которой символы кириллицы имеют коды от 192 до 255 (см. приложение 1). Поэтому, для символов кириллицы допустимо уменьшать код символа на 1 K 128.
Программа может выглядеть так:
Program Primer82_4;
Var s: string; i, K: integer;
begin
write(‘Введите текст: ‘); readln(s);
write(‘Введите ключ: ‘); readln(K);
for i:=1 to length(s) do s[i]:=chr( ord(s[i]) — K );
writeln(‘Зашифрованный текст: ‘,s);
end.
Результат выполнения программы
может выглядеть так:
Приложение к уроку 11
Шаблон программы по теме «Выполнение практических заданий
с использованием символьных и строковых величин»
program Primer8_9;
Const N: array[1..10] of string = (‘один’,’два’,’три’,’четыре’,’пять’,
‘шесть’,’семь’,’восемь’,’девять’,’нуль’);
Var b, c: string; i,j: integer;
Begin
{ ————- введите текст программы ——————- }
End.
Program Primer8_10;
Const A: array[1..8] of string = (‘ученик’,’артист’,’художник’,’рыба’,’птица’, ‘кошка’, ‘собака’, ‘корова’);
Const B: array[1..8] of string = (‘читает’, ‘поет’,’рисует’, ‘плавает’, ‘летает’, ‘мяукает’, ‘лает’, ‘мычит’);
Var k: integer;
Begin
{ ————- введите текст программы ——————- }
End.
Program Primer8_11;
Const A: array[1..8] of string = (‘ученик’,’доска’,’рисунок’,’птица’,’обезьяна’, ‘петух’,’неделя’,’луна’);
Const B: array[1..8] of string = (‘вучань’,’дошка’,’малюнак’,’птушка’,’малпа’, ‘певень’, ‘тыдзень’, ‘месяц’);
Var i,j : integer; s:string;
Begin
{ ————- введите текст программы ——————- }
End.
Приложение к уроку 12
Задание для любознательных по теме
«Выполнение практических заданий
с использованием символьных и строковых величин»
Пример 4.В массиве строковых констант хранятся названия месяцев. Составить программу, которая выводит дату и название месяца
по введенным дате и номеру месяца.
Будем вводить дату и номер месяца (разделяя их точкой без пробелов) и помещать в переменную s типа string.
Алгоритм основан на нахождении элемента массива с названием месяца, A[j]) по его номеру. Дату d := Copy(s,1,i-1) и месяц m:= Copy(s,i+1,2) выделяем из строки s, как соответствующие подстроки до и после позиции точки i:=Pos(‘.’,s).
Программа может выглядеть так:
Program Primer83_4;
Const A: array[1..12] of string = ( ‘января’,’февраля’,’марта’,’апреля’ ,’мая’, ‘июня’,’июля’, ‘августа’,’сентября’,’октября’,’ноября’,’декабря’);
Var i,j : integer; s,d, m: string;
Begin
writeln(‘Введите дату и номер месяца’); read(s);
i:=Pos(‘.’,s); {позиция точки}
d:= Copy(s,1,i-1); m:= Copy(s,i+1,2); { выделение подстрок }
j:= StrToInt(m); { номер месяца }
if (j12) then write(‘ ошибка’) else writeln( d, ‘ ‘, A[j] );
End.
Результат выполнения программы может выглядеть так:
Приложение 1 к уроку 13
Варианты задач по теме «Основы алгоритмизации
и программирования» (обобщающее повторение)
С клавиатуры вводится текст. Составьте программу, которая:
1. Определяет длину первого (последнего) слова.
2. Проверяет, есть ли в тексте заданный символ.
3. Подсчитывает количество заданных символов.
4. Определяет номера позиций заданного символа.
5. Подсчитывает количество строчных (прописных) букв.
6. Выводит символы текста в обратном порядке.
7. Подсчитывает количество слов.
8. Определяет, похоже ли данное слово на адрес электронной почты.
9. Определяет, является ли данное слово палиндромом (перевертышем).
10. Определяет, в каком из слов больше заданных букв
11. Удаляет в тексте заданные символы.
12. Получает из слова S слово Z удалением заданного количества букв.
13. Удаляет в тексте заданные слова.
14. Заменяет первый пробел заданным символом.
15. Заменяет все пробелы заданными символами.
16. Заменяет заданную букву в слове многоточием.
17. Определяет, сколько раз заданная буква встречается в данном слове.
18. Кодирует слово, поставив в соответствие букве её номер в алфавите.
19. Расшифровывает слово, поставив соответствующей цифре букву.
20. Кодирует текст, меняя местами соседние символы.
21. Кодирует слово, поставив в соответствие одним символам другие.
22. Определяет все слова, которые начинаются с заданной буквы.
23. Определяет все слова оканчивающиеся на ая.
24. Определяет, сколько в тексте заданных слов, например, что.
25. Заменяет удвоенные буквы на одиночные, пробелы — на знак подчёркивания, сочетания ‘**’ на многоточие ‘…’.
26. Удаляет текст после первой точки.
27. Находит в тексте все анаграммы (слова, составленные из одних и тех же букв).
28. Выводит повторяющиеся слова и их количество.
29. Удаляет повторяющиеся слова.
30. Определяет самое короткое и самое длинное слово.
Приложение к уроку 14
Дополнительный материал для любознательных по теме
«Понятие информационной модели»
Разнообразность содержания задач, объектов и процессов, с одной стороны, и способов их описания с помощью информационных моделей, с другой, привела к следующей классификации видов информационных моделей.
Рассмотрим на примерах представление и структурирование информации в моделях разного вида.
Человек на протяжении всей жизни составляет словесные описания предметов, объектов, ситуаций, происшествий на естественном языке. При составлении словесной модели необходимо ясно и понятно формулировать предложения, использовать проверенные факты, нужные понятия и термины. Примерами словесных моделей является информация в учебниках, произведения художественной литературы, сводки происшествий и др.
Для создания словесных моделей на компьютере мы используем текстовые редакторы, с помощью которых создаются текстовые документы.
При разработке словесной информационной модели необходимо иметь объект – текст, среду для набора текста, например текстовый редактор Word, определить параметры оформления текста: тип шрифта, размер, начертание, абзацный отступ и т.д.
Словесные модели применяются для описания последовательности действий, процессов и представляются в виде алгоритмов действий с пронумерованными шагами.
Информационные модели, содержащие описания на формальном языке, содержат математические и химические формулы, алгоритмы, представленные на языках программирования и т. д. Например, формулы математики описывают соотношения между количественными характеристиками объекта моделирования на математическом языке.
Одним из видов графических информационных моделей является граф,
Граф задается множеством вершин и множеством линий (связей), соединяющих некоторые пары вершин. Связи между элементами называются отношениями
ребро (симметрическая связь)
дуга (несимметрическая связь)
Пример.Представим семь связанных мостов на реке в виде графа.