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


Авторские права

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

Здесь можно скачать бесплатно "Александр Цветков - Язык программирования PASCAL" в формате fb2, epub, txt, doc, pdf. Жанр: Программирование. Так же Вы можете читать книгу онлайн без регистрации и SMS на сайте LibFox.Ru (ЛибФокс) или прочесть описание и ознакомиться с отзывами.
Рейтинг:
Название:
Язык программирования PASCAL
Издательство:
неизвестно
Год:
неизвестен
ISBN:
нет данных
Скачать:

99Пожалуйста дождитесь своей очереди, идёт подготовка вашей ссылки для скачивания...

Скачивание начинается... Если скачивание не началось автоматически, пожалуйста нажмите на эту ссылку.

Вы автор?
Жалоба
Все книги на сайте размещаются его пользователями. Приносим свои глубочайшие извинения, если Ваша книга была опубликована без Вашего на то согласия.
Напишите нам, и мы в срочном порядке примем меры.

Как получить книгу?
Оплатили, но не знаете что делать дальше? Инструкция.

Описание книги "Язык программирования PASCAL"

Описание и краткое содержание "Язык программирования PASCAL" читать бесплатно онлайн.








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, работа с множеством.


Задание 16

1. Внимательно изучите текст программы ABCMorse, задайте преподавателю вопросы.

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

3. Напишите программу, которая вводит из файла 10 текстовых строк и выводит их в другой файл, отсортированными в алфавитном порядке. Используйте алгоритм сортировки занятия №13, и операцию сравнения строк < или >. (5 баллов)

4. Основываясь на программе ABCMorse придумайте интересную задачу на использование текстовых строк и множеств. (доп. баллы)

- 44 -

Файл morse.txt

·-

-···

·--

--·

-··

·

···-

--··

··

·---

-·-

·-··

--

---

·--·

·-·

···

-

··-

··-·

····

-·-·

---·

----

--·-

--·--

-·--

-··-

··-··

··--

·-·-


Program ABCMorze;

Uses Sounds,CRT;

var A : array ['А '..'Я '] of string [5];

c : char;

f : text;

s : string;

i,j : integer;

dash, dot : integer;

morze : string [5];

begin

// Читаем файл и заполняем массив строк A['А'], A['Б'], A['Я'] азбукой Морзе

assign (f,'morze.txt'); reset (f);

for c:='А' to 'Я' do readln(f,A[c]);

close(f);

// Выводим таблицу на экран

for c:='А' to 'Я' do write(c,' ',A[c]:5,' ');

// Загружаем звуки

dash:=LoadSound('dash.wav'); dot:=LoadSound('dot.wav');

// Вводим текстовую строку

writeln; write('Введите сообщение '); readln(s);

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

if Upcase (s[i]) in ['А '..'Я '] then // Проверка принадлежности

begin // Если это русская буква (перевод в заглавные – Upcase)

morze:=A[Upcase(s[i])]; // Читаем s[i] элемент массива A в строку morze

for j:=1 to Length(morze) do // Разбираем строку Morze и проигрываем её

begin

write (morze [j]); // Вывод на экран буквы кодом Морзе

if morze[j]='-' then

begin

PlaySound(dash); Sleep(SoundLength(dash)); // играем dash

end

else

begin

PlaySound(dot); Sleep(SoundLength(dot)); // играем dot

end;

Sleep(50);

end;

write (' '); Sleep (500); // Пауза между буквами 500 мс

end; // end к внешнему оператору if

end.

- 45 -

Тема №17 Задача о квадратном уравнении

Решение квадратного уравнения выходит за рамки курса математики 7 класса, но мы сочли возможным внести эту классическую задачу программирования в дополнение.

Квадратным уравнением называется уравнение вида

ax2 + bx + c = 0


На первом этапе его решения определяется так называемый дискриминант:

d = b2 - 4ac


Далее рассматривают три случая

1. d < 0 – в этом случае вещественных решений нет[17];

2. d = 0 – один корень, определяемый формулой -b / 2a;

3. d > 0 – два корня, вычисляемых по формуле x1,2 = (-b ± √d)/2a, где знак «+» соответствует первому корню, а знак «–» – второму корню.


Составим программу для решения этой задачи:


Program SquareEquation;

var a, b, c : real; // Коэффициенты уравнения

d : real; // Дискриминант

x1, x2 : real; // Корни уравнения

begin

write ('Введите a, b, c ');

readln (a,b,c); // Ввод исходных данных

d:=b*b-4*a*c; // Вычисление дискриминанта

if d<0 then writeln('Решений нет')

else if d=0 then begin

x1:=-b/(2*a);

write('x=',x1)

end

else begin

x1:=(-b+sqrt(d))/(2*a);

x2:=(-b-sqrt(d))/(2*a);

write('x1=',x1,' x2=',x2)

end

end.


Последнюю ветвь else можно оптимизировать, убрав повторяющиеся вычисления (особенно вычисление квадратного корня)

else begin

d:=sqrt(d); a:=2*a;

x1:=(-b+d)/a;

x2:=(-b-d)/a;

write('x1=',x1,' x2=',x2)

end

- 46 -

01.06.2013

Примечания

1

Бинарные операции – имеющие два операнда, располагающиеся слева и справа от оператора

2

Унарная операция – имеющая только один операнд.

3

Интерфейс – в данном случае способ общения человека с компьютером.

4

В системе ABC Pascal отдельное окно консоли появляется только при использовании модуля CRT.

5

От английского Cathode Ray Tube – Электронно-лучевая трубка (ЭЛЧ)

6

Дополнительную информацию можно получить в справочной системе ABC Pascal, раздел Стандартные модули – Модуль GraphABC.

7

Синтаксис оператора – правила его записи.

8

Интерпретировать – толковать.

9

Назван в честь Дж. Буля – основателя математической логики.

10

Бинарные операции – имеющие два операнда, на которые действует эта операция.

11

Унарная операция – имеющая только один операнд.

12

Для этого в MS Word при создании файла надо выбрать тип «*.txt – обычный текст», а при открытии указать, что мы открываем текстовый файл в кодировке Win-1251.

13

В ABC Pascal существуют функции FileExists(name), проверяющая, существует ли файл с таким именем, и CanCreateFile(name), проверяющая можно ли создать файл с таким именем.

14

В ABC Pascal существуют две аналогичные функции Eoln и SeekEoln, которые вместо конца файла ищут конец строки.

15

Коды с 0 по 31 являются служебными и в таблице ANSI им не соответствуют никакие печатные символы.

16

Другие возможные базовые типы – перечисления (об этом позже).

17

Решение есть только в комплексных числах


На Facebook В Твиттере В Instagram В Одноклассниках Мы Вконтакте
Подписывайтесь на наши страницы в социальных сетях.
Будьте в курсе последних книжных новинок, комментируйте, обсуждайте. Мы ждём Вас!

Похожие книги на "Язык программирования PASCAL"

Книги похожие на "Язык программирования PASCAL" читать онлайн или скачать бесплатно полные версии.


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

Все книги автора Александр Цветков

Александр Цветков - все книги автора в одном месте на сайте онлайн библиотеки LibFox.

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

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

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

А что Вы думаете о книге? Оставьте Ваш отзыв.