СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Презентация "Строковые величины в языке программирования Pascal"

Категория: Информатика

Нажмите, чтобы узнать подробности

Презентация по теме "Строковые величины в языке программирования Pascal" может быть использована при изучении программирования на уроках информатики в 10-11 классах. Используется система программирования PascalABC.NET. Разбираются типовые задачи по обработке строковых величин, ко всем программам прилагаются скриншоты окна вывода при тестовом запуске программы.

Просмотр содержимого документа
«Презентация "Строковые величины в языке программирования Pascal"»

Язык программирования Паскаль  (версия PascalABC.NET) Строковые величины  в языке программирования Pascal

Язык программирования Паскаль (версия PascalABC.NET)

Строковые величины в языке программирования Pascal

Строковая константа (строка) –  последовательность любых символов, заключённая  в апострофы.  Например: 'Это строка' Длина строки – количество символов в строке  (до 255 символов). Пустая строка – строка с нулевой длиной  (не содержит ни одного символа, обозначается '' ). Объявление строковой переменной: Var : string ; Если только один символ, можно использовать символьный тип: Var : char ;

Строковая константа (строка) – последовательность любых символов, заключённая в апострофы. Например:

'Это строка'

Длина строки – количество символов в строке (до 255 символов).

Пустая строка – строка с нулевой длиной (не содержит ни одного символа, обозначается '' ).

Объявление строковой переменной:

Var : string ;

Если только один символ, можно использовать символьный тип:

Var : char ;

Операции со строками 1. Присваивание значения строковой переменной  s := 'Строка' ; 2. Ввод строки с клавиатуры  Read ln (s);  Примечание: при вводе значения строки апострофы не вводятся. 3. Вывод строки на экран  Writeln(s);  Примечание: при выводе строки апострофы не выводятся. 4. Работа с отдельным символом   s[ 6 ] := 'и' ;  Примечание: символы нумеруются, начиная с 1.

Операции со строками

1. Присваивание значения строковой переменной

s := 'Строка' ;

2. Ввод строки с клавиатуры

Read ln (s); Примечание: при вводе значения строки апострофы не вводятся.

3. Вывод строки на экран

Writeln(s); Примечание: при выводе строки апострофы не выводятся.

4. Работа с отдельным символом s[ 6 ] := 'и' ; Примечание: символы нумеруются, начиная с 1.

Операции со строками 5. Определение длины строки Функция Length(s)  возвращает значение длины строки. Например:  length(s) {=6}  length( 'ЭВМ' ) {=3}  length( '' ) {=0} 6. Присоединение строк (конкатенация) Соединяет несколько строк в одну строку. Обозначается знаком + . Например:  'КОМ' + 'ПЬЮ' + 'ТЕР' {='КОМПЬЮТЕР'}  '10' + '2'  {='102'}

Операции со строками

5. Определение длины строки

Функция Length(s) возвращает значение длины строки.

Например:

length(s) {=6}

length( 'ЭВМ' ) {=3}

length( '' ) {=0}

6. Присоединение строк (конкатенация)

Соединяет несколько строк в одну строку. Обозначается знаком + .

Например:

'КОМ' + 'ПЬЮ' + 'ТЕР' {='КОМПЬЮТЕР'}

'10' + '2' {='102'}

Операции со строками 7. Функция выделения части строки (подстроки)  Copy(s, n, k) Выделяет из строки s часть строки длиной k символов,  начиная с позиции n . Например: copy( 'ИНФОРМАТИКА' , 3 , 5 ) {='ФОРМА'} 8. Процедура удаления части строки  Delete (s, n, k) Удаляет из строки s часть строки длиной k символов,  начиная с позиции n . Например: delete( 'ИНФОРМАТИКА' , 4 , 8 ) {='ИНФ'}

Операции со строками

7. Функция выделения части строки (подстроки)

Copy(s, n, k)

Выделяет из строки s часть строки длиной k символов, начиная с позиции n .

Например:

copy( 'ИНФОРМАТИКА' , 3 , 5 ) {='ФОРМА'}

8. Процедура удаления части строки

Delete (s, n, k)

Удаляет из строки s часть строки длиной k символов, начиная с позиции n .

Например:

