Menu
Coddy logo textTech

Laços While

Parte da seção Fundamentos do Journey de Solidity da Coddy. Lição 32 de 53.

Um loop while verifica uma condição e repete seu corpo enquanto essa condição for verdadeira. Você controla a atualização dentro do corpo. Certifique-se de que o loop altere algo que possa eventualmente tornar sua condição falsa.

As instruções deste trecho são executadas dentro da função main fornecida.

uint256 remaining = 3;
while (remaining > 0) {
    console.log(remaining);
    remaining--;
}

O contador é impresso antes de ser decrementado. Quando chega a zero, a próxima verificação da condição interrompe o loop, portanto a subtração sem sinal nunca é executada quando o valor é zero. A ausência do decremento faria com que a condição permanecesse verdadeira para sempre.

Um loop while precisa de um caminho que eventualmente torne sua condição falsa.

challenge icon

Desafio

Fácil

Começando em n, imprima uma contagem regressiva até 1 usando while e, em seguida, imprima stop. n está entre 0 e 7.

Os testes passam argumentos para main nesta ordem: uint256 n. 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) external view {
        // Escreva sua solução aqui.
    }
}
quiz iconTeste seus conhecimentos

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

Pratique por conta própria: Playground de Solidity