Программирование с использованием строковых переменных

Содержание

Слайд 2

Константы Строковая константа – последовательность символов, заключенная в апострофы, например, '+9АВ',

Константы

Строковая константа – последовательность символов, заключенная в апострофы, например, '+9АВ', '4+6',

'', ' ', 'МИРУ МИР'.
Слайд 3

Константы 'а' 'A' , так как большие и малые буквы имеют различные значения в коде ASCII.

Константы

'а' <> 'A' ,
так как большие и малые буквы имеют

различные значения в коде ASCII.
Слайд 4

Константы #65 = 'A' #100 = 'd' #96#100 = 'bd'

Константы

#65 = 'A'
#100 = 'd'
#96#100 = 'bd'

Слайд 5

Константы Максимальная длина строковой константы – 255 символов

Константы

Максимальная длина строковой константы – 255 символов

Слайд 6

Переменные Символьные переменные (стандартные скалярные) – CHAR – могут принимать значения

Переменные

Символьные переменные (стандартные скалярные) – CHAR – могут принимать значения из

множества символов ASCII (1 байт)
Слайд 7

Переменные Для операций сравнения переменные CHAR упорядочены в соответствии с алфавитом (таблицей символов ASCII).

Переменные

Для операций сравнения переменные CHAR упорядочены в соответствии с алфавитом (таблицей

символов ASCII).
Слайд 8

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

Переменные

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

Слайд 9

Массивы Символьные массивы констант можно задавать как посимвольно, так и построчно (структурированные типизированные константы):

Массивы

Символьные массивы констант можно задавать как посимвольно, так и построчно (структурированные

типизированные константы):
Слайд 10

Массивы CONST Dig: Array[0..9] of Char = ('0', '1', '2', '3',

Массивы

CONST
Dig: Array[0..9] of Char = ('0', '1', '2', '3', '4',

'5', '6', '7', '8', '9');

CONST
Dig: Array[0..9] = ('0123456789');

Слайд 11

Множества типизированных констант Type Up = SET OF 'A' .. 'Z'

Множества типизированных констант

Type
Up = SET OF 'A' .. 'Z'

;
CONST
UpperCase: Up=['A' .. 'Z' ];
Слайд 12

Тип «строка» - STRING Стандартный тип, подобный типу массивов символов

Тип «строка» - STRING

Стандартный тип, подобный типу массивов символов

Слайд 13

Строковые выражения Состоят из строковых констант, переменных, функций и операций

Строковые выражения

Состоят из строковых констант, переменных, функций и операций

Слайд 14

Строковые выражения Сравнение строк производится слева направо до первого несовпадающего символа.

Строковые выражения

Сравнение строк производится слева направо до первого несовпадающего символа. Та

строка считается большей, в которой первый несовпадающий символ имеет больший номер в кодовой таблице символов ASCII.
Слайд 15

Строковые выражения Сравнение: 'A' '0'

Строковые выражения

Сравнение:
'A' < 'B' < 'C' < 'D' < …
'0' <

'1' < '2' < '3' < '4' < …
Слайд 16

Строковые выражения 'стол' 'ABC' '12'

Строковые выражения

'стол'<= 'столик'
'ABC'< 'ABDA'
'12' < '2'

Слайд 17

Встроенные функции для работы со строками

Встроенные функции для работы со строками

Слайд 18

Встроенные функции для работы со строками

Встроенные функции для работы со строками

Слайд 19

Встроенные функции для работы со строками

Встроенные функции для работы со строками

Слайд 20

Встроенные функции для работы со строками

Встроенные функции для работы со строками

Слайд 21

Встроенные процедуры для работы со строками

Встроенные процедуры для работы со строками

Слайд 22

Встроенные процедуры для работы со строками

Встроенные процедуры для работы со строками

Слайд 23

Встроенные процедуры для работы со строками

Встроенные процедуры для работы со строками

Слайд 24

Встроенные процедуры для работы со строками

Встроенные процедуры для работы со строками

Слайд 25

Задания. Определите результат работы следующих команд: S:=Copy (T, N, K); если а) Т= 'informatica', N=3, K=3

Задания. Определите результат работы следующих команд:

S:=Copy (T, N, K);
если
а) Т=

'informatica', N=3, K=3
Слайд 26

