Хелпикс

Главная

Контакты

Случайная статья





Спецификация. Метод решения



Спецификация

1. Назначение: ввод исходной строки с клавиатуры и контроль за тем, что она состоит из русских букв и пробелов, разделяющих слова. Оканчивается строка точкой, после которой символы не обрабатываются. При успешном вводе строки формируется значение истина, при неуспешном – ложь. Строка подготавливается для дальнейшей обработки – удаляются завершающая точка и все символы, следующие за ней, в конец вставляется пробел (для того, чтобы каждое слово оканчивалось пробелом), подавляются повторяющиеся пробелы (для того, чтобы слово оканчивалось только одним пробелом).

2. Имя: control

3. Вид: функция

4. Перечень параметров

Таблица 21.4.Перечень параметров

Статус Назначение Имя Тип Вид
Выход Заданная вводом строка s string параметр-переменная
Вход Множество символов, из которых может состоят вводимая строка (исключая точку и символы, расположенные после нее) simb tsetchar параметр-константа
Возвращаемый результат Признак правильности ввода строки (истина –успешный ввод, в противном случае –ложь) control boolean -

Примечание: type tsetchar=set of char;

5. Заголовок п/п:

function control(var s:string; const simb: tsetchar) :Boolean ;

 

Метод решения

1. Ввод с клавиатуры строки s;

  1. Если точка отсутствует в строке или располагается в ее начале, то формируются возвращаемый результат со значением ложь и пустое значение выходной строки и осуществляется выход из подпрограммы

     ;

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

s:=copy(s,1,pos('.',s)-1) + ' ' ;

  1. В исходной строке удаляются повторяющиеся пробелы – между словами остается по одному пробелу. Это осуществляется с помощью подпрограммы замены в заданной строке фрагмента из двух подряд идущих пробела на один пробел

redfrag(s,' ',' ') ;

  1. Перебираются все символы и проверяется их принадлежность множеству возможных символов simb. Если очередной символ не принадлежит этому множеству то формируются возвращаемый результат со значением ложь и пустое значение выходной строки и осуществляется выход из подпрограммы

;

  1. Успешное завершение ввода строки

control:=true



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.