delete( 'ИНФОРМАТИКА' , 4 , 8 ) {='ИНФ'}

Операции со строками 9. Процедура вставки строки в другую строку  Insert (s1, s2, n) Вставляет строку s1 в строку s2 , начиная с позиции n . Например: insert( 'А' , '9 кл.' , 2 ) {='9А кл.'} 10. Функция поиска части строки (подстроки)  Pos(s1, s2) Возвращает номер позиции, в которой обнаружено первое появление подстроки s1 в строке s2 . Если такого вхождения нет, результат равен 0. Например: pos( 'ФОРМА' , 'ИНФОРМАТИКА' ) {=3} pos( 'Е' , 'ИНФОРМАТИКА' ) {=0}

Операции со строками

9. Процедура вставки строки в другую строку

Insert (s1, s2, n)

Вставляет строку s1 в строку s2 , начиная с позиции n .

Например:

insert( 'А' , '9 кл.' , 2 ) {='9А кл.'}

10. Функция поиска части строки (подстроки)

Pos(s1, s2)

Возвращает номер позиции, в которой обнаружено первое появление подстроки s1 в строке s2 . Если такого вхождения нет, результат равен 0.

Например:

pos( 'ФОРМА' , 'ИНФОРМАТИКА' ) {=3}

pos( 'Е' , 'ИНФОРМАТИКА' ) {=0}

, , =. Сравнение строк производится слева направо до первого несовпадающего символа. Строка считается больше, если первый несовпадающий символ имеет больший код в кодовой таблице (пробел, цифры, латинские заглавные, латинские строчные, русские заглавные, русские строчные). Строки равны, если они совпадают по длине и содержат одни и те же символы. Например: 'Слово1' 'Слово' 'СЛОВО' {истина} 'Слово' 'Слово' = 'Слово' {истина} " width="640"

Операции со строками

11. Сравнение строк

Операции отношения: = , , , , , =.

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

Например:

'Слово1'

'Слово' 'СЛОВО' {истина}

'Слово'

'Слово' = 'Слово' {истина}

Задача 1 Получить с помощью операций выделения части строки и конкатенации из слова «ИНФОРМАТИКА» слово «ФИРМА».  1 2 3 4 5 6 7 8 9 10 11 И Н Ф О РМА ТИКА Program Konkat1; Var a, b: string ; Begin a:= 'ИНФОРМАТИКА' ; b:=a[ 3 ]+a[ 1 ]+copy(a, 5 , 3 ); writeln(b) End .

Задача 1

Получить с помощью операций выделения части строки и конкатенации из слова «ИНФОРМАТИКА» слово «ФИРМА».

1 2 3 4 5 6 7 8 9 10 11

И Н Ф О РМА ТИКА

Program Konkat1;

Var a, b: string ;

Begin

a:= 'ИНФОРМАТИКА' ;

b:=a[ 3 ]+a[ 1 ]+copy(a, 5 , 3 );

writeln(b)

End .

Задача 2 В двух строках хранятся фамилия и имя человека. Получить две другие строки в виде «Фамилия_И.», «Имя_Ф.». Program Konkat2; Var a, b, c, d: string ; Begin write ( 'Введите фамилию: ' ); readln (a); write ( 'Введите имя: ' ); readln (b); writeln; c := a + '_' + b[ 1 ] + '.' ; writeln(c); d := b + '_' + a[ 1 ] + '.' ; writeln(d); End .

Задача 2

В двух строках хранятся фамилия и имя человека. Получить две другие строки в виде «Фамилия_И.», «Имя_Ф.».

Program Konkat2;

Var a, b, c, d: string ;

Begin

write ( 'Введите фамилию: ' ); readln (a);

write ( 'Введите имя: ' ); readln (b);

writeln;

c := a + '_' + b[ 1 ] + '.' ;

writeln(c);

d := b + '_' + a[ 1 ] + '.' ;

writeln(d);

End .

Задача 3 Из данной строки получить другую строку, состоящую из тех же символов, но в обратном порядке. Program Perevertysh; Var a, b: string ; i: integer ; Begin writeln( 'Введите строку:' ); readln(a); b:= '' ; //нач. знач. результата пустая строка //перебор символов от первого до последнего for i:= 1 to length(a) do  b:=a[i]+b; //присоед. текущ. симв. в начало writeln( 'Перевернутая строка:' ); writeln(b); End .