Задания. Определите результат работы следующих команд: S:=Copy (T, N, K); если

Задания. Определите результат работы следующих команд:

S:=Copy (T, N, K);
если
а) Т=

'informatica', N=3, K=3

Ответ: S= 'for'

Слайд 27

Задания. Определите результат работы следующих команд: S:=Copy (T, N, K); если б) Т= 'informatica', N=9, K=5

Задания. Определите результат работы следующих команд:

S:=Copy (T, N, K);
если
б) Т=

'informatica', N=9, K=5
Слайд 28

Задания. Определите результат работы следующих команд: S:=Copy (T, N, K); если

Задания. Определите результат работы следующих команд:

S:=Copy (T, N, K);
если
б) Т=

'informatica', N=9, K=5

Ответ: S= 'ica'

Слайд 29

Задания. Определите результат работы следующих команд: S:=Copy (T, N, K); если в) Т= 'informatica', N=7, K=1

Задания. Определите результат работы следующих команд:

S:=Copy (T, N, K);
если
в) Т=

'informatica', N=7, K=1
Слайд 30

Задания. Определите результат работы следующих команд: S:=Copy (T, N, K); если

Задания. Определите результат работы следующих команд:

S:=Copy (T, N, K);
если
в) Т=

'informatica', N=7, K=1

Ответ: S= 'a'

Слайд 31

Задания. Определите результат работы следующих команд: S:=Copy (T, N, K); если

Задания. Определите результат работы следующих команд:

S:=Copy (T, N, K);
если
г) Т=

'informatica', N=10, K=12

Ответ: ?????

Слайд 32

Задания. Определите результат работы следующих команд: D:=Length (Stroca); если a) Stroca= 'Hi'

Задания. Определите результат работы следующих команд:

D:=Length (Stroca);
если
a) Stroca= 'Hi'

Слайд 33

Задания. Определите результат работы следующих команд: D:=Length (Stroca); если a) Stroca= 'Hi' Ответ: D=2

Задания. Определите результат работы следующих команд:

D:=Length (Stroca);
если
a) Stroca= 'Hi'

Ответ: D=2

Слайд 34

Задания. Определите результат работы следующих команд: D:=Length (Stroca); если б) Stroca= ''

Задания. Определите результат работы следующих команд:

D:=Length (Stroca);
если
б) Stroca= ''

Слайд 35

Задания. Определите результат работы следующих команд: D:=Length (Stroca); если б) Stroca= '' Ответ: D=0

Задания. Определите результат работы следующих команд:

D:=Length (Stroca);
если
б) Stroca= ''

Ответ: D=0

Слайд 36

Задания. Определите результат работы следующих команд: D:=Length (Stroca); если в) Stroca= 'computer software'

Задания. Определите результат работы следующих команд:

D:=Length (Stroca);
если
в) Stroca= 'computer software'

Слайд 37

Задания. Определите результат работы следующих команд: D:=Length (Stroca); если в) Stroca= 'computer software' Ответ: D=17

Задания. Определите результат работы следующих команд:

D:=Length (Stroca);
если
в) Stroca= 'computer software'

Ответ:

D=17
Слайд 38

Задания. Определите результат работы следующих команд: Sim := Pos (S, S1); если a) S='KOL', S1= 'PRIKOL_5'

Задания. Определите результат работы следующих команд:

Sim := Pos (S, S1);
если
a)

S='KOL', S1= 'PRIKOL_5'
Слайд 39

Задания. Определите результат работы следующих команд: Sim := Pos (S, S1);

Задания. Определите результат работы следующих команд:

Sim := Pos (S, S1);
если
a)

S='KOL', S1= 'PRIKOL_5'

Ответ: Sim = 4

Слайд 40

Задания. Определите результат работы следующих команд: Sim := Pos (S, S1); если б) S='KOL', S1= 'KOSCHKA'

Задания. Определите результат работы следующих команд:

Sim := Pos (S, S1);
если
б)

S='KOL', S1= 'KOSCHKA'
Слайд 41

Задания. Определите результат работы следующих команд: Sim := Pos (S, S1);

Задания. Определите результат работы следующих команд:

Sim := Pos (S, S1);
если
б)

S='KOL', S1= 'KOSCHKA'

Ответ: Sim = 0

Слайд 42

