- •1 Вопрос
- •2 Вопрос Основные структуры данных
- •Линейные структуры (списки данных, векторы данных)
- •Табличные структуры (таблицы данных, матрицы данных)
- •Иерархические структуры данных
- •Упорядочение структур данных
- •Файлы и файловая структура
- •3 Вопрос
- •Классическая архитектура
- •4 Вопрос характеристика программного обеспечения пк. Прикладные пакеты и программы. Инструментальные системы операционные системы
- •Функции [править]
- •Понятие [править]
- •Ядро [править]
- •Эволюция и основные идеи [править]
- •Пакетный режим [править]
- •Разделение времени и многозадачность [править]
- •Разделение полномочий [править]
- •Реальный масштаб времени [править]
- •Файловые системы и структуры [править]
- •5 Вопрос
- •6 Вопрос . Алфавит, Типы данных, Переменные и Константы
- •Синтаксис и семантика
- •Алфавит языка
- •Элементарные конструкции
- •Простые типы данных
- •Понятие типа данных в Турбо Паскаль
- •Переменные и константы
- •7 Вопрос Структура программы на языке Паскаль
- •Заголовок программы
- •Раздел меток (label)
- •Раздел констант (const)
- •Раздел типов (type)
- •Раздел переменных (var)
- •Раздел процедур и функций
- •Раздел действий (операторов)
- •8 Вопрос алгоритмический язык паскаль. Арифметические выражения. Функции. Оператор присвоения Возникновение и назначение Паскаля
- •Структура программы на Паскале
- •Операторы ввода, вывода, присваивания
- •Правила записи арифметических выражений
- •Пунктуация Паскаля
- •9 Вопрос Операторы ввода и вывода
- •Ввод данных
- •Вывод данных
- •10 Вопрос Составной оператор Условные операторы Pascal-Паскаль
- •Условные операторы Pascal-Паскаль
- •Оператор выбора Паскаля
- •11 Вопрос операторы цикла. Цикл с предусловием. Цикл с постусловием. Цикл с параметром. Циклический алгоритм
- •Цикл с предусловием / пока
- •Цикл с постусловием - до
- •Цикл с параметром
- •Цикл - пока цикл с параметром
- •Операторы цикла
- •12 Вопрос алгоритм табулирование функции
- •11.1. Алгоритм табулирования
- •13 Вопрос алгоритм вычисления конечный суммы рекуррентная формула
- •Некоторые рекуррентные формулы
- •14 Вопрос массивы. Синтаксис и применение Массивы
- •Синтаксис Определение при помощи array()
- •15 Вопрос Одномерные массивы. Описание, ввод, вывод и обработка массивов на Паскале
- •16 Вопрос алгоритм вычисления суммы элементов одномерного массива
- •17 Вопрос алгоритм вычисления максимального элемента одномерного массива
- •18 Вопрос алгоритм упорядочивания элементов одномерного массива
- •19 Вопрос алгоритм вычисления суммы элементов двумерного массива
- •20 Вопрос алгоритм нахождение максимального элемента двумерного массива
- •21 Вопрос работа с файлами ввод вывод данных паскаль Ввод-вывод данных
- •Вывод данных на экран. Форматированный вывод
- •22 Вопрос функции. Параметры. Локальные глобальные описание
- •23. Процедуры и функции . Параметры-значения и параметры-переменные
- •24 Вопрос модули.Структура модулей Структура модуля
- •25 Вопрос численное решение уравнений. Метод половинного деления
- •26 Вопрос численное решение нелинейных скалярных уравнений. Метод хорд.
- •27 Вопрос численное решение алгебраических уравнений. Метод ньютона
- •28 Вопрос численное решение систем линейных алгебраических уравнений метод простой итерации
- •29 Вопрос численное решение системы линейных алгебраических уравнений метод Зейделя Метод Зейделя для решения слау
- •30 Вопрос численное решение системы линейных алгебраических уравнений с ленточной матрицей. Метод прогонки Метод прогонки
- •31 Вопрос численное решение системы нелинейных алгебраических уравнений метод простой итерации Системы нелинейных уравнений
- •32 Вопрос численное решение системы нелинейных алгебраических уравнений метод ньютона
- •33 Вопрос
- •Численные методы поиска экстремумов функций одной переменной
- •34 Вопрос интерполяция функции многочлен лагранжа Интерполяционный многочлен Лагранжа
- •35 Вопрос аппроксимация эмпирических данных. Метод наименьших квадратов Метод наименьших квадратов (мнк).
- •Суть метода наименьших квадратов (мнк).
- •Вывод формул для нахождения коэффициентов.
- •Оценка погрешности метода наименьших квадратов.
- •Графическая иллюстрация метода наименьших квадратов (мнк).
- •36 Вопрос
- •37 Вопрос интерполяционный кубический сплайн определение Формулировка. Задачи Кубический интерполяционный сплайн
- •38 Вопрос численное интегрирование метод прямоугольников метод Рунге оценки точности численого определения интеграла Метод прямоугольников.
- •Суть метода прямоугольников.
- •Применение правила Рунге Оценка точности вычисления определённого интеграла
- •39 Вопрос численное интегрирование метод трапеций метод Рунге оценки точности численого определения интеграла
- •Применение правила Рунге Оценка точности вычисления определённого интеграла
- •40 Вопрос численное интегрирование метод Симпсона оценки точности численого определения интеграла
- •41 Вопрос
23. Процедуры и функции . Параметры-значения и параметры-переменные
Существует два способа описывать параметры: как параметры-значения и как параметры-переменные. В предыдущем разделеиспользовались параметры-значения. Параметр-значение является просто локальной переменной, начальное значение которой задается при вызове процедуры.
Пример:
var a, b: integer; {Глобальные переменные}
procedure P3(a, b: integer); {Внутри процедуры символами a и b обозначаются формальные параметры. Действия с ними никак не повлияют на значения глобальных переменных a и b} begin a:=a+1; b:=b+1; writeln(a+b); end;
begin a:=1; b:=1; P3(a, b);{Вызов процедуры, где в качестве фактических параметров использованы значения глобальных переменных a и b} writeln(a, b); end. |
Если в заголовке процедуры перед какими-либо из параметров поставить слово var, то это будут параметры-переменные. Например:
procedure P3(var a, b: integer; c: real); |
Здесь a и b – параметры-переменные, c – параметр-значение. При вызове процедуры фактический параметр, задающий значения этих формальных параметров не может быть выражением или константой, а должен быть обязательно переменной. То есть, недопустимы следующие вызовы:
P3(x+y, y+1, z+2); P3(x, 2, z);
где x, y, z – глобальные переменные. Такие инструкции вызовут синтаксическую ошибку. В то же время синтаксически правильными будут вызовы:
P3(x, y, z+1); P3(x, y, 2);
При использовании параметров-значений во время вызова процедуры происходит присваивание значения формальному параметру, то есть значение записывается в выделенные под хранение параметра ячейки памяти. При использовании параметров-переменных память под них не выделяется. Вместо этого на время работы процедуры они становятся синонимами тех переменных, которые указываются в качестве фактических параметров. Так при вызове P3(x, y, 2) формальные параметры a и b будут работать с теми же ячейками памяти, что и переменные x, y. Соответственно, если формальному параметру в процедуре присваивается новое значение, то и значение фактического параметра изменится. Воспроизведем пример, заменив тип параметров (добавим var перед их описанием):
var a, b: integer; {Глобальные переменные}
procedure P3(var a, b: integer); {Внутри процедуры символами a и b обозначаются формальные параметры. Теперь это параметры-переменные и действия с ними никак повлияют на значения глобальных переменных a и b} begin a:=a+1; b:=b+1; writeln(a+b); end;
begin a:=1; b:=1; P3(a, b);{Вызов процедуры, где в качестве фактических параметров использованы глобальные переменные a и b. После вызова глобальные переменные увеличатся на 1} writeln(a, b); end. |
Если без слова var программа выводила числа 4, 1, 1, то после его добавления получится 4, 2, 2.
