Delphi. Лабораторная работа № 7. (4 часа).

«Обработка строковых данных».

Цели:

  • Научиться разрабатывать приложения, в которых отображаются и обрабатываются строковые данные;
  • Закрепить навыки использования компонента Memo для хранения и отображения структурированных данных.

 

Ход работы:

1. Изучить (повторить) теоретический материал:

 

2. В состав задания на данную работу входит 2 задачи:

        1) - Обработка одной строки (5 балла).

        2) - Обработка текста, как массива строк (5 баллов).

Для хранения и отображения массивов строк использовать компонент Memo. Для решения задач можно создать два отдельных проекта, или объединить их в один, аналогично, как в лабораторной работе №3.

3. Выбрать из списка номер вашего варианта и прочитать условия задач:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

4. Если возникли вопросы по условиям задач, задайте их преподавателю.

5. Скачать, распаковать, открыть и внимательно изучить примеры: Пример-1; Пример-2;  Пример-3.

6. Разработать приложения для решения задач своего варианта.

7. Протестировать программы.

8. Оформить отчет по лабораторной работе. Для этого следует в строке заголовка главной формы записать:

"ЛР N. Вариант N. Группа. Фамилия Имя." В начале программного модуля главной формы записать как комментарий:

 

9. Сдать преподавателю выполненную работу:

 

10. Оценки по проверенным работам можно посмотреть в электронном журнале:


Индивидуальные задания

Вариант 1.

1. Дана строка, состоящая из букв и цифр. Вычислить сумму цифр, входящих в строку.

 

2. Дан текст (массив строк). Составить программу, которая в начале каждой строки текста припишет длину этой строки (длина - это количество символов в строке).

 

Вариант 2.

1. Дана строка. Проверить, является ли она целым числом.

2. Дан текст (массив строк) в котором слова разделены одним или несколькими пробелами. Составить программу, которая определяет количество слов в каждой строке.

 

Вариант 3.

1. Дана строка, состоящая из букв и цифр. Преобразовать строку, оставив в ней только цифры.

2. Дан текст (массив строк) в котором слова разделены одним, или несколькими пробелами. Составить программу, которая определяет количество слов в каждой строке.

 

Вариант 4.

1. Дана строка, состоящая из слов, разделенных пробелом. Определить количество слов, в которых есть хотя бы одна буква "а", или "А".

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

Вариант 5.

1. Дана строка, состоящая из слов, разделенных пробелом. Определить и выписать самое короткое слово.

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

Вариант 6.

1. Дана строка, состоящая из слов, разделенных пробелом. Определить и выписать самое длинное слово.

2. Дан текст (массив строк). Составить программу, которая записывает каждую строку текста в обратном порядке.

 

Вариант 7.

1. Дана строка, состоящая из слов, разделенных пробелом. Преобразовать строку, переписав в ней все слова в обратном порядке.

2. Дан текст (массив строк) в котором слова разделены одним пробелом. Составить программу, которая записывает каждое слово в тексте в обратном порядке.

 

Вариант 8.

1. Дана строка, состоящая из слов, разделенных пробелом. Вывести строку, состоящую из этих же слов, расположенных в алфавитном порядке.

2. Дан текст (массив строк) в котором слова разделены одним пробелом. Составить программу, которая выписывает из каждой строки только слова "перевертыши" (которые одинаково читаются в одну и в другую сторону).

 

Вариант 9.

1. Дана строка. Вывести все ее символы в алфавитном порядке.

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

 

Вариант 10.

1. Дана строка, состоящая из букв и цифр. Определить количество четных и нечетных цифр.

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

Вариант 11.

1. Дана строка, состоящая из русских слов. Определить количество гласных букв в строке.

2. Дан текст (массив строк). Составить программу, которая считает количество знаков препинания (запятая - ",", точка - ".", точка с запятой - ";") в каждой строке.

Вариант 12.

1. Дана строка, состоящая из букв и цифр. Определить количество букв в строке.

2. Дан текст (массив строк). Составить программу, которая считает количество гласных букв в каждой строке.

Вариант 13.

1. Дана строка, состоящая из русских слов, разделенных пробелом. Определить слово, с наибольшим количеством гласных букв.

 

2. Дан текст (массив строк). Составить программу, которая в каждой строке определяет каких букв больше "и" или "е".

Вариант 14.

1. Дана строка, состоящая из русских слов, разделенных пробелом. Определить слово, с наименьшим количеством гласных букв.

 

2. Дан текст (массив строк). Составить программу, которая заменяет в тексте "и" на "i".

 

Вариант 15.

1. Дана строка. Зашифровать ее, изменив код каждого символа на число N.

2. Дан текст (массив строк). Составить программу, которая добавляет после каждой буквы "о" букву "а" в скобках - "(а)".

Вариант 16.

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

 

2. Дан текст (массив строк). Составить программу, которая считает в каждой строке количество слов "да" (слов, но не слогов).

 

Вариант 17.

1. Дана строка. Вывести строку, состоящую из кодов символов исходной строки, разделенных пробелом.

2. Дан текст (массив строк) в котором слова разделены одним пробелом. Составить программу, которая считает в каждой строке количество слов начинающихся с буквы "к".

 

Вариант 18.

1. Дана строка, состоящая из целых чисел от 32 до 255, разделенных пробелом. Вывести строку, заменим каждое число символом, код которого оно представляет в кодовой таблице и удалив пробелы.

 

2. Дан текст (массив строк) в котором слова разделены одним пробелом. Составить программу, которая считает в каждой строке количество слов заканчивающихся буквой "й".

 

Вариант 19.

1. Дана строка-предложение на русском языке. Определить суммарное количество содержащихся в строке знаков препинания (точка, запятая, двоеточие и тире).

2. Дан текст (массив строк) в котором каждая строка содержит до 255 цифр. Составить программу, которая определяет для каждой строки, содержит ли она три, идущие подряд цифры "7".

Вариант 20.

1. Дана строка, состоящая из слов, разделенных одним пробелом. Вывести строку, состоящую из этих же слов, записанных в обратном порядке. Например, "Я изучаю программирование" => "программирование изучаю Я".

2. Дан текст (массив строк) в котором каждая строка содержит до 255 цифр. Составить программу, которая вычисляет сумму цифр в каждой строке.

 

Вариант 21.

1. Дана строка, состоящая из слов, разделенных одним пробелом. Вывести строку, состоящую из этих же слов, каждое из которых записано в обратном порядке.

2. Дан текст (массив строк) в котором каждая строка содержит до 255 цифр. Составить программу, которая для каждой строки определяет, является ли число кратным 5-ти.

Вариант 22.

1. Дана строка, состоящая из слов, разделенных одним пробелом. Вывести строку, состоящую из этих же слов, расположенных в алфавитном порядке.

 

2. Дан текст (массив строк) в котором каждая строка содержит до 255 цифр. Составить программу, которая для каждой строки определяет, является ли число "палиндромом" (читается одинаково в одну и в другую сторону).

Вариант 23.

1. Дана строка, состоящая из слов, разделенных одним пробелом. Вывести самое короткое слово.

 

2. Дан текст (массив строк) в котором каждая строка содержит до 255 цифр. Составить программу, которая удаляет из чисел цифры "0" и "5".

Вариант 24.

1. Дана строка, состоящая из слов, разделенных одним пробелом. Вывести самое длинное слово.

 

2. Дан текст (массив строк) в котором каждая строка содержит до 255 цифр. Составить программу, которая заменяет цифру "0" на "5", и наоборот - "5" на "0".