Вопросы и задания
1. Как в программе обозначается строковая константа, как определяется строковая переменная?
'Это строковая константа'
var str: string;
2. Какой может быть максимальная длина строки?
Максимальная длина строки в Паскале зависит от реализации компилятора и платформы, но обычно она ограничена 255 символами. В некоторых компиляторах и при использовании строковых типов данных, таких как AnsiString, WideString, UnicodeString, длина строки может быть больше.
3. Составьте программу получения из слова «дисковод» слова «воск», используя операцию сцепления и функцию Сору.
program Example3;
var word1, word2: string;
begin word1 := 'дисковод'; word2 := Copy(word1, 2, 4); // Копируем подстроку из word1, начиная с позиции 2 и длиной 4 символа writeln(word2); end.
4. Составьте программу получения слова «правило» из слова «операция», используя процедуры Delete, Insert.
program Example4;
var word: string;
begin word := 'операция'; Delete(word, 1, 1); // Удаляем первый символ 'о' Delete(word, 4, 3); // Удаляем символы 'р', 'а', 'ц' Insert('в', word, 1); // Вставляем 'в' в начало слова Insert('и', word, 6); // Вставляем 'и' после 'п' Insert('л', word, 8); // Вставляем 'л' после 'о' writeln(word); end.
5. В данном слове замените первый и последний символы на символ
program Example5;
begin word := 'строка'; word[1] := '!'; // Замена первого символа word[length(word)] := '!'; // Замена последнего символа writeln(word); end.
6. В данном слове произведите обмен первого и последнего символов.
program Example6;
var word: string; tempChar: char;
begin word := 'строка'; tempChar := word[1]; // Сохраняем первый символ word[1] := word[length(word)]; // Замена первого символа последним word[length(word)] := tempChar; // Замена последнего символа сохраненным writeln(word); end.
7. К данному слову присоедините столько символов '!', сколько в нем имеется букв (например, из строки ’УРА' надо получить 'УРА!!!').
program Example7;
var word: string; exclamationMarks: string; i: integer;
begin word := 'УРА'; exclamationMarks := ''; for i := 1 to length(word) do exclamationMarks := exclamationMarks + '!'; word := word + exclamationMarks; writeln(word); end.
8. В данной строке вставьте пробел после каждого символа.
program Example8;
var word, spacedWord: string; i: integer;
begin word := 'строка'; spacedWord := ''; for i := 1 to length(word) do begin spacedWord := spacedWord + word[i]; if i < length(word) then spacedWord := spacedWord + ' '; end; writeln(spacedWord); end.
9. Переверните введенную строку (например, из 'ДИСК' должно получиться КСИД).
program Example9;
var word, reversedWord: string; i: integer;
begin word := 'ДИСК'; reversedWord := ''; for i := length(word) downto 1 do reversedWord := reversedWord + word[i]; writeln(reversedWord); end.
10. В данной строке удалите все пробелы.
program Example10;
var word, noSpacesWord: string; i: integer;
begin word := 'Это строка с пробелами'; noSpacesWord := ''; for i := 1 to length(word) do begin if word[i] <> ' ' then noSpacesWord := noSpacesWord + word[i]; end; writeln(noSpacesWord); end.
11. Строка представляет собой запись целого числа. Составьте программу ее перевода в соответствующую величину целого типа.
program Example11;
var numStr: string; numInt: integer;
begin numStr := '12345'; // Строка, представляющая число val(numStr, numInt); // Преобразование строки в целое число writeln('Целое число: ', numInt); end.