Лабораторная работа №9

Рассмотрим алгоритм решения задачи, в которой нужно подсчитать количество вхождений символа «а» в строку. Используем компоненты классов TEdit и TMemo для ввода строки и вывода результата.

Var s: string;

i, k: integer;

Procedure TForm1.Button1Click(Sender: TObject);

Begin

s:=edit1.text; //ввод строки

For i:=1 to length(s) do //идем по строке

If s[i]=’a’ then k:=k+1; {если i-ый символ а, тогда увеличивай счетчик k}

Memo1.text:=IntToStr(k) //вывод результата

End;

Пусть форма будет выглядеть следующим образом:

Задания для самостоятельной работы:

1. Дана строка s: Найти количество вхождений букв a,c,d в строку.

2. Найти количество цифр в строке.

3. Сцепить несколько строк в одну.

4. Из данной строки выбрать цифры и сформировать из них новую строку.

5. Найти количество слов, начинающихся на букву с.

6. Подсчитать количество слов в строке.

7. Определить начинается и заканчивается ли слово одной буквой.

8. Удалить каждую четную букву в строке.

9. Проверить одинаковое ли число открытых и закрытых скобок в строке.

10. По введенным: фамилии, имени, отчеству выводить информацию о том, является ли пользователь автором программы, его теской или являются ли теской отец автора и пользователя программы.

Программирование циклических алгоритмов. Циклы «до» и «пока»

Как уже говорилось, известны три типа циклических алгоритмических структур. Была рассмотрена только одна из них – цикл с параметром. Поговорим об остальных:

- цикл с предусловием

- цикл с постусловием

Существуют операторы для их реализации.

1.Цикл с предусловием (цикл-«пока») - наиболее универсальная циклическая структура. Реализуется оператором While. Формат оператора:

While <логическое выражение> do <тело цикла>

Пока значение логического выражения истинно (true), выполняется тело цикла, тело может быть простым или составным оператором.

2.Цикл с постусловием (цикл-«до»)имеет формат

Repeat < тело цикла > until < логическое выражение >

Повторяется выполнение тело цикла. Цикл заканчивается, когда логическое выражение становится истинным. Тело цикла с постусловием выполняется хотя бы один раз. Использование операторных скобок для ограничения тела цикла не требуется.

Для гибкого управления циклическими операторами используют следующие процедуры:

Break – реализует немедленный выход из цикла

Continue – обеспечивает досрочное завершение очередного прохода цикла.