Задания. Определите результат работы следующих команд: Sim := Pos (S, S1); если в) S='KO', S1= 'KOKOS'

Задания. Определите результат работы следующих команд:

Sim := Pos (S, S1);
если
в)

S='KO', S1= 'KOKOS'
Слайд 43

Задания. Определите результат работы следующих команд: Sim := Pos (S, S1);

Задания. Определите результат работы следующих команд:

Sim := Pos (S, S1);
если
в)

S='KO', S1= 'KOKOS'

Ответ: Sim = 1

Слайд 44

Задания. Определите результат работы следующих команд: Delete (Text, N, K); если a) Text='computer', N=4, K=3

Задания. Определите результат работы следующих команд:

Delete (Text, N, K);
если
a) Text='computer',

N=4, K=3
Слайд 45

Задания. Определите результат работы следующих команд: Delete (Text, N, K); если

Задания. Определите результат работы следующих команд:

Delete (Text, N, K);
если
a) Text='computer',

N=4, K=3

Ответ: Text = 'comer'

Слайд 46

Задания. Определите результат работы следующих команд: Delete (Text, N, K); если б) Text='computer', N=5, K=1

Задания. Определите результат работы следующих команд:

Delete (Text, N, K);
если
б) Text='computer',

N=5, K=1
Слайд 47

Задания. Определите результат работы следующих команд: Delete (Text, N, K); если

Задания. Определите результат работы следующих команд:

Delete (Text, N, K);
если
б) Text='computer',

N=5, K=1

Ответ: Text = 'compter'

Слайд 48

Задания. Определите результат работы следующих команд: Delete (Text, N, K); если в) Text='computer', N=5, K=10

Задания. Определите результат работы следующих команд:

Delete (Text, N, K);
если
в) Text='computer',

N=5, K=10
Слайд 49

Задания. Определите результат работы следующих команд: Delete (Text, N, K); если

Задания. Определите результат работы следующих команд:

Delete (Text, N, K);
если
в) Text='computer',

N=5, K=10

Ответ: Text = 'comp'

Слайд 50

Задания. Определите результат работы следующих команд: Delete (Text, N, K); если

Задания. Определите результат работы следующих команд:

Delete (Text, N, K);
если
г) Text='computer',

N=10, K=5

Ответ: Text =?????

Слайд 51

Задания. Определите результат работы следующих команд: Insert (E, T, K); если

Задания. Определите результат работы следующих команд:

Insert (E, T, K);
если
а) E='56',

T= '12+45*3' , K=3
Слайд 52

Задания. Определите результат работы следующих команд: Insert (E, T, K); если

Задания. Определите результат работы следующих команд:

Insert (E, T, K);
если
а) E='56',

T= '12+45*3' , K=3

Ответ: E = '1256+45*3'

Слайд 53

Задания. Определите результат работы следующих команд: Insert (E, T, K); если

Задания. Определите результат работы следующих команд:

Insert (E, T, K);
если
б) E='123456',

T= '07' , K=3
Слайд 54

Задания. Определите результат работы следующих команд: Insert (E, T, K); если

Задания. Определите результат работы следующих команд:

Insert (E, T, K);
если
б) E='123456',

T= '07' , K=3

Ответ: E = '07123456'

Слайд 55

Задания. Определите результат работы следующих команд: Insert (E, T, K); если

Задания. Определите результат работы следующих команд:

Insert (E, T, K);
если
в) E=

'56', T= '12+45*3' , K=17

Ответ: E = ?????

Слайд 56

Операции «склеивание» (конкатенация) + '12'+ '345'='12345' '345'+ '12'='34512'

Операции

«склеивание» (конкатенация)
+

'12'+ '345'='12345'
'345'+ '12'='34512'

Слайд 57

Операции «склеивание» (конкатенация) + '12'+ '345'='12345' '345'+ '12'='34512' А + В В + А

Операции

«склеивание» (конкатенация)
+

'12'+ '345'='12345'
'345'+ '12'='34512'

А + В <> В + А

Слайд 58

Операции «вырезка» (выделение символа) Т[i] T='54321‘ T[2]='4' T[5]='1'

Операции

«вырезка» (выделение символа)
Т[i]

T='54321‘
T[2]='4'
T[5]='1'

Слайд 59

Описание VAR X: CHAR; X='4' X='A' X=' '

