Школьные учебники / Презентации по предметам » Презентации » Другие презентации » Презентация по основам алгоритмизации на тему "Функции"

Презентация на тему: "Презентация по основам алгоритмизации на тему "Функции""

Презентация по основам алгоритмизации на тему "Функции" - Скачать презентации бесплатно ☑ Презентации по предметам на school-textbook.com
Смотреть онлайн
Поделиться с друзьями:
Cкачать презентацию: Презентация по основам алгоритмизации на тему "Функции"

Презентация "Презентация по основам алгоритмизации на тему "Функции"" онлайн бесплатно или скачать на сайте электронных школьных учебников/презентаций school-textbook.com

Ленинск-Кузнецкий, 2023<br>ГПОУ «Ленинск-Кузнецкий политехнический техникум»<br>Преподаватель Щеглов
1 слайд

Ленинск-Кузнецкий, 2023
ГПОУ «Ленинск-Кузнецкий политехнический техникум»
Преподаватель Щеглова Алена Александровна
Теоретическое занятие
для студентов II курса
Основы алгоритмизации
и программирования
Функции и процедуры

С# — объектно-ориентированный язык, поэтому написанная на нем программа представляет собой совокупно
2 слайд

С# — объектно-ориентированный язык, поэтому написанная на нем программа представляет собой совокупность взаимодействующих между собой классов.
Основные понятия

