Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
delphi / песни о паскале.pdf
Скачиваний:
63
Добавлен:
26.03.2016
Размер:
5.16 Mб
Скачать

Глава 34

Структура программы

В каждом случае предпочтительный способ указан первым. Данные простых типов лучше передавать внутрь подпрограмм по значению. По ссылке CONST передают строки и другие сложные типы данных (скоро мы изучим их). Через имя функции возвращают лишь один результат. А если надо вернуть несколько результатов, или вернуть сложный тип данных, используют ссылки VAR.

Встроенные процедуры и функции

Программа, сработанная профессионалом, состоит почти из одних только процедур и функций, разработка которых отнимает львиную долю времени. Но не всегда программисты пишут их сами. В Паскале запасено немало готовых подпрограмм — это встроенные в язык и в библиотеки процедуры и функции. С ними можно ознакомиться в руководстве по языку и во встроенной справке. Некоторые из них вам известны, и применялись нами.

Что дальше?

Мы изучили фундамент языка Паскаль, который составляют простые типы данных и управляющие структуры. Впереди интересные и серьезные проекты, в основе которых лежат сложные типы данных. Вы осилите их, если пройденный материал надежно закрепился в вашей голове. Вы чувствуете это? Нет? Тогда без ложного стыда вернитесь к началу книги, ведь повторение — мать учения!

Итоги

Основу программ составляют три базовые управляющие структуры:

линейная последовательность, альтернатива и цикл.

Альтернатива организуется условными операторами и оператором выбора.

Для циклов в Паскале предусмотрено три оператора: 1) цикл с проверкой в начале, 2) цикл с проверкой в конце и 3) цикл со счетчиком.

Программа состоит из ряда секций. Секции описания констант, типов и переменных нужны для размещения данных. Исполняемые секции содержат процедуры, функции и главную программу.

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

Секции могут чередоваться произвольно. Но любой объект программы должен быть объявлен до того, как будет использован.

Основная нагрузка по обработке данных возлагается на процедуры и функции – подпрограммы. Из тела одних подпрограмм вызывают другие подпрограммы, – такие вызовы называют вложенными.

Передачу данных между подпрограммами предпочтительней выполнять через параметры и имена функций.

246

Глава 34

Структура программы

А слабо?

А) Найдите две ошибки в следующей программе.

var X : TNum;

type TNum = integer; const A = 10;

begin

X:= A+B;

end.

Б) Напишите булеву функцию Test и программу для её демонстрации. Функция должна проверять, делится ли без остатка первое число на второе, например:

Writeln(

Test(20,

4)

);

{

true }

Writeln(

Test(21,

5)

);

{

false }

 

 

 

 

 

 

В) Напишите целочисленную функцию Division для деления первого числа на второе без применения операции DIV. Вот примеры вызовов:

Writeln(

Division(20,

4)

);

{

5

}

Writeln(

Division(21,

5)

);

{

4

}

 

 

 

 

 

 

 

Подсказка: внутри функции вычитайте второе число из первого. Предотвратите деление на ноль (как результат возвращайте ноль). Сделайте два варианта: 1) деление положительных чисел, 2) деление чисел с учетом знака.

Г) Пусть ваша программа распечатает все множители (кроме единицы) введенного пользователем целого положительного числа, например:

Введите число: 60

2 2 3 5

Д) Напишите функцию для ввода целого числа. Она принимает строкуприглашение и возвращает введенное число, например:

X:= GetNumber(‘Введите стоимость покупки=’);

247

Соседние файлы в папке delphi