Что такое findslide.org?

FindSlide.org - это сайт презентаций, докладов, шаблонов в формате PowerPoint.


Для правообладателей

Обратная связь

Email: Нажмите что бы посмотреть 

Яндекс.Метрика

Презентация на тему Язык программирования Pascal. Работа со строками

Содержание

Строковые переменныеТип данных (string) определяет строки с максимальной длиной 255 символов. Длину строки можно регулировать в секции описаний.Например,var   MaxLine : string; //длина строки до 255   City : string[30];
Язык программирования Pascal   Работа со строкамиА. Жидков Строковые переменныеТип данных (string) определяет строки с максимальной длиной 255 символов. Длину Операции над строками.Выражения, в которых операндами служат строки, называются строковыми.Над строками определены Изменение строковых переменныхДля изменения строковой переменной используется оператор присваивания (:=) или оператор Обращение к отдельным символам строкиК символам строки можно обратиться по номеру (индексу) Функции для обработки строкDelete (Str,Poz,N) - удаление N символов строки Str, начиная Функция LengthВстроенная функция Length (длина) позволяет определить фактическую длину текстовой строки, хранящейся Функция Upcase Функция Upcase позволяет преобразовывать символ любой литеры из строчного в Функция Copy Функция Copy позволяет копировать фрагмент некоторой строки из одной переменной Функция PosФункция Pos осуществляет поиск фрагмента в строке.Если заданный фрагмент в строке Функция Concat Функция Concat (Str1,Str2,...,StrN) выполняет конкатенацию (или сцепление) строк Str1,Str2,...,StrN в Задание на самоподготовкуПосчитайте количество цифр в веденной строке символов. Проверьте правописание “жи” Program cifra;VarWord : string;i,k : integer;Begincls;word:='1 t $ 45nnfft623456kugтра5234626ктор 122';k:=0;for i:=1 to Задание на самоподготовкуПроверьте правописание “жи” и “ши” в тексте. Выведите на экран Задание на самоподготовкуВыясните, сколько раз встречается каждая буква алфавита в предложенном тексте.programm Задание на самоподготовкуВ заданном тексте найти и распечатать слово максимальной длины.program maxi_slovo; Задание на самоподготовкуЗаданы разделенные пробелами фамилия, имя и отчество учащегося и три Процедура InsertПроцедура Insert вставляет в исходную строку, начиная с указанной позиции, другую Процедура DeleteПроцедура Delete удаляет в строке фрагмент определенной длины, начиная с указанной Процедура Str Общий вид Str(Chislo,Stroka)Процедура Str преобразует числовое значение переменной Chislo в Процедура ValОбщий вид Val(Stroka,Chislo,Code)Процедура Val преобразует строку Stroka в величину целочисленного или Задание на самоподготовкуСоставьте алгоритм замены в какой-нибудь литерной величине всех букв
Слайды презентации

Слайд 2 Строковые переменные
Тип данных (string) определяет строки с максимальной

Строковые переменныеТип данных (string) определяет строки с максимальной длиной 255 символов.

длиной 255 символов. Длину строки можно регулировать в секции

описаний.
Например,
var   MaxLine : string; //длина строки до 255   City : string[30]; // длина строки до 30 символов

Для переменных типа string выделяют память, на 1 байт больше максимальной длины строки.

Начальный байт с номером 0 отводится для хранения количества записанных в строку символов.

Встроенная функция Length возвращает фактическое количество литер в записанных в строку.

Слайд 3 Операции над строками.
Выражения, в которых операндами служат строки,

Операции над строками.Выражения, в которых операндами служат строки, называются строковыми.Над строками

называются строковыми.
Над строками определены два вида операций:
1. Операция сцепления

(конкатенации) обозначают как (+) .
Например: SumStr := ‘Язык'+‘ программирования'+‘ Pascal'
2. Операции отношения (=, <>, >, <, >=, <=) проводят сравнение двух строк слева направо до первого несовпадающего символа, и та строка считается больше, где первый несовпадающий символ имеет больший номер в таблице ASCII.
Например, выражение 'MS-DOS'<'MS-Dos' имеет значение True
Если строки имеют различную длину, но в общей части символы совпадают, считается, что короткая строка меньше, чем длинная.
Строки равны, если последовательность символов в них совпадает.