Описание

VAR X: CHAR;

X='4'
X='A'
X=' '

Слайд 60

Описание VAR Y: STRING; Y='' Y='4' Y='jhgsdfuyevw skudfhus khas4' 0

Описание

VAR Y: STRING;

Y=''
Y='4'
Y='jhgsdfuyevw skudfhus khas4'

0 <= LENGTH(Y) < =255

Слайд 61

Описание VAR Z: STRING [11]; 0

Описание

VAR Z: STRING [11];

0 <= LENGTH(Z) < =11

Слайд 62

Задача № 1 Задано некоторое математическое выражение. Подсчитать общее количество содержащихся в нем символов арифметических операций.

Задача № 1

Задано некоторое математическое выражение. Подсчитать общее количество содержащихся

в нем символов арифметических операций.
Слайд 63

Задача № 1 Дано: (a+b)*c-x*y/2 Ответ : 5

Задача № 1

Дано: (a+b)*c-x*y/2

Ответ : 5

Слайд 64

Задача № 1 Program Prim1; VAR S : String; N, K

Задача № 1

Program Prim1;
VAR S : String;
N, K

: Byte;
Begin
Write ('Stroca='); Readln (S);
K:=0;
For N:=1 to Length (S) do
if (S[N]='+') or (S[N]='-') or (S[N]='*') or (S[N]='/') then inc (K);
Writeln (K)
End.
Слайд 65

Задача № 1 Program Prim1; VAR S : String; N, K

Задача № 1

Program Prim1;
VAR S : String;
N, K

: Byte;
Begin
Write ('Stroca='); Readln (S);
K:=0;
For N:=1 to Length (S) do
if (S[N]='+') or (S[N]='-') or (S[N]='*') or (S[N]='/') then inc (K);
Writeln (K); Readln
End.

If S[N] in ['+', '-', '*', '/'] then inc (K);

Слайд 66

Задача № 2 Проверить, является ли заданный текст перевертышем. Дано: казак

Задача № 2

Проверить, является ли заданный текст перевертышем.

Дано: казак
Ответ: да


Дано: коза
Ответ: нет

Слайд 67

Задача № 2 1 способ. Пусть S – заданный текст. Сформируем

Задача № 2

1 способ.
Пусть S – заданный текст. Сформируем

Т – «перевернутый» текст и сравним S и Т на равенство.
Слайд 68

Задача № 2 Program Prim2_1; VAR S, T : String; I

Задача № 2

Program Prim2_1;
VAR S, T : String;
I

: Byte;
Begin
Write ('Stroca='); Readln (S);
T:='';
For I:=Length (S) downto 1 do
T:=T+S[I];
if S = T then Writeln ('Да') else Writeln ('Нет');
Readln
End.
Слайд 69

Задача № 2 2 способ. Пусть S – заданный текст. Будем

Задача № 2

2 способ.
Пусть S – заданный текст.

Будем сравнивать 1-й символ с последним, 2-й – с предпоследним и т.д.

К А З А К

К О З А

Слайд 70

Задача № 2 Program Prim2_2; VAR S : String; i, d

Задача № 2

Program Prim2_2;
VAR S : String;
i, d

: Byte;
Begin
Write ('Stroca='); Readln (S);
i:=1; d:=Length (S);
While (i<=d div 2) and (S[i]=S[d-i+1]) do inc (i);
if i>d div 2 then Writeln ('Да') else Writeln ('Нет');
Readln
End.
Слайд 71

Задача № 3 В заданном тексте слова разделяются запятыми и пробелами.

Задача № 3

В заданном тексте слова разделяются запятыми и пробелами.

Удалить все пробелы между словами и вывести подстроку, которая содержится после первого символа «,».

Дано: Привет, Вася, привет!
Ответ: Вася,привет!

Слайд 72

Задача № 3 Program Prim3; VAR S : String; i :

Задача № 3

Program Prim3;
VAR S : String;
i :

Byte;
Begin
Write ('Stroca='); Readln (S); {Удаление
пробелов}
Repeat
i:=Pos (' ', S);
if i>0 then Delete (S, i, 1)
Until i=0;
Слайд 73

Задача № 3 i:=Pos (',', S); if i>0 then Writeln (Copy(S,i+1,Length(S)-i))

