Обработка информации
<<  Программная обработка данных Статистические методы обработки данных  >>
Обработка символьных данных
Обработка символьных данных
Символьные константы и переменные
Символьные константы и переменные
Символьные константы и переменные
Символьные константы и переменные
Символьные константы и переменные
Символьные константы и переменные
Символьные константы и переменные
Символьные константы и переменные
Символьные константы и переменные
Символьные константы и переменные
Символьные константы и переменные
Символьные константы и переменные
Символьные константы и переменные
Символьные константы и переменные
Символьные константы и переменные
Символьные константы и переменные
Строковые данные
Строковые данные
Строковые данные
Строковые данные
Строковые данные
Строковые данные
Строковые данные
Строковые данные
Строковые процедуры и функции
Строковые процедуры и функции
Строковые процедуры и функции
Строковые процедуры и функции
Строковые процедуры и функции
Строковые процедуры и функции
Строковые процедуры и функции
Строковые процедуры и функции
Строковые процедуры и функции
Строковые процедуры и функции
Строковые процедуры и функции
Строковые процедуры и функции
Строковые процедуры и функции
Строковые процедуры и функции
Строковые процедуры и функции
Строковые процедуры и функции
Строковые данные
Строковые данные
Строковые данные
Строковые данные
Строковые данные
Строковые данные
Строковые данные
Строковые данные
Строковые данные
Строковые данные
Строковые данные
Строковые данные
var i, s, k, code: longint; c, new, c1: string; begin readln(s); new
var i, s, k, code: longint; c, new, c1: string; begin readln(s); new

Презентация: «Обработка символьных данных». Автор: Оля. Файл: «Обработка символьных данных.ppsx». Размер zip-архива: 109 КБ.

Обработка символьных данных

содержание презентации «Обработка символьных данных.ppsx»
СлайдТекст
1 Обработка символьных данных

Обработка символьных данных

2 Символьные константы и переменные

Символьные константы и переменные

Текст - это произвольная последовательность символов некоторого алфавита. Алфавит - любое множество символов, например (0, 1,2, ... ), ( А, Б, В,…), ( A, B, C, ... ). Значениями символьной переменной или константы являются отдельные символы, которые составляют компьютерный алфавит. Символьные константы заключаются в одинарные кавычки, например, 'A', 'B', 'C', '4', '7', ' '(пробел). Для описания символьных констант и переменных используется тип CHAR: Var <имя переменной>: CHAR;

3 Символьные константы и переменные

Символьные константы и переменные

Сравнение символов осуществляется по их кодам. Из двух символов большим считается тот, код которого больше. Стандартные символьные функции: CHR(N) - возвращает в программу символ с кодом N, ORD(S) - возвращает код символа S, PRED(S) -возвращает предыдущий символ, SUCC(S) - возвращает следующий символ.

4 Символьные константы и переменные

Символьные константы и переменные

Примеры: Write ( CHR(128)) ; = А Write ( ORD(':')); = 58 Write ( PRED('Б')); = А Write ( SUCC('Г')); = Д

5 Символьные константы и переменные

Символьные константы и переменные

Пример 1. Составить программу, многократно вычисляющую сумму двух чисел, которые вводятся с клавиатуры. В конце каждого этапа появляется запрос : "Завершить программу?(Д/Н)".

Program sum; Var A, B : real; C : char; Begin Repeat Write('Введите два числа'); Readln(a,b); Writeln(a+b : 10 : 2); Writeln('Завершить программу?(Д/Н)'); Readln(C); Until C='Д'; {условие выхода из цикла} Readln; End.

6 Символьные константы и переменные

Символьные константы и переменные

Program chet; Var n: integer; { переменная для хранения количества "!" } C : char; begin read(c); { чтение первого символа с клавиатуры } n:=0; { обнуление cчётчика "!" } while c<>'/' do begin if c='!‘ then n:=n+1; { подсчёт символов "!" } read(c); { чтение следующего символа } end; writeln(‘Количество восклицательных знаков=’,n); readln; end.

Пример 2. Дана последовательность символов, заканчивающаяся символом "/". Подсчитать количество восклицательных знаков в данной последовательности.

7 Символьные константы и переменные

Символьные константы и переменные