Слайд 4 Изменение строковых переменных
Для изменения строковой переменной используется оператор

Изменение строковых переменныхДля изменения строковой переменной используется оператор присваивания (:=) или

присваивания (:=) или оператор ввода данных.
Например:
Name:=‘Михаил’;
Write (‘Укажите Вашу

фамилию’);
Read (fam);
Если значение переменной после выполнения оператора присваивания превышает по длине максимально допустимую при описании величину, то все лишние символы справа отбрасываются.


Слайд 5 Обращение к отдельным символам строки
К символам строки можно

Обращение к отдельным символам строкиК символам строки можно обратиться по номеру

обратиться по номеру (индексу) символа в строке.
Например, чтобы

обратиться к третьему символу строки SumStr надо записать SumStr[3].
Запись SumStr[0] возвращает значение текущей длины строки.

Что выведет на экран следующий фрагмент программы?
Var StrRama:string[20];
Begin
StrRama:=‘МАМА МЫЛА РАМУ’;
WRITE (StrRama[14]+ StrRama[11]+ StrRama[2]+ StrRama[8], ord(StrRama[0]));
End.



Слайд 6 Функции для обработки строк
Delete (Str,Poz,N) - удаление N

Функции для обработки строкDelete (Str,Poz,N) - удаление N символов строки Str,

символов строки Str, начиная с позиции Poz.
Insert (What,Where,Poz) -

вставка строки What в строку Where, начиная с позиции Poz.
Copy (Str,Poz,Nstr) - строка длиной Nstr, начиная с позиции Poz, из строки Str.
Concat (Str1,Str2,...,StrN) - сцепление строк в указанном порядке.
Poz (What,Where) - обнаруживает появление подстроки What в строке Where.
UpCase (Ch) - преобразует строчную букву в прописную.
Str (Number,Stroka) - преобразует число в строку.
Val (Stroka,Number,Code) - преобразует строку в число и выдает код правильности преобразования.


Слайд 7 Функция Length
Встроенная функция Length (длина) позволяет определить фактическую

Функция LengthВстроенная функция Length (длина) позволяет определить фактическую длину текстовой строки,

длину текстовой строки, хранящейся в указанной переменной (а не

величину предельного размера строки, установленную при декларации):

Program DemoFunctionLength; Var   Word : string; Begin   write ('Введите слово :');   readln(Word);   writeln('Это слово состоит из ',Length (Word),' букв'); End.

Примечание. При подсчете фактической длины строки учитываются все входящие в нее символы, в том числе и пробелы.

Слайд 8 Функция Upcase
Функция Upcase позволяет преобразовывать символ любой литеры

Функция Upcase Функция Upcase позволяет преобразовывать символ любой литеры из строчного

из строчного в прописной.
Эта функция рассчитана на обработку

отдельного символа. Поэтому для обработки строки символов с помощью этой функции приходится организовывать цикл.
Program DemoFunctionUpcase; Var   Word : string;   i : integer; Begin   Word := 'фирма Microsoft';   for i := 6 to Length (Word) do     Word[i] := UpCase (Word[i]);     writeln(Word); End.
В результате работы программы на терминал выдается строка, содержащая большие английские буквы и маленькие русские.

Слайд 9 Функция Copy
Функция Copy позволяет копировать фрагмент некоторой строки

Функция Copy Функция Copy позволяет копировать фрагмент некоторой строки из одной

из одной переменной в другую. Вызывая эту функцию нужно

указать следующие параметры:
имя строки, из которой должен извлекаться копируемый фрагмент,
позицию в строке, начиная с которой будет копироваться фрагмент,
число копируемых символов.
Program DemoFunctionCopy; Var   Word : string;   Word1 : string[20]; Begin   Word := ‘Кадетский корпус';   writeln(Word);   Word1 := Copy (Word,11,6);   writeln(Word1); End.
Примечание. Если начальная или конечная позиции копируемого текста находятся вне пределов исходной строки символов, то сообщение об ошибке не выдается. Результатом выполнения операции в первом случае будет строка нулевой длины, во втором - фрагмент от начальной позиции копирования до конца исходной строки.

Слайд 10 Функция Pos
Функция Pos осуществляет поиск фрагмента в строке.
Если

