Урок 10

Стандартные процедуры и функции для работы со строковыми величинами

Теоретическая часть

Для обработки строковых данных можно использовать специальные процедуры и функции.     

       1. Delete (st,poz,n) — удаление n символов строки st, начиная с позиции роz. Если значение роz больше, чем размер строки, ничего не удаляется.

               Например:  st1:=’informatika’;  delete(st1,3,5);  Результат: st1:=’intika’

       2. Insert (str1,str2,poz) — вставка строки str1 в строку str2, начиная с позиции poz. He перепутайте: первый параметр — что вставляем, второй — куда.

                Например:   st1:=’форма’; st2:=’тика’;  insert(’ин’, st1, 1); Результат: st1:=’информа’; st1:=’ insert(st2, st1, 8); Результат: st1:=’информатика’

     Обратите вниманиепри вставке символов обязательно нужно контролировать длину полученной строки, чтобы не потерять последние символы. При этом никакого сообщения об ошибке не выдается.

      3. Str (x, st) — преобразование числового значения X в строковый и помещение результата в строку St.  

         Например:  1. k:= 12;  Str (k, s);         Результат: s='12'

                               2. k:= 12;  Str (k:4, s);     Результат:  s='  12'

                               3. k:= 12.5;  Str (k, s);     Результат: s='12.5'                           

                               4. k:= 12.5;  Str (k:4, s);  Результат:  s='12.5'

                               5. k:= 12.5;  Str (k:6, s);  Результат:  s='  12.5'

       4. Val (st, x, code) — преобразует значение строки St в величину целочисленного или вещественного типа и помещает  результат в X. Code - целочисленная переменная.  Если во время операции преобразования ошибки не обнаружено, значение code равно нулю, если ошибка обнаружена (строковое значение не переводится в цифровое), code будет содержать номер позиции первого ошибочного символа, а значение x не определено.

      Например:

                               1. s:=’5.78’;  val(s,n,cod);  Результат:  n=5.78    cod=0

                               2. s:=’5,78’;  val(s,n,cod);  Результат:  n=0          cod=2 – второй символ ошибочный

       5. Copy(st, poz, n) — выделяет из строки st подстроку длиной n символов,начиная с позиции роz. Если poz больше длины строки, то результатом будет пустая строка. 

       Например:

                               1. x:='Информатика';   y:=copy(x,3,5);     y= 'форма'

                               2. x:='Информатика';   y:=copy(x,7,1);     y= 'а'

                               3. x:='Информатика';   y:=copy(x,12,5);   y= ''

Практическая часть

Задача 1. Определите, какие слова получатся в результате выполнения фрагмента  программы:

                         F:=’Газонокосильщик’;

                         W:=COPY(F,5,2)+COPY(F,7,1);

                         K:=COPY(F,5,2)+COPY(F,1,2);

                         M:=COPY(F,9,1)+COPY(F,7,2)+COPY(F,11,2)+COPY(F,7,2);

                         WRITELN(W);

                         WRITELN(K);

                         WRITELN(M);

Результат вышлите преподавателю.

Задача 2. Дано: строка и буква. Составьте программу, которая подсчитывает, сколько раз указанная буква встречается в строке. Результат вышлите преподавателю.

Электронная рабочая тетрадь

Задание 1. Стандартные процедуры и функции(слова из букв)

Задание 2. Стандартные процедуры и функции(найти пару)

Задание 3. Стандартные процедуры и функции(заполнить пропуски)

Задание 4. Стандартные процедуры и функции(пазлы)

Задание 5. Стандартные процедуры и функции(игра парочки)

Проверка знаний

Кроссворд - Стандартные процедуры и функции

Тест - Стандартные процедуры и функции