using System;<br> <br><br>namespace HelloApp<br>{<br><br><br><br>       class Program<br>    {<br>  
3 слайд

using System;
 

namespace HelloApp
{



       class Program
    {
        static void Main(string[] args)
        {
             
        }
    }
}
Ключевое слово namespace создает для проекта собственное пространство имен, названное по умолчанию ConsoleApplication1.
Директива using System разрешает использовать имена стандартных классов из пространства имен System
Функция Мain является главной функцией приложения и точкой входа программы – точнее она является методом класса Program
Общая структура программы

Функция в С# может быть объявлена только в рамках класса<br>using System;<br> namespace HelloApp<br>
4 слайд

Функция в С# может быть объявлена только в рамках класса
using System;
 namespace HelloApp
{
       class Program
    {
        static void Main(string[] args)
        {
             
        }
    }
}
Общая структура программы

Функция  - подпрограмма. <br>Программа - это решение прикладной задачи<br>Функция – это решение в ра
5 слайд

Функция - подпрограмма.
Программа - это решение прикладной задачи
Функция – это решение в рамках программы.
Функция позволяет уменьшить размер программы за счет того, что не нужно повторно писать какой-то фрагмент кода, достаточно вызвать объявленную функцию.
Функции, которые не возвращают значение, называют процедурами
Функции в С# называют методами.
Функции и процедуры

Первая строка в объявлении функции называется заголовком<br>[модификатор доступа] [тип возвращаемого
6 слайд

Первая строка в объявлении функции называется заголовком
[модификатор доступа] [тип возвращаемого значения] [имя функции] ([аргументы])
{
// тело функции
}


public int max(int f, int s)
{    
if ( f > s )        
return f;    
else        
return s;
}
Структура

Модификатор доступа (области видимости) может быть<br>private —ограниченный доступ к методу только и
7 слайд

Модификатор доступа (области видимости) может быть
private —ограниченный доступ к методу только из содержащего его класса или структуры
public — доступ из любого фрагмента кода в рамках приложения



Структура

private double A() <br>{  } <br><br>public int B() <br>{  } <br><br>public string Stepen(int a, int
8 слайд

private double A()
{ }

public int B()
{ }

public string Stepen(int a, int b)
{ }
Назовите открытые и закрытые методы
Задание

Тип возвращаемого значения используется для указания типа возвращаемого значения<br>Если функция, во
9 слайд

Тип возвращаемого значения используется для указания типа возвращаемого значения
Если функция, возвращает целое число, то нужно указать тип int
Если функция не возвращает никакого значения, то для этого используется ключевое слово void (ghjwtlehf)
[тип возвращаемого значения]
public int max(int f, int s)
{    
}
public void max(int f, int s)
{    
}
Структура

Имя функции должно отражать суть метода.<br>[имя функции]<br>Структура<br>
10 слайд

Имя функции должно отражать суть метода.
[имя функции]
Структура

Аргументы – это данные, которые необходимы для выполнения функции. <br>Аргументы записываются в форм
11 слайд

Аргументы – это данные, которые необходимы для выполнения функции.
Аргументы записываются в формате
[тип] [идентификатор]
Если аргументов несколько, они отделяются запятой. Аргументы могут отсутствовать.
([аргументы])

public int max(int f, int s)
{    
}
public void max(int f)
{    
}
public void max()
{    
}
Структура

private void A() <br>{} <br>public int B() <br>{} <br>public double Stepen(int a, int b) <br>{ <br>d
12 слайд

private void A()
{}
public int B()
{}
public double Stepen(int a, int b)
{
double r;
r = (double)Math.Pow(a, b);
return (r);
}
Метод A, В и С являются закрытыми или открытыми процедурами или функцией?
Назовите параметры
Назовите имена методов
Назовите типы возвращаемых значений

Тело функции Stepen
Задание

<br><br><br>Назовите:<br>модификатор доступа,<br>тип возвращаемого значения,<br>идентификатор (имя),
13 слайд




Назовите:
модификатор доступа,
тип возвращаемого значения,
идентификатор (имя),
параметр (аргумент).

Задание

Функция Main является главной функцией приложения и точкой входа программы<br>static void Main(strin
14 слайд

Функция Main является главной функцией приложения и точкой входа программы
static void Main(string[] args)
{ }
Функция Main
static - cтатическое поле, свойства относятся ко всему классу/ всей структуре, для обращения к подобным членам необяза-тельно создавать экземпляр класса / структуры
class Foo {
public int S1(int a, int b)
{ return a + b; }
public static int S2(int a, int b)
{ return a + b; }
}
Вызов
int res = new Foo().S1(1,2);

int res = Foo.S2(10, 20);

static void Main(string[] args)<br>{  <br>private void A() {} <br>public int B() {} <br>public doubl
15 слайд

static void Main(string[] args)
{
private void A() {}
public int B() {}
public double Stepen(int a, int b)
{
double r;
r = (double)Math.Pow(a, b);
return (r); }
}
ошибка
static void Main(string[] args)
{ }
private void A() {}
public int B() {}
private void A() {
public int B() {}}
ошибка
Найти ошибки, объяснить их, исправить
Проверка
Функция Main

Назовите имя метода<br>Это процедура или функция?<br>Что выполняет тело метода?<br>Какие параметры с
16 слайд

Назовите имя метода
Это процедура или функция?
Что выполняет тело метода?
Какие параметры содержит метод?

public void SayHello()
{
    Console.WriteLine("Hello");
}
Задание

В функции в качестве типа возвращаемого значения вместо void используется любой другой тип. В данном
17 слайд

В функции в качестве типа возвращаемого значения вместо void используется любой другой тип. В данном случае тип int.
В функциях обязательно должен использоваться оператор return, после которого ставится возвращаемое значение.
Оператор return возвращает значение и производит выход из метода.
Возвращаемое значение должно иметь тот же тип, что значится в определении функции, т.к. функция возвращает значение типа int, после оператора return стоит число 1 - которое неявно является объектом типа int.
int Factorial()
{    return 1;}
Различия функции от процедуры

Назовите:<br>Возвращаемый тип<br>Функция это или процедура?<br>Какое значение возвращает оператор re
18 слайд

Назовите:
Возвращаемый тип
Функция это или процедура?
Какое значение возвращает оператор return?
 string Hello()
{    return "Hell to World"; }
Различия функции от процедуры

После оператора return можно указывать выражения, которые возвращают результат вычисления. <br><br>s
19 слайд

После оператора return можно указывать выражения, которые возвращают результат вычисления.

static int GetSum()
{    int x = 2;
    int y = 3;
    return x + y; }
Между возвращаемым типом метода и возвращаемым значением после оператора return должно быть соответствие/ Найти ошибку

static string GetHello()
{    Console.WriteLine("Hello");}
static int GetSum()
{    int x = 2;
     int y = 3;
     return "5";
return

2)<br>static string GetHello()<br>{<br>    return "Hello";<br>    Console.WriteLine("
20 слайд

2)
static string GetHello()
{
    return "Hello";
    Console.WriteLine("After return");//эта строка никогда не выполнится, почему?
}
Оператор return используется и в процедурах, для того чтобы произвести выход из метода в зависимости от условий
1)
static void SayHello()
{    int hour = 23;
    if(hour > 22)
    {        return;    }
    else
    { Console.WriteLine("Hello");    }}
return

Ленинск-Кузнецкий, 2023<br>ГПОУ «Ленинск-Кузнецкий политехнический техникум»<br>Преподаватель Щеглов
21 слайд

Ленинск-Кузнецкий, 2023
ГПОУ «Ленинск-Кузнецкий политехнический техникум»
Преподаватель Щеглова Алена Александровна
Теоретическое занятие
для студентов II курса
Основы алгоритмизации
и программирования
Вызов функций и процедур

Для функции<br>Тип Имя_переменной1= <br>= new Имя_класса().Имя_метода(Имя_переменной2);<br><br>или <
22 слайд

Для функции
Тип Имя_переменной1=
= new Имя_класса().Имя_метода(Имя_переменной2);

или
new Имя_класса().Имя_метода(Имя_переменной2);

Имя_переменной1 – это имя переменной, которая вызывает метод для получения значения из него, при заданном параметре (Имя_переменной2)
Имя_переменной2 – значение переменной передается в метод.
При передаче аргументов параметрам по значению параметр метода получает не саму переменную, а ее копию и работает с этой копией
Передача значений по параметрам

 public int T1(int n)<br>{  n++;<br>Console.WriteLine($"Число в методе Т: {n}");<br>return
23 слайд

public int T1(int n)
{ n++;
Console.WriteLine($"Число в методе Т: {n}");
return n; }
static void Main(string[] args)
{ int number = 5;
Console.WriteLine($"Число в методе Т: {number}");
int res = new Program().T1(number);
Console.WriteLine($"Число в методе Т: {number}");
}
При вызове метод T1 получает копию переменной number и увеличивает значение этой копии.
Передача значений по параметрам

 Метод<br>[модификатор доступа] [тип возвращаемого значения] [имя функции] (ref  тип параметр1, ref
24 слайд

Метод
[модификатор доступа] [тип возвращаемого значения] [имя функции] (ref тип параметр1, ref тип параметр2, … )
Вызов
Тип Имя_переменной1=
= new Имя_класса().Имя_метода(ref Имя_переменной2, ref Имя_переменной3, …);
Имя_переменной1 – это имя переменной, которая вызывает метод для получения значения из него, при заданном параметре (Имя_переменной2, Имя_переменной3, …)
Имя_переменной2 – значение переменной передается в метод.

Передача значений по параметрам
При передаче значений параметрам по ссылке метод получает адрес переменной в памяти. Если в методе изменяется значение параметра, передаваемого по ссылке, то изменяется и значение переменной, которая передается на его место

public int T1(ref int n, ref int a)<br>{<br>n++;<br>Console.WriteLine($"Число в методе Т: {n}&q
25 слайд

public int T1(ref int n, ref int a)
{
n++;
Console.WriteLine($"Число в методе Т: {n}");
return n;
}
static void Main(string[] args)
{
int number = 5;
Console.WriteLine($"Число в методе Т: {number}");
int res = new Program().T1(ref number, ref number);
Console.WriteLine($"Число в методе Т: {number}");
}
Передача значений по параметрам

 Вместо оператора return  для возвращения значений используется out<br>Метод<br>[модификатор доступа
26 слайд

Вместо оператора return для возвращения значений используется out
Метод
[модификатор доступа] [тип возвращаемого значения] [имя функции] (тип параметр1, out тип параметр2)
Вызов
new Имя_класса().Имя_метода(Имя_переменной2, out Имя_переменной3);
Выходные параметры

Выходные параметры<br>public void T1(int x, int y, out int result)<br>{<br>result = x+y;<br>}<br>
27 слайд

Выходные параметры
public void T1(int x, int y, out int result)
{
result = x+y;
}

static void Main(string[] args)
{
int number1;
new Program().T1( 1, 5, out number1);
Console.WriteLine(number1); }
// результат 6

out позволяет вернуть из метода не одно значение, а несколько<br> public void T1(int x, int y, out i
28 слайд

out позволяет вернуть из метода не одно значение, а несколько
public void T1(int x, int y, out int result, out int proizv)
{
result = x + y;
proizv = x * y;
}
static void Main(string[] args)
{

int sum;
int pr;
new Program().T1(1, 5, out sum, out pr);
Console.WriteLine(sum+ " "+ pr);
}
// 6 5
Выходные параметры

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

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

public void T1(int x, int y, out int result)
{
result = x + y;
}
static void Main(string[] args)
{
new Program().T1(1, 5, out var sum);
Console.WriteLine(sum);
}
Выходные параметры

Модификатор in указывает, что данный параметр будет передаваться в метод по ссылке, внутри метода ег
30 слайд

Модификатор in указывает, что данный параметр будет передаваться в метод по ссылке, внутри метода его значение параметра нельзя будет изменить. 
Входные параметры
public void T1(in int x,in int y, out int result)
{
result = x + y;
}
static void Main(string[] args)
{
new Program().T1(1, 5, out var sum);
Console.WriteLine(sum);
}

<br><br>void Sum(int x, int y)<br>{<br>    int result = x + y;<br>    Console.WriteLine($"{x} +
31 слайд



void Sum(int x, int y)
{
    int result = x + y;
    Console.WriteLine($"{x} + {y} = {result}");
}
Sum(10, 15); 
void Sum(int x, int y)
{ Console.WriteLine($"{x} + {y} = { x + y }");}
 int a = 10, b = 15, c = 6;
Sum(a, b);             
Sum(3, c);                 
Sum(14, 4 + c);   
void Sum(int x, int y)
{ Console.WriteLine($"{x} + {y} = { x + y }");}
int a,
int b = 15;
Sum(a, b);  // ! Ошибка
Задание

При вызове методов значения для параметров можно передавать не по порядку<br>void PrintPerson(string
32 слайд

При вызове методов значения для параметров можно передавать не по порядку
void PrintPerson(string name, int age = 1)
{ Console.WriteLine($"Name: {name}  Age: {age}"); }
Вызов
PrintPerson("Tom", age: 37); 
PrintPerson(age:41, name: "Bob");         
PrintPerson(name:"Sam");}
Именованные параметры

Отзывы по презентациям на сайте school-textbook.com "Презентация по основам алгоритмизации на тему "Функции"" (0)
Оставить отзыв
Прокомментировать

Путеводитель по миру знаний. Тем, кто хочет учиться.

Свяжитесь с нами