Александр Цветков - Язык программирования PASCAL

Тут можно читать онлайн Александр Цветков - Язык программирования PASCAL - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Язык программирования PASCAL
  • Автор:
  • Жанр:
  • Издательство:
    неизвестно
  • Год:
    неизвестен
  • ISBN:
    нет данных
  • Рейтинг:
    4.44/5. Голосов: 91
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

Александр Цветков - Язык программирования PASCAL краткое содержание

Язык программирования PASCAL - описание и краткое содержание, автор Александр Цветков, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

Язык программирования PASCAL - читать онлайн бесплатно полную версию (весь текст целиком)

Язык программирования PASCAL - читать книгу онлайн бесплатно, автор Александр Цветков
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

- 40 -

Тема №15 Работа со строками символов

В языке Pascal присутствуют два типа для работы с символьной информацией. Переменные типа char могут принимать значение одного из 256 символов стандартной таблицы кодировки. Константы типа char записываются в виде одного символа в апострофах. Символьные переменные можно вводить оператором readln, но при этом придется еще нажимать Enter для подтверждения ввода. В модуле CRT есть очень удобная функция ReadKey, которая вводит символьную переменную без подтверждения ввода.

Пример :

var c : char;

c:='a';

readln(c);

c:=ReadKey;

Для работы с символьными переменными в языке Pascal есть две специальные функции: ord и chr. Первая функция возвращает код (порядковый номер в таблице кодировки) символа, например ord('A') вернет значение 65. Вторая функция имеет обратный смысл, по коду, возвращает символ, т.е. chr(65) будет символ 'A'. Следующий пример выводит все символы кодовой таблицы, начиная с кода 32 [15] Коды с 0 по 31 являются служебными и в таблице ANSI им не соответствуют никакие печатные символы. и заканчивая кодом 255. Оператор ifв цикле производит переход на новую строку после вывода линейки из 32 символов. Результат работы программы приведен ниже.

ProgramANSI;

UsesCRT;

varc : char;

i : integer;

begin

fori:=32 to255 do

begin

write(Chr (i));

if(i+1) mod 32 = 0 thenwriteln;

end;

end.

В языке Turbo Pascal появился специальный тип string который имеет черты - фото 30

В языке Turbo Pascal появился специальный тип string, который имеет черты массива символов, а также некоторые дополнительные удобные возможности. Тип string реализован и в языке ABC Pascal.

Строки в Pascal ABC имеют тип string и состоят из не более чем 255 символов. При описании var s: string; под переменную s отводится 256 байт, при этом в нулевом байте хранится длина строки.

Для экономии памяти предусмотрено описание вида var s1: string [40]; В этом случае под строку отводится 41 байт (нулевой байт – под длину строки). В случае присваивания переменной s1 строки из более чем 40 символов лишние символы отсекаются, и длина строки s1 полагается равной 40.

При выполнении операции конкатенации («склеивания») вида s1+s1 результат считается строкой типа string, т.е. занимает 256 байт. Однако если при конкатенации результат будет занимать более 255 символов, то программа завершится с ошибкой. Строки можно сравнивать, подразумевается их упорядоченность по алфавиту.

К символам в строке можно обращаться, используя индекс: s[i] обозначает i-й символ в строке. Обращение к нулевому символу s[0] считается ошибочным.

- 41 -

Для того чтобы узнать длину строки следует воспользоваться встроенной функцией Length (s).

Чтобы изменить длину строки, следует воспользоваться процедурой SetLength (s,n).

Если индекс i выходит за пределы памяти, отводимой под строку, то выдается сообщение об ошибке. Однако если индекс i выходит лишь за пределы длины строки, то сообщение об ошибке не выдается.

Тип char и тип string могут быть параметрами процедур и функций, а также возвращаться функциями. Для иллюстрации работы со строками и символами напишем функцию, заменяющую в строки заданный символ на другой и возвращающую результат.

ProgramStrings; // замена символов a на b в строке s

functionreplace(s : string; a,b : char):string;

vari : integer;

begin

fori:=1 toLength (s) do// цикл для всех символов строки

ifs[i]=a thens[i]:=b; // замена символов

replace:=s; // имени функции присваивается значение

end;

begin

writeln (replace('мама мыла раму','м','н')); // Проверка работы функции

end.

Тип char или string может использоваться для чтения информации из текстового файла, например:

ProgramReadText;

UsesCRT;

varname : string; // Имя файла

s : string; // Буфер для чтения строки

f : text; // Файловая переменная

n : integer; // Счетчик строк

begin

write('Введите имя файла: '); readln (name); // Ввод имени файла

assign (f,name); reset (f); // Открытие файла

n:=0; // Обнуление счетчика

whilenot eof (f) do// Чтение «пока не конец файла»

begin

readln (f,s); // Чтение одной строки из файла f

writeln (n:4,': ',s); // Вывод номера и строки на экран

inc(n); // inc(n) – операция увеличения на единицу

ifn mod 25 = 0 thenreadln; // Пауза после каждой 25-й строки

end;

close (f);

end.

Задание 15

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

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

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

- 42 -

Для работы с текстовыми строками в языке Pascal существует набор функций, который немного расширен в реализации ABC Pascal. Приведем справочник по этим функциям.

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

Имя и параметры

Типы параметров

Тип возвращаемого значения

Действие

Length(s)

s - string

integer

возвращает длину строки s

Copy(s,index,count)

s - string, index и count - integer

string

возвращает подстроку строки s длины count, начиная с позиции index

Delete(s,index,count)

s - string,

удаляет в строке s count символов index и начиная с позиции index count - integer

Insert(subs,s,index)

s, subs - string, index - integer

вставляет подстроку subs в строку s с позиции index

Pos(subs,s)

s, subs- string

integer

возвращает позицию первой подстроки subs в строке s (или 0 если подстрока не найдена)

SetLength(s,n)

s - string, n - integer

устанавливает длину строки s равной n

Str(x,s)

Str(x:n,s)

Str(x:n:m,s)

s - string, x - integer, real и n, m - integer

преобразует x к строковому представлению (во втором и третьем случаях согласно формату вывода, устанавливаемому n и m) и записывает результат в строку s

Val(s,v,code)

s - string, v - integer, real, и code - integer

преобразует строку s к числовому представлению и записывает результат в переменную v. Если преобразование возможно, то в переменной code возвращается 0, если невозможно, то в code возвращается ненулевое значение

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Александр Цветков читать все книги автора по порядку

Александр Цветков - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Язык программирования PASCAL отзывы


Отзывы читателей о книге Язык программирования PASCAL, автор: Александр Цветков. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x