Реферат на тему Строковый тип данных в языке Pascal
Работа добавлена на сайт bukvasha.net: 2015-06-29Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Выражение | Результат |
‘True1’’MOTHER’ | True |
‘Мама ‘ ‘Мама’ | True |
‘Cat’=’Cat’ | True |
Функция Copy(S, Pozition, N) выделяет из строки S подстроку длиной N символов, начиная с позиции Pozition. Здесь N и Pozition — целочисленные выражения.
Пример:
Значение S | Выражение | Результат |
‘Мама мыла раму’ | Copy(S, 6, 4) | ‘мыла’ |
‘Маша ела кашу’ | Copy(S, 1, 8) | ‘Маша ела’ |
Функция Concat(S1, S2, …, SN) выполняет сцепление (конкатенацию) строк S1, S2, …, SN в одну строку.
Пример:
Выражение | Результат |
Concat('Маша ', 'ела ', 'кашу') | 'Маша ела кашу' |
Функция Length(S) — определяет текущую длину строки S. Результат — значение целого типа.
Пример:
Значение S | Выражение | Результат |
'test-5' | Length(S) | 6 |
'(A+B)*C' | Length(S) | 7 |
Функция Pos(S1, S2) — обнаруживает первое появление в строке S2 подстроки S1. Результат — целое число, равное номеру позиции, где находится первый символ подстроки S1. Если в S2 подстроки S1 не обнаружено, то результат равен 0.
Пример:
Значение S2 | Выражение | Результат |
'abcdef' | Pos('cd', S2) | 3 |
'abcdcdef' | Pos('cd', S2) | 3 |
'abcdef' | Pos('k', S2) | 0 |
Процедура Delete(S, Poz, N) — удаление N символов из строки S, начиная с позиции Poz.
Пример:
Исходное значение S | Оператор | Конечное значение S |
'abcdefg' | Delete(S, 3, 2) | 'abefg' |
'abcdefg' | Delete(S, 2, 6) | 'a' |
В результате выполнения процедуры уменьшается текущая длина строки в переменной S.
Процедура Insert(S1, S2, Poz) — вставка строки S1 в строку S2, начиная с позиции Poz.
Пример:
Исходное значение S2 | Оператор | Конечное значение S2 |
'ЭВМ РС' | Insert('IBM-', S2, 5) | 'ЭВМ IBM-PC' |
'Рис. 2' | Insert('N', S2, 6) | 'Рис. N 2' |
Контрольные вопросы и задания
Как можно объявить величину строкового типа?
К каким типам данных относятся строки?
Какова максимально возможная длина строки?
С величиной какого типа данных совместим по присваиванию отдельный символ строки?
Расскажите об операциях, которые можно выполнять над строковыми величинами.
Расскажите о функциях, определенных для величин строкового типа.
Расскажите о процедурах, определенных для величин строкового типа.
Как осуществляется доступ к отдельному сииволу строки?
Почему значение отношения 'Мама''мама' равно TRUE?
Дан фрагмент программы:
S:= ‘’;
For I:= ‘0’ to ‘9’ do S:=S+I;
Какое значение пулучит переменная S после его исполнения?
Дан фрагмент программы.
Type String40 = String[40]; M = Array[1..100] Of String40;
Var A : M; I, J, Min, N : Byte; Vsp : String40;
Begin
Write('N? '); ReadLn(N);
For I := 1 To N Do ReadLn(A[I]);
For I := 1 To N-1 Do
Begin Min := I;
For J := I + 1 To N Do If A[J]
Vsp := A[I]; A[I] := A[Min]; A[Min] := Vsp;
End;
WriteLn('Ответ: '); For I := 1 To N Do WriteLn(A[I])
End.
Точно и однозначно сформулировать условие задачи, решение которой приведенно в данном фрагменте.
Имеется следующая переменная
Var S : Array[1..100] Of String;
Какое из обращений к J-му символу I-той строки (I-го элемента массива S) будет правильным?
1) S[I][J]; 2) S[I,J]; 3) S[J][I]; 4) ответы 1–2 правильны; 5) среди ответов нет ни одного правильного.
Какая функция (процедура) является аналогом операции сцепления (+) при работе со строками?
Каков будет результат выполнения операции сцепления, если длина результирующей строки превысит значение255?