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

Здесь есть возможность читать онлайн «Александр Цветков - Язык программирования PASCAL» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Детская образовательная литература, Прочая околокомпьтерная литература, Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Язык программирования PASCAL: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Язык программирования PASCAL»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

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

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Язык программирования PASCAL», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

ProgramTable;

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

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

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

begin

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

end;

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

begin

ifx>0 thensign:=1

else ifx=0 thensign:=0

elsesign:=-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 -

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

ProgramPower2;

UsesCRT;

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

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

begin

r:=1.0;

fori:=1 ton dor:=r*x; // накопление произведения

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

end;

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

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

begin

fori:=1 to10 do

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

end.

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

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

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

x -n= 1 / x n.

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

(5 баллов)

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

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

(5-8 баллов)

- 28 -

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

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

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

ProgramUseProc;

UsesGraphABC;

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 имеет шесть целочисленных параметров и - фото 19

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

Задание 10

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

- 29 -

Модули (Units)

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

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

Интервал:

Закладка:

Сделать

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

Представляем Вашему вниманию похожие книги на «Язык программирования PASCAL» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


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

Обсуждение, отзывы о книге «Язык программирования PASCAL» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x