Similar presentations:
Тема 6.1 Методы
1.
Тема 6. Методы2.
Подпрограмма– поименованная часть компьютерной программы, содержащая
описание определенного набора действий.
Процедура
- выполняет действие, но не возвращает значение,
функция
- возвращает значение.
!В C# процедуры и функции объединены в методы.
Метод
- представляет собой законченный фрагмент кода, к которому можно обратиться по имени.
Он описывается один раз, а вызываться может столько раз, сколько необходимо
3.
Общий синтаксис методадоступ возвращаемый_тип имя_метода (список_параметров)
{
// Тело метода
}
последовательность пар, состоящих из типа и
идентификатора и разделенных запятыми.
необязательный
модификатор
доступа
определяет, значение какого
типа вычисляется с
помощью метода
4.
Примечание. Метод, не возвращающий значение,вызывается отдельным оператором, а метод,
возвращающий значение, – в составе выражения в правой
части оператора присваивания
1. При вызове подпрограммы
сохраняется адрес
оператора, следующего за ее
вызовом, и управление
передается операторам
подпрограммы.
2. Значения формальных
параметров, заполняются
значениями аргументов.
3. После завершения
выполнения подпрограммы
управление переходит к
оператору, адрес которого
был сохранен перед
вызовом.
5.
Константы и переменныеГлобальные
Заданы вне методов, в
классе и доступны во всех
методах класса
Локальные
Заданы внутри
методов и теряются
при выходе из него.
6.
Параметры методовАлгоритм вызова метода:
1.
2.
3.
4.
5.
Вычисляются выражения, стоящие на месте аргументов.
Выделяется память под параметры метода в соответствии с их типом.
Каждому из параметров сопоставляется соответствующий аргумент
Выполняется тело метода.
Если метод возвращает значение, оно передается в точку вызова; если нет,
управление передается на оператор, следующий после вызова.
7.
Требования к параметрам:аргументы при вызове метода должны записываться в том же
порядке, что и параметры в заголовке метода.
Количество аргументов должно соответствовать количеству
параметров.
На имена никаких ограничений не накладывается
8.
Пример 1. Написать метод, который вычисляет площадь поверхности параллелепипедаS = (l*w+l*h+w*h)*2
static double GetAreaParallelepiped(double len, double wid, double heig)
{
return (len * wid + len * heg + wid * heig) * 2;
}
static void Main(string[] args)
{
double L, w, h; // длина, ширина и высота параллелепипеда
double s; // площадь поверхности параллелепипеда
Console.WriteLine(" Вычисление площади поверхности параллелепипеда\n
");
Console.WriteLine(" Введите исходные данные:");
Console.Write(" Длина (см) -> ");
L = Convert.ToDouble(Console.ReadLine());
Console.Write(" Ширина (см) -> ");
w = Convert.ToDouble(Console.ReadLine());
Console.Write(" Высота (см) -> ");
h = Convert.ToDouble(Console.ReadLine());
s = GetAreaParallelepiped (L, w, h);
programming