Program kodi; Var n: integer; sim : char; begin For sim:= ‘A’ to ‘Z’ do writeln(sim:4, ‘-’, ord(sim):4); readln; end.

Пример 3. Распечатать коды символов от A до Z.

Так как тип Char относится к так называемому перечисляемому типу – значит, переменные такого типа можно использовать в заголовке арифметического цикла.

8 Символьные константы и переменные

Символьные константы и переменные

Program preobr; var mall, big:char; d:integer; begin read(mall); d:=ord('а')-ord('a'); {находим разность между кодами букв} big:= chr(ord(mall)-d); {находим большую букву} write(big); readln; end.

Пример 4. Дана маленькая латинская буква. Необходимо преобразовать её в большую латинскую букву.

9 Символьные константы и переменные

Символьные константы и переменные

Задачи: Дана последовательность из N символов. Известно, что в последовательности имеется хотя-бы одна запятая. Найти номер: а) первой по порядку запятой; б) последней по порядку запятой. Дана последовательность символов, заканчивающаяся символом '+'. Определить и вывести на экран номера символов, имеющих наибольший и наименьший коды. *Дана последовательность символов, заканчивающаяся символом '?' Подсчитать наибольшее количество символов "пробел" идущих в строке подряд.

10 Строковые данные

Строковые данные

Строка (строковый тип данных) – это последовательность символов кодовой таблицы ПК, заключенная в апострофы, длиной от 0 до 255. Например: ‘237’, ‘Скоро каникулы!’ Для описания строковых констант и переменных используется тип STRING: 1. Var <имя>: STRING[<макс. длина строки>]; 2. Var <имя>: STRING; (длина строки= 255)

11 Строковые данные

Строковые данные

Элементы строки определяются именем строки с индексом, заключенным в квадратные скобки. Например, N[5]. Нумерация символов начинается с 1. Строка похожа на одномерный массив, элементами которого являются символы. Тип String и тип Char совместимы, они могут употребляться в одних и тех же выражениях.

12 Строковые данные

Строковые данные

Над строковыми данными допустимы операции: Операция сцепления (+) применяется для соединения нескольких строк в одну строку. Сцеплять можно и константы, и переменные. Длина результирующей строки не должна превышать 255 символов. Операции отношения (=, <>, >, <, <=, >=) проводят сравнение двух строк и имеют приоритет более низкий, чем операция сцепления. Сравнение строк производится слева направо до первого несовпадающего символа. Строка считается больше, если в ней первый несовпадающий символ имеет больший номер в кодовой таблице.

13 Строковые данные

Строковые данные

Например, ‘MS-DOS’ < ’MS-Dos’. Если строки имеют различную длину, но в общей части символы совпадают, то более короткая строка меньше. ‘Комп’ < ’Компьютер ’ Строки равны, если они полностью совпадают. ‘Маска’ = ’Маска’

14 Строковые процедуры и функции

Строковые процедуры и функции

Функция Length(S) – определяет текущую длину строки S.

Выражение

Оператор

Результат

S:=‘1500 символов’

X:=Length(S);

13

S:= 'урок'

X:=Length(S);

4

15 Строковые процедуры и функции

Строковые процедуры и функции

Функция Concat(S1,S2,…,Sn) – выполняет сцепление строк S1,S2,…,Sn в одну строку.

Выражения

Оператор

Результат

S1:=‘лет’; s2:=‘сам’; s3:=‘о’;

X:=concat(s2,s3,s1);

‘Самолет’

16 Строковые процедуры и функции

Строковые процедуры и функции

Процедура Delete(St, poz, n) – удаление n символов строки St, начиная с позиции Poz.

Значение St

Оператор

Результат

‘Абвгде’

Delete(St, 4, 2);

‘Абве’

‘река Волга’

Delete(St, 1, 5);

‘Волга’

17 Строковые процедуры и функции

Строковые процедуры и функции

Процедура Insert (S1, S2, Poz) – вставка строки S1 в строку S2, начиная с позиции Poz.

Значение S1

Значение S2

Оператор

Результат

‘ Ес ’

‘Эвм1841’

Insert (S1, S2, 4);

‘Эвм ес 1841’

‘ N’

‘ Рис. 2’

Insert (S1, S2 , 6);

‘ Рис. N2’

18 Строковые процедуры и функции

Строковые процедуры и функции