Задача 3

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

Program Perevertysh;

Var a, b: string ; i: integer ;

Begin

writeln( 'Введите строку:' ); readln(a);

b:= '' ; //нач. знач. результата пустая строка

//перебор символов от первого до последнего

for i:= 1 to length(a) do

b:=a[i]+b; //присоед. текущ. симв. в начало

writeln( 'Перевернутая строка:' );

writeln(b);

End .

Задача 4 Подсчитать, сколько раз в данном тексте встречается некоторый заданный символ. Program Kol_simv; Var a: string ; b: char ; i, k: integer ; Begin writeln( 'Введите текст:' ); readln(a); writeln( 'Какой символ подсчитать?' ); readln(b); k:= 0 ; //начальное значение счётчика for i:= 1 to length(a) do //перебор символов  //если заданный символ, увелич. счётчик на 1  if a[i]=b then k:=k+ 1 ; writeln( 'В тексте таких символов ' , k); End .

Задача 4

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

Program Kol_simv;

Var a: string ; b: char ; i, k: integer ;

Begin

writeln( 'Введите текст:' ); readln(a);

writeln( 'Какой символ подсчитать?' ); readln(b);

k:= 0 ; //начальное значение счётчика

for i:= 1 to length(a) do //перебор символов

//если заданный символ, увелич. счётчик на 1

if a[i]=b then k:=k+ 1 ;

writeln( 'В тексте таких символов ' , k);

End .

Задача 5 В данном тексте после каждого символа вставить некоторый заданный символ. Program Vstavka; Var a, b, c: string ; i: integer ; Begin writeln ( 'Введите текст:' ); readln (a); writeln ( 'Какой символ вставлять?' ); readln (b); c:= '' ; //начальное значение результ. строки for i:= 1 to length(a) do //перебор символов  //присоед. к результ. текущ. и задан. символ  c := c + a[i] + b; writeln( 'Получен текст:' ); writeln(c); End .

Задача 5

В данном тексте после каждого символа вставить некоторый заданный символ.

Program Vstavka;

Var a, b, c: string ; i: integer ;

Begin

writeln ( 'Введите текст:' ); readln (a);

writeln ( 'Какой символ вставлять?' ); readln (b);

c:= '' ; //начальное значение результ. строки

for i:= 1 to length(a) do //перебор символов

//присоед. к результ. текущ. и задан. символ

c := c + a[i] + b;

writeln( 'Получен текст:' );

writeln(c);

End .

Задача 6 В данном тексте удалить некоторый заданный символ. Program Udalenie; Var a, b, c: string ; i: integer ; Begin writeln ( 'Введите текст:' ); readln (a); writeln ( 'Какой символ удалять?' ); readln (b); c:= '' ; // начальное значение результ. строки for i:= 1 to length(a) do //перебор символов  //если текущий не равен заданому, присоедин.  if a[i]b then c := c + a[i]; writeln( 'Получен текст:' ); writeln(c); End .

Задача 6

В данном тексте удалить некоторый заданный символ.

Program Udalenie;

Var a, b, c: string ; i: integer ;

Begin

writeln ( 'Введите текст:' ); readln (a);

writeln ( 'Какой символ удалять?' );

readln (b);

c:= '' ; // начальное значение результ. строки

for i:= 1 to length(a) do //перебор символов

//если текущий не равен заданому, присоедин.

if a[i]b then c := c + a[i];

writeln( 'Получен текст:' );

writeln(c);

End .

Задача 7 В данном тексте заменить некоторый заданный символ другим заданным символом. Program Zamena; Var a, b, c, d: string ; i: integer ; Begin writeln ( 'Введите текст:' ); readln (a); writeln ( 'Какой символ заменять?' ); readln (b); writeln ( 'На какой заменять?' ); readln (c); d:= '' ; //начальное значение результ. строки for i:= 1 to length(a) do //перебор символов  if a[i]=b then //если текущий равен задан.  d := d + c //присоед. новый символ  else //иначе  d := d + a[i]; //присоед. текущий символ writeln( 'Получен текст:' ); writeln(d); End .

