Rambler's Top100

Скачать программы    Все программы автора

1. 10. 2. Работа с элементами переменной строкового типа

Переменная строкового типа (String) может рассматриваться как массив элементов символьного типа (Char) . Например, если в программе определены переменные

S: string; C: char; и задано S:='Москва', то S[1]='М', S[2]='о' и т. д. и возможно присвоение, например: C:= S[1]; Таким образом строка может рассматриваться как линейный массив символов. Элементы массива, составляющие строку можно переставлять местами и получать новые слова, например:

for i:= 1 to N div 2 do begin C:= S[i]; S[i]:= S[N - i+1]; S[N - i+1]:= C end; Writeln(S);

{ исходное слово выведется справа налево: "авксоМ" }

Здесь N:= ord(S[0]); - число символов в переменной "S" хранится в переменной S[0]. Функция "ord" преобразует символьный тип в целый. N div 2 - количество перестановок для слова из "N" символов. В переменной "C" запоминается значение i - го элемента, который меняется с элементом, симметричным относительно середины строки.

Можно производить поиск и замену заданного символа в строке, например:

for i:=1 to N do if S[i]='_' then writeln(' найден символ пробел ');

for i:=1 to N do if S[i]='/' then S[i]:='\'; { замена символа "/" на "\"}

Заменяя или переставляя символы в строке по определенной схеме (закону) можно зашифровать строку. Для дешифровки используется, как правило, схема обратной перестановки или замены символов. Например :

for i:=1 to N do S[i]:= chr(ord(S[i])+2); { преобразование исходных

символов в символы с кодом большим на две единицы}

Напомним, что все используемые в MS - DOS символы имеют ASCII коды от 0 до 255.

Здесь удобно также использовать функции Pred(C); и Succ(C);

 

Практическое задание N 1. 22

 

1. Зашифровать введенную с клавиатуры строку, заменой исходных символов на символы с кодом большим на три единицы. Провести дешифровку.

2. Зашифровать введенную с клавиатуры строку, заменой символов на символы с кодом меньшим на две единицы. Провести дешифровку.

3. Зашифровать введенную с клавиатуры строку, поменяв местами первый символ со вторым, третий с четвертым и т. д. Провести дешифровку.

4. Зашифровать введенную с клавиатуры строку, поменяв местами первый символ с третьим, второй с четвертым и т. д. Провести дешифровку.

 

Примечание к п. п. 1 - 4 : Выводить на экран шифрованную и дешифрованную строки.

5. Найти и заменить символ в строке введенной с клавиатуры с подтверждением каждой замены. Программа должна запрашивать заменяемый и заменяющий символы, например: заменить i - ый символ "ф" на "Ф" в введенной строке? Вывести преобразованную строку на экран.

6. Определить и вывести на экран номера позиций и количество повторений заданного символа (или его кода) в строке, введенной с клавиатуры.

Вверх

Белорусский рейтинг MyMinsk.com Сайты беларуси Регистр "ЗУБР" Каталог на TIGA.BY, а также  новости, работа, объявления, фото и многое другое Rambler's Top100 Белорусский каталог программ Faststart - рейтинг сайтов, каталог интернет ресурсов, счетчик посещаемос­ти Яндекс.Метрика
Hosted by uCoz