Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
методичка паскаль.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
597 Кб
Скачать
☆

Табулирование функций

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

Основные моменты:

В блоке переменных прописываем аргумент (х), величину шага (dx) и количество повторений (kn).

В блоке ввода данных нарисуем шапку будущей таблицы (см. пример)

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

Пример:

…

Writeln (“ “);

Readln ();

Writeln (“_____________________”);

Writeln (“| x | y |”); построение таблицы

Writeln (“_____________________”);

…

х:=x+dx; приращение функции

Далее в решении задач для самостоятельного решения необходимо воспользоваться примером, все остальные части программы уже знакомы Вам из предыдущих работ .

Массивы

Одномерные массивы.

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

Массив – это упорядоченный набор фиксированного количества некоторых значений.

Формат описания массива

<имя массива>:array [<количество>] of <тип компонента>

<имя массива> - идентификатор массива

Array – массив

<количество> - количество элементов в массиве

Of - для

<тип переменных> - описание типа переменных в массиве.

Примеры:

Описание массива состоящего из 100 элементов:

A:array [1..100] of real;

Описание массива по годам 1901-2000:

Vek: array [1901..2000] of integer.

Для использования случайных чисел в Турбо Паскале используются операторы random:real - генерирует случайные числа в диапазоне 0...0.99.

random(i:word):word - генерирует случайные числа в диапазоне 0...1.

randomize - изменение базы генератора случайных чисел.

Переменные:

А- массив, тип integer;

I- параметр цикла, тип integer;

kn – размер массива, тип integer;

Рассмотрим пример с использованием базы генератора случайных чисел:

Вывести 15 значений элементов массива с помощью генератора случайных чисел в диапазоне 0...50 и вывести в строку.

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

Блок-схема алгоритма будет достаточно простая:

Двумерные массивы

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

При написании программы существует несколько отличий, чем в написании кода в одномерных массивов.

Var i, j, kn, km : integer;

a:array [1..10,1..10] of real;

begin

writeln (‘введите значения kn, km’);

readln (kn, km);

for i:=1 to kn do

for j:=1 to km do begin

writeln (‘введите значения a[‘i,j,’]=’);

readln (a[i,j]);

end;

….

Так как, двумерный массив это матрица, то кроме переменных i, kn – строки матрицы, необходимо прописать столбцы матрицы j, km. Описание массива в коде массива будет таким же, как в примере, на рисунке №. Далее вводим количество строк и столбцов, используя циклический алгоритм. Такой же алгоритм необходимо прописать и для ввода элементов массива.

Далее написание кода производится в зависимости от поставленной задачи, это может быть нахождения максимального и минимального значений, вычисление среднего арифметического значения в строке или столбце матрицы.

Процедуры и функции

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

Подпрограмма - это отдельная функционально независимая часть программы. Любая подпрограмма обладает той же структурой, которой обладает и вся программа.

Подпрограммы решают три важные задачи:

  • избавляют от необходимости многократно повторять в тексте программы аналогичные фрагменты;

  • улучшают структуру программы, облегчая ее понимание;

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

Вызов подпрограммы происходит при каждом употреблении ее имени в основной (или вызывающей) программе. При вызове подпрограммы выполнение основной программы приостанавливается, и управление передается в подпрограмму, где выполняются команды, заданные в ней. Подпрограмма завершается, если выполнены все ее процедуры до завершающего слова End или по специальной команде выхода из подпрограммы Exit. По окончании работы подпрограммы управление возвращается основной программе, иначе говоря, к первой команде, следующей за обращением к этой подпрограмме.

В языке Pascal определяются два типа подпрограмм – процедуры (Procedure) и функции (Function).

Любая программа может содержать несколько процедур и функций.

Структура любой подпрограммы аналогична структуре всей программы.

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

Процедуры и функции объявляются в разделе описания вслед за разделом переменных.

Тогда общая структура программы выглядит так:

Рrogram hh;   Label; {описание меток}   Const; {описание констант}   Type; {описание типов}   Var; {описание переменных}   Procedure; {описание процедур}   Function; {описание функций} Begin   . . .   . . . end.

Выполнение программы начинается с операторов основной программы. При необходимости вызывается подпрограмма и начинают действовать её операторы. Затем управление передаётся в основную программу, которая продолжает выполняться.

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

Подпрограмма вызывается по своему имени с указанием необходимых параметров.