Функция PosФункция Pos осуществляет поиск фрагмента в строке.Если заданный фрагмент в

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

позиции, с которой он начинается.
Если фрагмент не найден, то функция возвращает нуль.

Program DemoFunctionPos; Var   Word : string;   SearchWord : string[20];   Position : integer; Begin   Word := ‘Кадетский корпус';   writeln(Word);  SearchWord:=‘детский’;   Position := Pos(SearchWord, Word);   if Position <> 0 then       begin         write ('Фрагмент <',SearchWord,'> содержится в строке <',Word);         writeln ('>, начиная с позиции ',Position );       end     else       writeln('Фрагмент <',SearchWord,'> не содержится в строке <',Word);
End.

Слайд 11 Функция Concat
Функция Concat (Str1,Str2,...,StrN) выполняет конкатенацию (или сцепление)

Функция Concat Функция Concat (Str1,Str2,...,StrN) выполняет конкатенацию (или сцепление) строк Str1,Str2,...,StrN

строк Str1,Str2,...,StrN в том порядке, в каком они указаны

в списке параметров.
Сумма символов сцепленных строк не должна превышать 255.

Program DemoFunctionConcat; Var   Word : string;   Word1, Word2 : string[20]; Begin   Word1 := ‘кадетского';   Word2 := ‘корпуса';   Word := Concat('Кадеты ',Word1,Word2);   writeln(Word); end.

Слайд 12 Задание на самоподготовку
Посчитайте количество цифр в веденной строке

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

символов.
Проверьте правописание “жи” и “ши” в тексте. Выведите

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


Слайд 13 Program cifra;
Var
Word : string;
i,k : integer;
Begin
cls;
word:='1 t $

Program cifra;VarWord : string;i,k : integer;Begincls;word:='1 t $ 45nnfft623456kugтра5234626ктор 122';k:=0;for i:=1