Задача № 3

i:=Pos (',', S);
if i>0 then Writeln (Copy(S,i+1,Length(S)-i))

else Writeln ('запятых нет');
Readln
End.
Слайд 74

Задача № 4 В заданном тексте слова разделяются только пробелами. Подсчитать

Задача № 4

В заданном тексте слова разделяются только пробелами. Подсчитать

число слов, начинающихся с буквы «а», и число слов, заканчивающихся буквой «о».

Дано: osa Anton Andrey hello akula
Ответ: 3
1

Слайд 75

Задача № 4 Program Prim4; VAR T : String; i, Ka,

Задача № 4

Program Prim4;
VAR T : String;
i, Ka,

Ko : Byte;
V : String [2];
Begin
Write ('Stroca='); Readln (T);
T:= ' ' + T + ' ' ;
Ka:=0; Ko:=0;
For i:=1 to Length(T)-1 do
Begin
Слайд 76

Задача № 4 V:=Copy (T,i,2); if (V= ' a') or (V=

Задача № 4

V:=Copy (T,i,2);
if (V= ' a') or (V=

' A') then inc (Ka)
else if (V= 'o ') or (V= 'O ') then inc (Ko)
End;
if Ka<>0 then Writeln (Ka) else Writeln ('нет');
if Ko<>0 then Writeln (Ko) else Writeln ('нет');
Readln
End.
Слайд 77

Задача № 5 Зашифровать заданный текст с помощью «тарабарской грамоты», где

Задача № 5

Зашифровать заданный текст с помощью «тарабарской грамоты», где

гласные остаются без изменения, а согласные изменяются по следующей схеме:
Слайд 78

Задача № 5 Дано: ЖДИТЕ ПЕТЮ В ГОСТИ К ВАМ ПО

Задача № 5

Дано:
ЖДИТЕ ПЕТЮ В ГОСТИ К ВАМ ПО

СРЕДАМ И ЧЕТВЕРГАМ
Ответ:
ХЦИКЕ НЕКЮ Ш ЧОЛКИ Т ШАР НО ЛМЕЦАР И ГЕКШЕМЧАР
Слайд 79

Задача № 5 Program Prim5; Const SO='БВГДЖЗКЛМНПРСТФХЦЧШЩ'; Var T, S :

Задача № 5

Program Prim5;
Const SO='БВГДЖЗКЛМНПРСТФХЦЧШЩ';
Var T, S

: String;
i, k, j, d : Byte;
b : Char;
Begin
Write ('Stroca='); Readln (T);
S:= '' ; d:=Length (SO);
For i:=1 to Length (T) do
Begin
Слайд 80

Задача № 5 b:=T[i]; j:=Pos (b, SO); if j 0 then

Задача № 5

b:=T[i];
j:=Pos (b, SO);
if j<>0 then S:=S+Copy

(SO,d+1-j,1)
else S:=S+b;
End;
Writeln (S)
End.
Слайд 81

Задача № 6 Найти сумму цифр заданного натурального числа Дано: 123456789101112 Ответ: 51

Задача № 6

Найти сумму цифр заданного натурального числа

Дано: 123456789101112
Ответ: 51

Слайд 82

Задача № 6 Program Prim6; Var a : String; c, cod,

Задача № 6

Program Prim6;
Var a : String;
c, cod,

i : Byte;
S : Integer;
Begin
Write ('Число='); Readln (a);
S:=0; i:=1;
Repeat
Val (a[i], c, cod);
if cod<>0 then
Слайд 83

Begin Writeln ('Ошибка'); Exit End Else Begin S:=S+c; inc (i) End

Begin
Writeln ('Ошибка'); Exit
End
Else
Begin
S:=S+c; inc

(i)
End
Until i>Length (a);
Writeln (S)
End.
Слайд 84

Задача № 7 В заданном тексте заменить словосочетание “abba” на “hi”,

Задача № 7

В заданном тексте заменить словосочетание “abba” на “hi”,

а “or” на “and”.

Дано: abbat, babaron or sevota
Ответ: hit, babaron and sevota

Слайд 85

Program Prim7; Var T : String; { ----- процедура замены Х

Program Prim7;
Var T : String;
{ ----- процедура замены Х

на Y в тексте Т ----- }
Procedure SWAP (X,Y: String);
Var K : Integer;
Begin
Repeat
K:=Pos (X,T);
if K<>0 then
Begin Delete (T, K, Length (X));
Insert (Y, T, K)
End
Until K=0
End;
Слайд 86

{ -------- основная программа -------- } Begin Repeat {ввод} Writeln ('Cтрока:');

{ -------- основная программа -------- }
Begin
Repeat {ввод}
Writeln ('Cтрока:');
Readln

(T)
Until T> '';
SWAP ('abba', 'hi'); {замена}
SWAP ('or', 'and');
Writeln (T)
End.
Слайд 87

Задача № 8 Определить, сколько раз в заданном тексте встречается словосочетание

Задача № 8

Определить, сколько раз в заданном тексте встречается словосочетание

“огр”.

Дано: ограда на ограде
Ответ: 2

Слайд 88

Задача № 8 Определить, сколько раз в заданном тексте встречается словосочетание

Задача № 8

Определить, сколько раз в заданном тексте встречается словосочетание

“огр”.

Будем «вырезать» по три символа; если это “огр” – посчитаем и «перепрыгнем» через три символа; если это не “огр” – идем дальше вправо.

Слайд 89

Program Prim8; Var Text : String; K, N : Byte; Begin

Program Prim8;
Var Text : String;
K, N : Byte;

Begin
Writeln ('Введите текст'); Readln (Text);
K := 0; N:=1;
While N<=Length (Text)-2 do
if Copy (Text, N, 3) = 'огр' then
Begin
K:=K+1; N:=N+3
End
Else N:=N+1;
Writeln ('Всего ', K , ' словосочетаний');
End.
Слайд 90

Program Prim8; Var Text : String; K, N : Byte; Begin

Program Prim8;
Var Text : String;
K, N : Byte;

Begin
Writeln ('Введите текст'); Readln (Text);
K := 0; N:=1;
While N<=Length (Text)-2 do
if Copy (Text, N, 3) = 'огр' then
Begin
K:=K+1; N:=N+3 {inc (K); inc (N, 3);}
End
Else N:=N+1; {inc (N)}
Writeln ('Всего ', K , ' словосочетаний');
Readln
End.
Слайд 91

Задача № 9 Записать данное натуральное число римскими цифрами. Дано: 2948 Ответ: MMCMXLVIII

Задача № 9

Записать данное натуральное число римскими цифрами.

Дано: 2948
Ответ: MMCMXLVIII

Слайд 92

Для записи римских цифр используется латиница: I – 1, V –

Для записи римских цифр используется латиница: I – 1, V –

5, X – 10, L – 50, C – 100, D – 500, M – 1000.

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

Слайд 93

Program Prim9; Const K=13; Sym: Array [1..K] of String [2]= ('M',

Program Prim9;
Const K=13;
Sym: Array [1..K] of String [2]=

('M', 'CM', 'D',
'CD', 'C', 'XC', 'L', 'XL', 'X', 'IX', 'V', 'IV', 'I');
C : Array [1..K] of Word = (1000, 900, 500, 400,
100, 90, 50, 40, 10, 9, 5, 4, 1);
Var Decimal : Word; Roman : String;
j : Byte;
Begin
Repeat
Writeln ('Введите целое десятичное число');
Readln (Decimal)
Until (Decimal>0) and (Decimal<4000);
Roman := ''; j := 1;
Слайд 94

While Decimal>0 do if Decimal>=C[j] then Begin Decimal:=Decimal - C[j]; Roman:=Roman

While Decimal>0 do
if Decimal>=C[j] then
Begin Decimal:=Decimal - C[j];

Roman:=Roman + Sym[j]
End
Else inc(j);
Writeln ('Римское число:', Roman)
End.
Слайд 95

Задача № 10 Проверить, совпадает ли заданный текст с каким-либо отрезком

Задача № 10

Проверить, совпадает ли заданный текст с каким-либо отрезком

ряда 12345.

Дано: 34
Ответ: Да

Дано: 134
Ответ: Нет

Слайд 96

Program Prim10; Const R='12345'; Var T: String; Begin Readln (T) ;

Program Prim10;
Const R='12345';
Var T: String;
Begin
Readln (T)

;
if Pos (T, R)>0 then Writeln ('Да')
else Writeln ('Нет')
End.