- •Глава 1. Основные понятия системы программирования Турбо Паскаль
- •Глава 1. Основные понятия системы программирования Турбо Паскаль
- •Глава 1. Основные понятия системы программирования Турбо Паскаль
- •Глава 1. Основные понятия системы программирования Турбо Паскаль
- •Глава 1. Основные понятия системы программирования Турбо Паскаль
- •Глава 1. Основные понятия системы программирования Турбо Паскаль
- •Глава 1. Основные понятия системы программирования Турбо Паскаль
- •Глава 1. Основные понятия системы программирования Турбо Паскаль
- •Глава 1. Основные понятия системы программирования Турбо Паскаль
- •Глава 1. Основные понятия системы программирования Турбо Паскаль
- •Глава 1. Основные понятия системы программирования Турбо Паскаль
- •Глава 1. Основные понятия системы программирования Турбо Паскаль
- •Глава 2. Операторы языка Паскаль
- •Глава 2. Операторы языка Паскаль
- •Глава 2. Операторы языка Паскаль
- •Глава 2. Операторы языка Паскаль
- •Глава 2. Операторы языка Паскаль
- •Глава 2. Операторы языка Паскаль
- •Глава 2. Операторы языка Паскаль
- •Глава 2. Операторы языка Паскаль
- •Глава 2. Операторы языка Паскаль
- •Глава 3. Процедуры и функции
- •Глава 3. Процедуры и функции
- •Глава 3. Процедуры и функции
- •Глава 4. Массивы
- •Глава 4. Массивы
- •Глава 5. Строковые величины
- •Глава 5. Строковые величины
- •Глава 6. Графика в системе Турбо Паскаль
- •Глава 6. Графика в системе Турбо Паскаль
- •Глава 6. Графика в системе Турбо Паскаль
- •Глава 6. Графика в системе Турбо Паскаль
- •Глава 6. Графика в системе Турбо Паскаль
- •Глава 6. Графика в системе Турбо Паскаль
- •Глава 6. Графика в системе Турбо Паскаль
- •Глава 6. Графика в системе Турбо Паскаль
- •Глава 6. Графика в системе Турбо Паскаль
- •Глава 6. Графика в системе Турбо Паскаль
Глава 3. Процедуры и функции
Функции
Подпрограмма-функция обрабатывает данные, переданные ей из главной программы, и затем возвращает полученный результат (в отличие от процедуры). Функция, определенная пользователем, состоит из заголовка и тела функции. Заголовок содержит зарезервированное слово Function, имя, список формальных параметров (заключенный в скобки) и тип возвращаемого функцией значения. Тело функции представляет собой локальный блок, по структуре сходный с программой. Общий вид описания функции:
Function <имя> (<параметры>): <тип результата>;
Const …; щ
… э блок описания
Var ….; ы
begin
<операторы>
end;
В разделе операторов должен находиться, хотя бы один оператор, присваивающий имени функции значение. Обращение к функции осуществляется по имени с указанием списка аргументов. Каждый аргумент должен соответствовать формальным параметрам и иметь тот же тип.
Пример 1. Найти значение следующего выражения: F(t) – F(c), где F(x)=Цx +2x2 +3x
Program m;
Uses crt;
Var t, c, r : real;
Function F(x: real) : real;
Begin
F:= sqrt(x)+ 2*sqr(x) + 3*x;
End;
Begin
Clrscr;
Write(‘Введите числа’);
Readln (t, c);
r:= F(t) – F(c);
write(‘результат =’, r:8:3); {8 символов на все число, 3 – на дробную часть, см п.1.4.2}
end.
Пример 2. Найти наибольшее из четырех чисел, используя подпрограмму нахождения наибольшего из двух чисел.
Program max;
Uses crt;
Var a, b, c, d, m, p, q:real;
Function Bid(x, y: real) : real;
Begin
If x>y then bid:=x
else bid:=y;
End;
Begin
Clrscr;
Write(‘Введите числа’);
Readln (a, b, c, d);
p:=bid(a, b);
q:= bid(c, d);
m:=bid(p, q);
write(‘наибольший элемент’, m:8:3);
end.
Глава 4. Массивы
Одномерные массивы
Все простые типы данных, рассматриваемые ранее, имеют два характерных свойства: неделимость и упорядоченность их значений. Составные, или структурированные, типы данных задают множество сложных значений с одним общим именем. Существует несколько методов структурирования, каждый из которых отличается способом обращения к отдельным компонентам. В данном учебном пособии будут рассмотрены только два структурированных типа данных: регулярный тип (массивы) и строковый тип (часть 5).
С понятием «массив» приходится встречаться при решении научно-технических, экономических задач обработки большого количества однотипных значений.
Таким образом, массив – это упорядоченная последовательность данных, состоящая из фиксированного числа элементов, имеющих один и тот же тип, и обозначаемая одним именем.
Название регулярный тип массивы получили за то, что в них объединены однородные элементы, упорядоченные (урегулированные) по индексам, определяющим положение каждого элементы в массиве.
Массиву присваивается имя, посредством которого можно ссылаться на него, как на единое целое. Элементы, образующие массив, упорядочены так, что каждому элементу соответствует совокупность номеров (индексов), определяющих его место в общей последовательности. Индексы представляют собой выражения простого типа. Доступ к каждому отдельному элементу осуществляется обращением к имени массива с указанием индекса нужного элемента: <имя массива>[<индекс>].
Описание массива определяет его имя, размер массива и тип данных. Общий вид описания массива:
Type <имя нового типа данных>=array[<тип индекса>] of <тип компонентов>;
Далее, в перечне переменных указывается имя массива, и через двоеточие указывается имя нового типа данных. Массив может быть описан и без представления типа в разделе описания типов данных:
Var <имя массива>: array [<тип индекса>] of <тип компонентов>;
Чаще всего в качестве типа индекса используется интервальный целый тип.
Одномерные массивы
Линейный (одномерный) массив – массив, у которого в описании задан только один индекс, если два индекса – то это двумерный массив и т.д. Одномерные массивы часто называют векторами, т.е. они представляют собой конечную последовательность пронумерованных элементов.
Присваивание начальных значений (заполнение массива) заключается в присваивании каждому элементу массива некоторого значения, заданного типа. Наиболее эффективно эта операция осуществляется при помощи оператора for. Ввод данных может осуществляться : с клавиатуры, при помощи различных формул, в том числе и датчика случайных чисел.
Индексированные элементы массива называются индексированными переменными и могут быть использованы так же, как и простые переменные. Например, они могут находиться в выражениях в качестве операндов, им можно присваивать любые значения, соответствующие их типу и т.д.
Алгоритм решения задач с использованием массивов:
· Описание массива
· Заполнение массива
· Вывод (распечатка) массива
· Выполнение условий задачи
· Вывод результата
Пример 1. Задан одномерный массив В(10), заполненный произвольным образом. Подсчитать количество элементов массива, больших заданного числа k.
Program massiv;
Uses crt;
Var b:array [1..10] of integer;
I, k, s : integer;
Begin
Clrscr; S:=0;
For i:=1 to 10 do
Begin
Write(‘Введите’, i, ‘-й элемент массива ’);
Readln (B[i]);
Write(b[i], ‘ ‘);
End;
Write(‘Введите число k’);
Readln(k);
For i:=1 to 10 do
If b[i]>k then s:=s+1;
Write(‘Количество элементов’, s);
End.
Пример 2. Определить самую высокую температуру и самый теплый день в мае.
Program massiv;
Uses crt;
Var t:array [1..31] of integer;
I, max, n : integer;
Begin
Clrscr;
For i:=1 to 31 do
Begin
t[i]:=random(20);
Write(b[i], ‘ ‘);
End;
Max:=t[1]; n:=1;
For i:=2 to 31 do
Begin
If t[i] > max then max:=t[i]; n:=i ;
End;
Write(‘максимальная температура’, max, ‘в’, n, ‘день’);
End.