Menu
Coddy logo textTech

Параметры функций

Часть раздела Основы путешествия по Solidity на Coddy. Урок 21 из 53.

Функция объединяет повторно используемую операцию под одним именем. Её параметры — это именованные входные значения с объявленными типами. Вызывающий код передаёт аргументы в том же порядке. В этом примере небольшая внутренняя вспомогательная функция складывает два переданных значения, а main выводит результат.

Определите эту вспомогательную функцию внутри контракта:

function combine(uint256 left, uint256 right) internal pure returns (uint256) {
    return left + right;
}

Используйте её внутри предоставленной функции main:

console.log(combine(7, 9));

Вызов combine копирует 7 в left, а 9 — в right. returns (uint256) описывает тип результата, а return отправляет вычисленное значение обратно. Внутренний вспомогательный элемент можно вызвать из этого контракта; он не является внешней точкой входа.

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

challenge icon

Задание

Легко

Создай внутреннюю чистую функцию с именем difference, которая получает два значения типа uint256 и возвращает результат вычитания второго из первого. В main выведи difference(high, low). Значение high не меньше значения low.

Тесты передают аргументы в main в следующем порядке: uint256 high, uint256 low. Каждый тест начинается с нового состояния контракта.

Используй console.log для требуемого вывода. Выводи только запрошенные значения, по одному в строке, без дополнительных меток, если только задание явно их не требует.

Попробуйте сами

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
    function main(uint256 high, uint256 low) external view {
        // Напишите ваше решение здесь.
    }
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы

Потренируйтесь самостоятельно: Песочница Solidity