From c3993ecb0a368a8d96e0b4b81f81575df675ac6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=80=20?= =?UTF-8?q?=D0=9B=D1=83=D0=BA=D1=8C=D1=8F=D0=BD=D0=BE=D0=B2?= <104965998+Alex-luov@users.noreply.github.com> Date: Tue, 20 Jun 2023 12:41:54 +0700 Subject: [PATCH] edited --- .../20-function-return/description.ru.yml | 38 +++++++++++-------- 1 file changed, 22 insertions(+), 16 deletions(-) diff --git a/modules/50-functions/20-function-return/description.ru.yml b/modules/50-functions/20-function-return/description.ru.yml index 095222c..3b74faa 100644 --- a/modules/50-functions/20-function-return/description.ru.yml +++ b/modules/50-functions/20-function-return/description.ru.yml @@ -17,15 +17,16 @@ theory: | Пользы от таких функций не очень много, так как результатом их работы невозможно воспользоваться внутри программы. - В этом уроки мы рассмотрим как сделать наши функции полезными. + В этом уроки мы рассмотрим, как сделать наши функции полезными. ## Возвращаемые значения - Когда мы пишем пользовательскую функцию, мы можете определить, будет ли ваша функция возвращать значение вызывающей стороне или нет. Чтобы вернуть значение вызывающей стороне, необходимы две вещи. - - Во-первых, наша функция должна указать, значение какого типа будет возвращено. Это делается путем установки типа возвращаемого значения функции, который является типом, определенным перед именем функции. + Когда мы пишем пользовательскую функцию, мы можем определить, будет ли она возвращать значение вызывающей стороне или нет. + + Чтобы вернуть значение вызывающей стороне, необходимы две вещи: - Во-вторых, внутри функции, которая будет возвращать значение, мы используем инструкцию `return`, чтобы указать конкретное значение, возвращаемое вызывающей стороне. Конкретное значение, возвращаемое функцией, называется возвращаемым значением. Когда инструкция `return` выполняется, возвращаемое значение копируется из функции обратно в вызывающую функцию. Этот процесс называется возвратом по значению. + * Функция должна указать, значение какого типа будет возвращено. Это делается путем установки типа возвращаемого значения функции, который является типом, определенным перед именем функции + * Внутри функции, которая будет возвращать значение, используем инструкцию `return`. Это нужно, чтобы указать конкретное значение, возвращаемое вызывающей стороне. Конкретное значение, возвращаемое функцией, называется возвращаемым значением. Когда инструкция `return` выполняется, возвращаемое значение копируется из функции обратно в вызывающую функцию. Этот процесс называется возвратом по значению Общий вид функции: @@ -35,12 +36,12 @@ theory: | } ``` - Давайте рассмотрим простую функцию, которая возвращает строку, и пример программы, которая ее вызывает: + Рассмотрим простую функцию, которая возвращает строку. Также пример программы, которая ее вызывает: ```cpp #include #include - // функция фозвращает строку, поэтому тип возвращаемого значения std::string + // функция возвращает строку, поэтому тип возвращаемого значения std::string std::string GetDomain() { return "Hexlet"; } @@ -52,7 +53,7 @@ theory: | } ``` - Выполнение начинается с верхней части `main`. В первой же инструкции происходит вызов функции `GetDomain()`, в результате она возвращает конкретное значение **Hexlet** обратно вызывающей стороне, которое затем выводится в консоль через std::cout. + Выполнение начинается с верхней части `main`. В первой же инструкции происходит вызов функции `GetDomain()`. В результате она возвращает конкретное значение **Hexlet** обратно вызывающей стороне, которое затем выводится в консоль через std::cout. Любой код после `return` не выполняется: @@ -63,7 +64,7 @@ theory: | } ``` - Возвращать можно не только конкретное значение. Так как `return` работает с выражениями, то справа от него может появиться почти все что угодно. Здесь нужно руководствоваться принципами читаемости кода: + Возвращать можно не только конкретное значение. Так как `return` работает с выражениями, справа от него может появиться почти все что угодно. Здесь нужно руководствоваться принципами читаемости кода: ```cpp #include @@ -75,18 +76,21 @@ theory: | ``` - Здесь мы не возвращаем переменную, возвращается всегда значение, которое находится в этой переменной. Ниже пример с вычислениями: + Здесь мы не возвращаем переменную. Возвращается всегда значение, которое находится в этой переменной. Ниже пример с вычислениями: - ```cpp int sum() { return 5 + 5; } ``` + + ## Отсутствие возвращаемого значения - Функции не обязаны возвращать значение. Чтобы сообщить компилятору, что функция не возвращает значение, используется тип возвращаемого значения `void`. Давайте посмотрим на функцию `Greating()`: + Функции не обязаны возвращать значение. Чтобы сообщить компилятору, что функция не возвращает значение, используется тип возвращаемого значения `void`. + + Посмотрим на функцию `Greating()`: ```cpp #include @@ -96,15 +100,17 @@ theory: | } ``` - Эта функция имеет тип возвращаемого значения void, что указывает на то, что она не возвращает значение вызывающей стороне. + Эта функция имеет тип возвращаемого значения `void`. Это указывает на то, что она не возвращает значение вызывающей стороне. ## Возвращаясь к main - Теперь у вас есть концептуальные инструменты, чтобы понять, как на самом деле работает функция `main`. + + + Теперь у нас есть концептуальные инструменты, чтобы понять, как работает функция `main`. - Когда программа выполняется, операционная система вызывает функцию `main`. Инструкции в main выполняются последовательно. + Когда программа выполняется, операционная система вызывает функцию `main`. Инструкции в `main` выполняются последовательно. - Наконец, main возвращает целочисленное значение (обычно 0), и ваша программа завершается. Значение, возвращаемое из `main`, называют кодом возврата и по нему судят об спешности выполнения программы. + Также `main` возвращает целочисленное значение — обычно 0, и программа завершается. Значение, возвращаемое из `main`, называют кодом возврата. По нему судят об успешности выполнения программы. instructions: | Реализуйте функцию `SayHurrayThreeTimes()`, которая возвращает строку "hurray! hurray! hurray!".