Язык программирования ABC PASCAL - [15]
>Program Strings; // замена символов a на b в строке s
>function replace(s : string; a,b : char):string;
>var i : integer;
>begin
>for i:=1 to Length (s) do // цикл для всех символов строки
>if s[i]=a then s[i]:=b; // замена символов
> replace:=s; // имени функции присваивается значение
>end;
>begin
> writeln (replace('мама мыла раму','м','н')); // Проверка работы функции
>end.
Тип char или string может использоваться для чтения информации из текстового файла, например:
>Program ReadText;
>Uses CRT;
>var name : string; // Имя файла
> s : string; // Буфер для чтения строки
> f : text; // Файловая переменная
> n : integer; // Счетчик строк
>begin
> write('Введите имя файла: '); readln (name); // Ввод имени файла
> assign (f,name); reset (f); // Открытие файла
> n:=0; // Обнуление счетчика
>while not eof (f) do // Чтение «пока не конец файла»
>begin
> readln (f,s); // Чтение одной строки из файла f
> writeln (n:4,': ',s); // Вывод номера и строки на экран
> inc(n); // inc(n) – операция увеличения на единицу
>if n mod 25 = 0 then readln; // Пауза после каждой 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 возвращается ненулевое значение | |
Concat(s1,...,sn) | s1,..., sn - string | string | возвращает строку, являющуюся string результатом слияния строк s1,..., sn. Результат тот же, что у выражения s1+s2+...+sn |
UpCase(c) | c - char | char | возвращает символ c, преобразованный к верхнему регистру |
LowCase(c) | c - char | char | возвращает символ c, преобразованный к нижнему регистру |
UpperCase(s) | s - string | string | возвращает строку s, преобразованную к верхнему регистру |
LowerCase(s) | s - string | string | возвращает строку s, преобразованную к нижнему регистру |
Trim(s) | s - string | string | возвращает копию строки s с удаленными лидирующими и заключительными пробелами |
- 43 -
Тема №16 Множества символов
В языке Pascal есть очень интересный тип данных множество. Множество представляет собой набор элементов одного порядкового типа. Элементы множества считаются неупорядоченными; каждый элемент может входить во множество не более одного раза. Тип множества описывается следующим образом: set of базовый тип;
В качестве базового может быть любой порядковый тип с элементами, для которых функция Ord возвращает значения в диапазоне от 0 до 255. К таким типам, из изученных нами, относятся тип char и byte (а также их подмножества).[16] Аналогично массивам можно определить название нового типа в секции type, например:
type ByteSet = set of byte; CharSet = set of char; Digits = set of '0'..'9'; // подмножества типа char
Сами множества задаются в виде перечисления их элементов (возможно с использованием диапазонов), заключенные в квадратные скобки:
> var Vowels : CharSet; // можно было написать vowels : set of char; Good : Digits; // можно было написать good : set of '0'..'9';
> …
> Vowels :=['A ', 'E ', 'O', 'I', 'U']; // Элементы явно перечислены
> Good:=['3'.. '5', '10']; // Диапазон и отдельный элемент
Для проверки принадлежности элемента множеству существует операция in:
var c : char;
…
if c in Vowels then inc(n); // Если с – гласная, то увеличить n на 1
На обороте страницы приведена программа, которая вводит текстовую строку с экрана и выводит ее на экран азбукой Морзе, заодно проигрывая ее. В этой программе используется много нового: работа с модулем Sound, массив из строк, индексация массива не целыми числами, а типом char, функция задержки выполнения Sleep, функция перевода буквы в верхний регистр Upcase, работа с множеством.
Рассмотрен современный редакционно-издательский процесс и про–анализирована роль редактора на каждом из его этапов. Особое внимание уде–лено подготовке рукописи к изданию, анализу композиции и содержания произведения, редактированию нетекстовых элементов, таких как формулы, таблицы, иллюстрации. Даны характеристики аппарата книжных и жур–нальных изданий. Освещена тема взаимоотношений автора и редактора.Для студентов высших учебных заведений, получающих образование по направлениям (специальностям) «Книжное дело», «Издательское дело и редактирование», «Литературное творчество».
Слово «миссионер» привычно уже относить к католикам или протестантам, американцам или корейцам. Но вот перед нами книга, написанная миссионером Русской Православной Церкви. И это книга не о том, что было в былые века, а о том, как сегодня вести разговор о вере с тем, кто уже готов спрашивать о ней, но еще не готов с ней согласиться. И это книга не о чужих победах или поражениях, а о своих.Ее автор — профессор Московской Духовной Академии, который чаще читает лекции не в ней, а в светских университетах (в год с лекциями он посещает по сто городов мира)
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
Непосредственной сдаче экзамена или зачета по любой учебной дисциплине всегда предшествует достаточно краткий период, когда студент должен сосредоточиться, систематизировать свои знания. Выражаясь компьютерным языком, он должен «вывести информацию из долговременной памяти в оперативную», сделать ее готовой к немедленному и эффективному использованию. Специфика периода подготовки к экзамену или зачету заключается в том, что студент уже ничего не изучает (для этого просто нет времени): он лишь вспоминает и систематизирует изученное.Содержание и структура пособия соответствуют требованиям Государственного образовательного стандарта высшего профессионального образования.Издание предназначено студентам педагогических вузов.
В учебнике, написанном коллективом преподавателей РГПУ им. Герцена под руководством Л. А. Михайлова – декана факультета безопасности жизнедеятельности, лауреата премии Президента РФ, представлены новейшие концепции всех естественных наук: биологии, генетики, физики, химии, математики, информатики, биохимии, геологии, антропологии и других. В книге раскрываются социальные последствия новых научных открытий, даются современные технологии обучения в области концепций современного естествознания.Учебник полностью соответствует Государственному образовательному стандарту и имеет гриф УМО.
Объектом изучения данного курса лекций является фирма как единая система, которая функционирует в условиях рыночной экономики. Рассматриваются организационно-правовые формы фирм, основные условия обеспечения экономической стабильности фирмы, принципы ее управления и организационная структура, порядок обеспечения кадрами, модель функционирования фирмы в рыночной среде. Описана комплексная система обеспечения ресурсами (трудовые ресурсы, основные и оборотные средства), система показателей для оценки эффективности их применения.Этот курс лекций предназначен для студентов, аспирантов и преподавателей экономических факультетов университетов и экономических вузов.