Функция Copy(S, Poz, N) – выделяет из строки S подстроку длиной N символов, начиная с позиции Poz.

Значение S

Оператор

Результат

‘Мама мыла раму’

X:=Copy(S, 6, 4);

‘Мыла’

19 Строковые процедуры и функции

Строковые процедуры и функции

Функция Pos(S1,S2) – определяет первое появление в строке S2 подстроки S1.

Значение S2

Оператор

Результат

‘abcdef’

X:=Pos(‘cd’,S2);

3

‘abcdef’

X:=Pos(‘k’,S2) ;

0

20 Строковые процедуры и функции

Строковые процедуры и функции

Процедура Str( N, St ) – преобразование числового значения N в строковый тип и помещение результата в строку St.

Значение

Оператор

Результат

1500

Str (N:6,St);

‘ 1500’

21 Строковые процедуры и функции

Строковые процедуры и функции

Процедура Val(St, N,Code) – преобразует значение St в величину целочисленного или вещественного типа и помещает результат в N. Code – целочисленная переменная. Если во время операции преобразования ошибки не обнаружено, значение Code равно 0, в противном случае Code будет содержать номер позиции первого ошибочного символа, а значение N не определено.

Code

N

Значение St

Оператор

‘1500’

Val(St, N, Code);

Code=0

1500

14.2A+02

Val(St, N,Code);

Code=5

Не определено (ошибка)

22 Строковые данные

Строковые данные

Пример 1. Дано слово, подсчитать количество букв а.

Program a; var k, I :integer; a: string; begin k:=0; {счетчик количество букв a} a:='алабама'; for i:=1 to length(a) do if a[i] = 'a' then k:=k+1; write(k); readln; end.

23 Строковые данные

Строковые данные

Пример 2. Перевернуть текст

Program a; var k,i :integer; a, s :string; begin s:=''; a:=‘программа'; k:=length(a); for i:=1 to k do s:=a[i]+s; write(s); readln; end.

24 Строковые данные

Строковые данные

Program a3; Var k,i :integer; f,a, s :string; Begin s:=''; f:='0123456789'; a:=‘O 240 AX RUS 14 '; k:=length(a); for i:=1 to k do if pos(a[i],f)<>0 then s:=s+'c' else s:=s+a[i]; write(s); Readln; End.

Пример 3. Дана строка. Заменить цифры на символ c.

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

25 Строковые данные

Строковые данные

Пример 4. В заданном тексте удалить часть текста, заключенную в скобки (вместе со скобками).

var s,a: string; i,k: integer; begin k:=1; s:=''; a:='Мир (имеется в виду согласие, отсутствие конфликтов) победит войну'; while a[k]<>'(' do begin s:=s+a[k]; k:=k+1; end; {Добавили символы, стоящие до '('}

{Пропускаем символы стоящие после «(« и до «)»} while a[k]<>')' do k:=k+1; {Добавляем символы стоящие после')‘ } for i:=k+1 to length(a) do s:=s+a[i]; write(s); readln; end.

26 Строковые данные

Строковые данные

Задача 1. Выяснить встречается ли в заданном тексте буква «a» чаще, чем буква «b». Задача 2. Дано слово. Удвоить каждую букву «a». Задача 3. Дана строка S. Подсчитать наибольшее количество идущих подряд символов "+".

27 Строковые данные

Строковые данные

Задача 4. В заданном тексте удалить часть текста, расположенного после последней скобки. Задача 5. Ввести число и увеличить каждую его цифру, не равную "9", на единицу. Задача 6. Ввести слово и найти символ, который наиболее часто встречается в этом слове.

28 var i, s, k, code: longint; c, new, c1: string; begin readln(s); new

var i, s, k, code: longint; c, new, c1: string; begin readln(s); new

=''; str(s,c); for i:=1 to length(c) do begin IF c[i]<>’9’ then begin val(c[i],k,code); k:=k+1; str(k,c1); new:=new+c1; end Else new:=new+’9’; End; writeln(new); readln; end.

Задача 5. Ввести число и увеличить каждую его цифру, не равную "9", на единицу.

«Обработка символьных данных»
http://900igr.net/prezentacija/informatika/obrabotka-simvolnykh-dannykh-95942.html
cсылка на страницу
Урок

Информатика

130 тем
Слайды