- •Как написать простейшую программу
- •1. Описание переменной файлового типа
- •2. Связь переменной файлового типа с конкретным внешним файлом.
- •3. Чтение из файла
- •4. Закрытие файла
- •5. Признак конца файла
- •6. Запись в файл
- •Логическая функция Eoln()
- •Описание данных логического типа
- •Логические операции
- •Стандартные логические функции
- •Решение задач
- •Окно редактора кода
- •Окно вывода
- •Окно ввода
- •Запуск и остановка программы
- •Оператор цикла с предусловием while
- •Оператор цикла с постусловием repeat
- •Решение
- •Параметры процедур и функций
- •Передача параметров
- •Глобальные и локальные переменные
- •Вызов процедуры
- •Вызов функции
- •Операции для данных символьного типа
- •Функции для данных символьного типа
- •Перечисляемый тип
- •Набор операций
- •Стандартные функции
- •Интервальный тип (диапазон)
- •Описание массива
- •Особенность языка Паскаль
- •Заполнение одномерного массива значениями
- •Вывод значений элементов массива на экран
- •Изменение значений некоторых элементов
- •Заполнение массива по заданному правилу
- •Работа с несколькими массивами
- •Вставка одного элемента
- •Вставка нескольких элементов
- •Сортировка массива методом простого выбора
- •Сортировка массива методом простого обмена (методом пузырька)
Вызов функции
Вызовом функции является записанное в вызывающей программе имя функции со списком фактических параметров в круглых скобках. В отличие от вызова процедуры вызов функции возвращает одно значение (скалярную величину), следовательно, вызывающая программа должна с ним что-нибудь сделать (сохранить в переменной, вывести на экран и т.д.).
Вызов функции с присвоением возвращаемого значения некоторой переменной имеет следующий вид:
<имя переменной> := <имя функции> [(<список фактических параметров>)]; |
Фактические параметры - это значения, передаваемые в функцию при её вызове.
Пример 1. Оформить в виде функции алгоритм вычисления степени y = xn с натуральным показателем n.
function degree(x,y:integer): longint; var i:integer; begin st :=1; For i:=1 to y do st:= st * x; degree:= st; end; |
Функция имеет два параметра: первый параметр - основание степени, второй - показатель степени.
Вся программа для нашей задачи имеет следующий вид:
program primer1; var a, n: integer; s:longint; function degree(x,y:integer): longint; var i:integer; begin st :=1; For i:=1 to y do st:= st * x; degree:= st;end; begin {main} writeln('Введите два числа'); readln(a, n); s := degree(a,n); {Вызов функции} writeln('Результат: ', s); {Вывод результата} end. |
Функция вызывается по имени в левой части оператора присваивания, вычиcленное значение присваивается переменной s. В нашем примере, фактические параметры а, n передают свои значения соответствующим формальным параметрам x, y.
Вы научились определять и вызывать пользовательские функции.
Урок16 из серии: "Язык программирования Паскаль"
На этом уроке мы продолжим знакомиться со стандартными типами данных языка программирования Паскаль.
Из урока 6 мы уже знаем, что все типы данных языка Паскаль можно разделить на простые типы и структурированные (составные). Величины, которые относятся к простым типам данных, не содержат составных частей.
Из простых типов данных мы уже изучили целые типы и логический тип. Это еще не весь список. Давайте продолжим изучение.
На этом уроке мы определим понятие порядкового типа и остановимся на символьном типе данных, рассмотрим несколько примеров обработки данных символьного типа.
К простым типам данных кроме целых типов и логического типа относятся:
символьный;
ограниченный;
перечисляемый;
вещественные типы.
Все простые типы данных, кроме вещественных, называются порядковыми.
В математике порядковым числом называется номер элемента при перечислении. Под порядковым типом понимают тип данных, областью значений которых является упорядоченное счетное множество. Каждому элементу такого множества соответствует некоторое порядковое число, являющееся как раз его номером при перечислении.
В любом порядковом типе для каждого значения, кроме первого, существует предшествующее значение.
В языке Паскаль существуют стандартные функции, которые позволяют их определять:
Имя и параметры функции |
Действие |
Ord(x) |
Возвращает порядковый номер значения перечисляемого типа. Для целых x возвращает само значение n, для символов char возвращает их код, а для элементов перечислимого типа - их номер (нумерация начинается с нуля). |
Pred(x) |
Возвращает предыдущее значение перечисляемого типа |
Succ(x) |
Возвращает следующее значение перечисляемого типа |
Понятие порядкового типа уже встречалось при изучении цикла с параметром for ... next и оператора выбора case.
Только значения этих типов могут фигурировать в качестве выражения-переключателя в операторе case. Переменная-параметр цикла for также должна иметь перечислимый тип.
Мы уже изучили целые типы и логический тип. Сегодня остановимся на символьном типе данных.
Символьный тип данных
Идентификатор типа |
Допустимые значения |
Размер выделяемой памяти |
Char |
Множество символов кодовой таблицы ASCII. Каждому символу приписывается целое число в диапазоне от 0 до 255. |
1 байт |
Пример описания величины символьного типа:
var letter, symbol, ch: char; |
В программе значения для переменных типа Char должны быть заключены в апострофы: ch := '*'; a := '3'; letter := 'G'.
Кроме того, имеется возможность задавать значения указанием непосредственного числового значения ASCII-кода:
kd:= #65 {символ 'A'}; s:= #10 {клавиша <Enter>}.
