Break e Continue
Parte da seção Fundamentos do Journey de Solidity da Coddy. Lição 34 de 53.
Dentro de um loop, break sai do loop imediatamente. continue ignora o restante da iteração atual e passa para a próxima iteração. Em um loop for, a expressão de atualização ainda é executada após continue.
As instruções neste trecho são executadas dentro da função main fornecida.
for (uint256 i = 1; i <= 5; i++) {
if (i == 2) { continue; }
if (i == 4) { break; }
console.log(i);
}A segunda iteração ignora a impressão. A quarta sai antes de imprimir, então cinco nunca é alcançado. break e continue afetam o loop delimitador mais próximo, não todas as funções do contrato.
break sai do loop mais próximo; continue ignora o restante da iteração atual.
Desafio
FácilImprima os inteiros de 1 até n, ignorando o valor banned fornecido, e depois imprima done. n é no máximo 8 e banned está entre 1 e 10.
Os testes passam os argumentos para main nesta ordem: uint256 n, uint256 banned. Cada teste começa com um estado novo do contrato.
Use console.log para a saída solicitada. Imprima apenas os valores solicitados, um por linha, sem rótulos adicionais, a menos que a tarefa os especifique.
Experimente você mesmo
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 n, uint256 banned) external view {
// Escreva sua solução aqui.
}
}Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentos
2Variáveis e Tipos
Inteiros sem sinalEntradas e saídasInteiros com sinalValores booleanosStrings na memóriaCartão de perfil5Funções
Parâmetros de FunçãoRetorno de ValoresFunções PurasChamadas AuxiliaresCálculos ReutilizáveisPratique por conta própria: Playground de Solidity