Накопительные итоги
Часть раздела Основы путешествия по Solidity на Coddy. Урок 33 из 53.
Накопитель хранит результат по мере выполнения цикла. Инициализируйте его перед циклом, чтобы каждая итерация основывалась на предыдущей сумме. Сокращённая запись total += value означает то же самое, что и total = total + value.
Операторы в этом фрагменте выполняются внутри предоставленной функции main.
uint256 total = 0;
for (uint256 i = 1; i <= 4; i++) {
total += i;
}
console.log(total);Накопитель проходит через значения один, три, шесть и десять. Вывод после цикла отображает только итоговый результат. Повторная инициализация total внутри каждой итерации отбросила бы ранее выполненную работу.
Инициализируй накопитель перед циклом и обновляй его внутри цикла.
Задание
ЛегкоИспользуйте цикл, чтобы сложить целые числа от 1 до n, затем выведите сумму. n находится в диапазоне от 0 до 15.
Тесты передают аргументы в main в таком порядке: uint256 n. Каждый тест начинается с чистого состояния контракта.
Используйте console.log для требуемого вывода. Выводите только требуемые значения, по одному в строке, без дополнительных меток, если только это не указано в задании.
Попробуйте сами
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 n) external view {
// Напишите ваше решение здесь.
}
}В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
2Переменные и типы
Беззнаковые целые числаВвод и выводЗнаковые целые числаЛогические значенияСтроки в памятиКарточка профиля5Функции
Параметры функцийВозврат значенийЧистые функцииВызовы вспомогательных функцийПовторно используемые вычисленияПотренируйтесь самостоятельно: Песочница Solidity