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


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

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

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

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

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

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

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

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

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








2.99•1033, -0.21•10-10, 35.6•108, 1200000, 0.000015 (5 баллов)

2. Запишите в языке Pascal в формате с фиксированной точкой следующие числа:

2.71828, 1.25•102, -1.5•10-1 (3 балла)


- 25 -


Вывод вещественных чисел с помощью оператора write/writeln происходит обычным способом. При выводе мы можем применять форматы вывода, отделяя их от переменной двоеточием. Формат вывода может состоять из одного или двух чисел, разделенных двоеточием (см. пример). При указании двух чисел первое определяет число позиций, резервируемых для вывода всего числа, а второе – число позиций для дробной части. Если в качестве формата вывода используется одно число, то оно определяет число позиций, резервируемых для вывода всего числа, а само число выводится в формате с плавающей точкой. В этом случае рекомендуется задавать значение формата не меньше 10, так как под экспоненту отводится пять позиций и еще две позиции выделяется под знак числа и десятичную точку. Если при выводе формат числа не указывать, то Pascal попытается вывести число наиболее компактным способом. Лучше уяснить действие форматов поможет следующий пример:


Program Formats;

Uses CRT;

var x : real;

begin

x:=1234.567;

writeln(x);

writeln(x:8:3);

writeln(x:8:2);

writeln(x:8:1);

writeln(x:12);

writeln(x:14);

end.


Рассмотрим еще одну программу, которая строит таблицу длин окружностей радиусами от 0.1 до 1 см с шагом 0.1 (заметьте, что для числа π используется встроенная константа pi):


Program Table;

Uses CRT;

var r, s : real;

begin

r:=0.1; // Начальное значение

repeat

s:=2*pi*r; // Вычисление длины

writeln (r:3:1,s:6:2); // Вывод

r:=r+0.1; // Увеличение радиуса на 0.1

until r>1.0; // Условие окончания цикла

end.


Задание 8 (часть 2)

3. Проанализируйте пример и постройте аналогичную программу, вычисляющую площади круга (по формуле s = πr2). (2 балла)

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

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

6. * Напишите программу, которая вводила бы градусы, минуты и секунды дуги переводила их в градусы и его десятичные доли.

- 26 -

Тема №9. Подпрограммы-функции


При решении сложных задач разумно разбить алгоритм на несколько более простых составляющих. В языке Pascal существуют специальные средства для этого – подпрограммы. Есть два вида подпрограмм: процедуры и функции. Функция получает информацию от вызывающей программы через свои параметры. Параметры, описанные в заголовке функции, называются формальными параметрами. Параметры, указанные при вызове функции называют фактическими. Типы и число фактических параметров должны соответствовать типу и числу формальных параметров. Следующий пример иллюстрирует работу функций.


Program Table;

Uses CRT; // Подключение модулей

// Описания функций, требующихся в программе

function cube(x:real):real; // возведение в куб

begin

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

end;

function sign(x:real):integer; // вычисление знака числа

begin

if x>0 then sign:=1

else if x=0 then sign:=0

else sign:=-1;

end;

// ==== Начало главной программы ==========

var a : real; // блок описания переменных

const a1 = -5.0; // блок описания констант (постоянных)

a2 = +5.0;

st = 0.5;

begin

a:=a1;

while (a<=a2) do

begin

writeln(a:4:1,cube (a):10:3,sign(a):3); // вызов функций

a:=a+st;

end;

end.


Обратите внимание, что внутри тела функции (заключенного в операторные скобки beginend) вы обязаны хотя бы один раз имени функции присвоить значение. В этой программе также используется новый материал, не связанный с функциями, – это константы. Значение констант задается через знак равенства (а не присваивания). Тип константы определяется из типа присваиваемого значения. Константы, в отличие от переменных, не могут менять свое значение.

- 27 -


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


Program Power2;

Uses CRT;

function power(x : real; n : integer) : real; // возведение в степень

var i : integer; // локальные переменные r : real;

begin

r:=1.0;

for i:=1 to n do r:=r*x; // накопление произведения

power:=r; // результат присвоить имени функции

end;

// ==== Начало главной программы ================

var i : integer; // блок описания переменных

begin

for i:=1 to 10 do

writeln(i:2,power (2.0,i):6:0);

end.


В данном примере функция имеет два формальных параметра (типа real и типа integer), а также две локальных переменных. Имена локальных переменных действуют только внутри тела функции. Переменная i в главной программе, и переменная i внутри функции – это две разных переменных. При вызове функции первый фактический параметр соответствует первому формальному параметру. Второй параметр – второму.


Задание 9 1. Модифицируйте последний пример таким образом, чтобы функция power вычисляла правильно не только натуральные степени, но и отрицательные.

Напоминание:

x-n = 1 / xn.

Подсказка: следует использовать оператор if, а также функцию abs(n), которая вычисляет модуль числа.

(5 баллов)

2. Напишите функцию, вычисляющую факториал числа n! =1•2•3• ... •n.

Подсказка: ее несложно сделать, путем модификации функции power.

(5-8 баллов)


- 28 -

Тема №10. Подпрограммы-процедуры


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


В стандартной графической библиотеке нет процедуры, рисующей треугольники. Давайте создадим такую процедуру и проверим ее работу.


Program UseProc;

Uses GraphABC;

Procedure Triangle(x1,y1,x2,y2,x3,y3:integer);

// Процедура рисует треугольник

begin

line(x1,y1,x2,y2);

line(x2,y2,x3,y3);

line(x3,y3,x1,y1);

end;

// Главная программа

begin

SetWindowSize(500,500);

Triangle(100,200,400,300,250,150);

Triangle(10,20,30,40,50,10);

end.


Как мы видим, процедура Trianlge имеет шесть целочисленных параметров и вызывает функции трижды функции Line для соединения точек. Создав такую процедуру, мы можем использовать ее столько раз, сколько нам надо в главной программе.


Задание 10

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

- 29 -

Модули (Units)


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


Поместим описание процедуры Triangle в модуль MyGraph.


Unit MyGraph;

// Заголовок модуля. Имя файла модуля должно совпадать

// с именем модуля! Т.е. в нашем случае оно должно быть

// MyGraph.pas, иначе главая программа его не найдет!

Uses GraphABC; // Модули могут использовать другие модули

Procedure Triangle(x1,y1,x2,y2,x3,y3:integer);

// Эта процедура находится в модуле MyGraph

begin

line(x1,y1,x2,y2);

line(x2,y2,x3,y3);

line(x3,y3,x1,y1);

end;

end. // Этот оператор – завершение модуля.


Теперь главная программа будет выглядеть так:


Program UseProc;

Uses GraphABC, MyGraph; // Использование стандартного и собственного модуля

begin

SetWindowSize(500,500); // Эта процедура описана в GraphABC


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

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

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


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

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

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

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

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

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

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