Operadores lógicos
Parte da seção Fundamentos do Journey de Solidity da Coddy. Lição 17 de 53.
Combine condições booleanas com && para AND e || para OR. AND exige que ambos os lados sejam verdadeiros. OR exige que pelo menos um dos lados seja verdadeiro. Coloque ! antes de um booleano para invertê-lo. Parênteses facilitam a leitura de comparações agrupadas.
As instruções neste trecho são executadas dentro da função main fornecida.
bool hasPass = true;
bool paused = false;
console.log(hasPass && !paused);A senha está presente e o sinalizador de pausa é falso, portanto, ambos os requisitos são satisfeitos após negar paused. AND e OR usam avaliação de curto-circuito: o lado direito só é avaliado quando pode alterar o resultado.
AND exige ambas as condições; OR exige pelo menos uma condição.
Desafio
FácilUm visitante só pode entrar quando ticket for true e closed for false. Imprima se a entrada é permitida.
Os testes passam argumentos para main nesta ordem: bool ticket, bool closed. 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(bool ticket, bool closed) 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