Задача 7

В данном тексте заменить некоторый заданный символ другим заданным символом.

Program Zamena;

Var a, b, c, d: string ; i: integer ;

Begin

writeln ( 'Введите текст:' ); readln (a);

writeln ( 'Какой символ заменять?' ); readln (b);

writeln ( 'На какой заменять?' ); readln (c);

d:= '' ; //начальное значение результ. строки

for i:= 1 to length(a) do //перебор символов

if a[i]=b then //если текущий равен задан.

d := d + c //присоед. новый символ

else //иначе

d := d + a[i]; //присоед. текущий символ

writeln( 'Получен текст:' );

writeln(d);

End .

Задача 8а Из данной строки выбрать все цифры и сформировать другую строку из этих цифр, сохранив их последовательность. Program Poisk1; //первый способ Var a, b, c, d: string ; i, j: integer ; Begin writeln ( 'Введите текст:' ); readln (a); b:= '0123456789' ; //строка цифр c:= '' ; //нач. знач. результ. for i:= 1 to length(a) do //перебор символов  begin //исходной строки  d := a[i]; //очередной символ  for j:= 1 to length(b) do //перебор строки цифр  if d=b[j] then //если текущ. - цифра  c := c + d; //присоед. к результ.  end ; writeln( 'Получена строка:' ); writeln(c); End .

Задача 8а

Из данной строки выбрать все цифры и сформировать другую строку из этих цифр, сохранив их последовательность.

Program Poisk1; //первый способ

Var a, b, c, d: string ; i, j: integer ;

Begin

writeln ( 'Введите текст:' ); readln (a);

b:= '0123456789' ; //строка цифр

c:= '' ; //нач. знач. результ.

for i:= 1 to length(a) do //перебор символов

begin //исходной строки

d := a[i]; //очередной символ

for j:= 1 to length(b) do //перебор строки цифр

if d=b[j] then //если текущ. - цифра

c := c + d; //присоед. к результ.

end ;

writeln( 'Получена строка:' ); writeln(c);

End .

Задача 8б Из данной строки выбрать все цифры и сформировать другую строку из этих цифр, сохранив их последовательность. Program Poisk2; //второй способ Var a, b, c, d: string ; i, j: integer ; Begin writeln ( 'Введите текст:' ); readln (a); b:= '0123456789' ; //строка цифр c:= '' ; //нач. знач. результата for i:= 1 to length(a) do //перебор символов  begin  d := a[i]; //очередной символ  if pos(d, b) 0 then //если он есть среди цифр  c := c + d; //присоед. к результату  end ; writeln( 'Получена строка:' ); writeln(c); End .

Задача 8б

Из данной строки выбрать все цифры и сформировать другую строку из этих цифр, сохранив их последовательность.

Program Poisk2; //второй способ

Var a, b, c, d: string ; i, j: integer ;

Begin

writeln ( 'Введите текст:' ); readln (a);

b:= '0123456789' ; //строка цифр

c:= '' ; //нач. знач. результата

for i:= 1 to length(a) do //перебор символов

begin

d := a[i]; //очередной символ

if pos(d, b) 0 then //если он есть среди цифр

c := c + d; //присоед. к результату

end ;

writeln( 'Получена строка:' );

writeln(c);

End .

= '0' ) and (cthen //если это цифра b := b + c; //присоед. к результату end ; writeln( 'Получена строка:' ); writeln(b); End . " width="640"

Задача 8в

Из данной строки выбрать все цифры и сформировать другую строку из этих цифр, сохранив их последовательность.

Program Poisk3; //третий способ

Var a, b, c: string ; i: integer ;

Begin

writeln ( 'Введите текст:' ); readln (a);

b:= '' ; // нач. знач. Результ.

for i:= 1 to length(a) do //перебор символов

begin

c := a[i]; //очередной символ

if (c= '0' ) and (cthen //если это цифра

b := b + c; //присоед. к результату

end ;

writeln( 'Получена строка:' );

writeln(b);

End .


Скачать

Рекомендуем курсы ПК и ППК для учителей

Вебинар для учителей

Свидетельство об участии БЕСПЛАТНО!