Valores de retorno
Parte de la sección Fundamentos del Journey de Solidity de Coddy. Lección 22 de 53.
Una función puede calcular un resultado sin imprimirlo. Declara el tipo del resultado con returns y después usa return dentro del cuerpo. El llamador puede almacenar el valor devuelto y usarlo en una expresión más grande. Devolver e imprimir son acciones separadas.
Define esta función auxiliar dentro del contrato:
function doubled(uint256 n) internal pure returns (uint256) {
return n * 2;
}Úsala dentro de la función main proporcionada:
uint256 value = doubled(9);
console.log(value + 1);La función auxiliar devuelve dieciocho. La función que la llama suma uno e imprime diecinueve. Una instrucción return finaliza la llamada a la función actual, por lo que las instrucciones ordinarias después de un return incondicional no pueden contribuir a esa llamada.
El valor devuelto puede almacenarse o ser utilizado por la función que llama sin que la función auxiliar lo imprima.
Desafío
FácilEscribe un helper interno square de tipo pure que devuelva n multiplicado por n. En main, guarda square(side) en una variable e imprímelo.
Las pruebas pasan argumentos a main en este orden: uint256 side. Cada prueba comienza con un estado del contrato nuevo.
Usa console.log para la salida solicitada. Imprime únicamente los valores solicitados, uno por línea, sin etiquetas adicionales, a menos que la tarea las especifique.
Pruébalo tú mismo
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 side) external view {
// Escribe tu solución aquí.
}
}Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
10Reglas de los contratos
Condiciones requireReversiones explícitasEventosVisibilidad y privacidadActualizaciones verificadas2Variables y tipos
Enteros sin signoEntradas y salidasEnteros con signoValores booleanosCadenas en memoriaTarjeta de perfil5Funciones
Parámetros de funcionesValores de retornoFunciones purasLlamadas auxiliaresCálculos reutilizablesPractica por tu cuenta: Playground de Solidity