45nnfft623456kugтра5234626ктор 122';
k:=0;
for i:=1 to Length(word) do
if (word[i]>='0') And (word[i]

then k:=k+1;
writeln(Word,' ', 'число цифр',k);
end.

Задание на самоподготовку

Посчитайте количество цифр в введенной строке символов.


Слайд 14 Задание на самоподготовку
Проверьте правописание “жи” и “ши” в

Задание на самоподготовкуПроверьте правописание “жи” и “ши” в тексте. Выведите на

тексте. Выведите на экран количество сделанных ошибок и исправленную

строку. Применяйте подпрограммы.

Program cifra;
Var
Word : string;
i,osh : integer;
procedure zhi_shi (var Word : string;var i,osh : integer);
begin
if word[i+1]='ы' then begin osh:=osh+1; word[i+1]:='и'; end;
end;
Begin
cls;
word:='Тишына, камышы. Шыпит костер. Жыдкий свет разливается живым золотом';
writeln(Word,' всего символов',Length(word));
osh:=0;
for i:=1 to Length (word) do
Begin
if (word[i]='ж')or (word[i]='Ж') then zhi_shi(Word,i,osh);
if (word[i]='ш')or (word[i]='Ш') then zhi_shi(Word,i,osh)
end;
writeln(Word,' число ошибок',osh);
end.


Слайд 15 Задание на самоподготовку
Выясните, сколько раз встречается каждая буква

Задание на самоподготовкуВыясните, сколько раз встречается каждая буква алфавита в предложенном

алфавита в предложенном тексте.
programm chislo_simbol;
var
i,k,simbol: integer;
Word

: string;
begin
cls;
word:='Мороз и солнце; день чудесный! Еще ты дремлешь, друг прелестный...';
writeln(Word,' ','всего символов',Length(word));
for i:=192 to 192+31 do
begin
simbol:=0;
write (chr(i),chr(i+32));
for k:=1 to Length (word) do
if (word[k]=chr(i))or (word[k]=chr(i+32)) then simbol:=simbol+1;
writeln (' ', simbol)
end;
end.

Слайд 16 Задание на самоподготовку
В заданном тексте найти и распечатать

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

слово максимальной длины.

program maxi_slovo;
var
k,max,nach,pmax:integer;
Word: string;
begin
cls;
word:='У

лукоморья дуб зеленый; златая цепь на дубе том...';
writeln(Word,' ','всего символов',Length(word));
max:=1; //длинна слова максимальной длинны
nach:=1; //начало текущего слова
for k:=1 to Length(word) do
if word[k]=' ' then
begin
if k-nach>max then begin max:=k-nach;pmax:=nach; end;
nach:=k
end;
write(copy(word,pmax,max)); //pmax начало максимального слова
end.

Слайд 17 Задание на самоподготовку
Заданы разделенные пробелами фамилия, имя и

Задание на самоподготовкуЗаданы разделенные пробелами фамилия, имя и отчество учащегося и

отчество учащегося и три оценки за экзамены. Напечатайте его

фамилию и инициалы и средний балл.

program familia;
var
i,k,simbol,oc1,oc2,oc3,c: integer;
Word : string;
srball: real;
p: array [1..5] of integer;
begin
cls;
word:='Фархутдинов Исмаил Бархударович 3 4 4';
Writeln (Word,' ','всего символов',Length (word));
i:=1;
for k:=1 to Length(word) do
if word[k]=' ' then begin p[i]:=k;i:=i+1;write (' ',p[i-1]) end; //массив с позициями пробелов p[i]
writeln;
write (copy(word,1,p[1]),copy(word,p[1]+1,1)+'. ',copy(word,p[2]+1,1)+'. ');//печать Фамилия И.О.
val(copy(word,p[3]+1,1),oc1,c); // преобразование оценки в число
val(copy(word,p[4]+1,1),oc2,c);
val(copy(word,p[5]+1,1),oc3,c);
srball:=(oc1+oc2+oc3)/3;
write (' средний балл ',srball:5:2);
end.


Слайд 18 Процедура Insert
Процедура Insert вставляет в исходную строку, начиная

Процедура InsertПроцедура Insert вставляет в исходную строку, начиная с указанной позиции,

с указанной позиции, другую строку. Процедура Insert (Word1,Word2,5) вставляет

строку Word1 в строку Word2, начиная с 5-ой позиции.

Program DemoFunctionConcat;
Var
Word1, Word2 : string;
Begin
Word1 := ‘ кадетский ';
Word2 := ‘Санкт-Петербургский корпус';
Insert(Word1,Word2,21);
writeln(Word2);
end.

Слайд 19 Процедура Delete
Процедура Delete удаляет в строке фрагмент определенной

Процедура DeleteПроцедура Delete удаляет в строке фрагмент определенной длины, начиная с

длины, начиная с указанной позиции. Так, оператор Delete(Word1,2,3) удаляет

из указанной строки фрагмент, длиной в три символа, начиная со второго.

Слайд 20 Процедура Str
Общий вид Str(Chislo,Stroka)
Процедура Str преобразует числовое значение

Процедура Str Общий вид Str(Chislo,Stroka)Процедура Str преобразует числовое значение переменной Chislo

переменной Chislo в строковую переменную Stroka. После первого параметра

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

Program DemoProcedureStr; Var   Word : string;   Chislo : integer; Begin   Chislo := 1560;   Str(Chislo:8, Word);   writeln(Word); End.

Слайд 21 Процедура Val
Общий вид Val(Stroka,Chislo,Code)
Процедура Val преобразует строку Stroka

Процедура ValОбщий вид Val(Stroka,Chislo,Code)Процедура Val преобразует строку Stroka в величину целочисленного

в величину целочисленного или вещественного типа и помещает результат

в Chislo.
Строка Stroka не должна содержать пробелов в начале и в конце.
Code целочисленная переменная. Если во время операции преобразования ошибки не обнаружено, значение Code равно нулю, если же ошибка обнаружена, Code будет содержать номер позиции первого ошибочного символа, а значение Chislo будет не определено.
Program DemoProcedureVal; Var   Word : string;   Chislo, Code : integer; Begin   writeln('Введите строку цифр ');   readln(Word);   Val(Word, Chislo, Code);   if Code <> 0     then       writeln('Ошибка! В позиции ',Code,' не цифра!',);
End.

  • Имя файла: yazyk-programmirovaniya-pascal-rabota-so-strokami.pptx
  • Количество просмотров: 129
  • Количество скачиваний: 0
Следующая - Иероглифы