Module: Sub-rotinas: procedimentos e funções - 2


Problem

6/10

função booleana

Theory Click to read/hide

Muitas vezes, os programadores usam funções booleanas que retornam valores booleanos true ou false (true ou falso).
Tais funções são úteis para verificar uma propriedade.
Considere dois exemplos de como escrever uma função lógica que verifica a igualdade de um número

Melhor forma:
resultado da expressão
n % 2 == 0
será true (true) ou false (false)
Não há necessidade de escrever uma instrução condicional.
Não faça isso.
Claro, você pode fazer isso, mas esta é uma entrada mais longa.
bool isEven(int n) { retornar (n % 2 == 0); } bool isEven(int n) { se (n % 2 == 0) { retornar verdadeiro;   } outro { retorna falso;   } }

E a última observação sobre como trabalhar com funções e procedimentos: o número de funções e procedimentos no programa não é limitado. Além disso, uma sub-rotina pode chamar outra sub-rotina e até ela mesma.
Além disso, após o programa atingir o retorno na função, o programa para imediatamente de executar a função e retorna o valor.
Ou seja, o segundo exemplo da tabela também poderia ser abreviado assim:
bool isEven(int n)
{
    if (n % 2 == 0) {
        retornar Verdadeiro
    }
    return Falso;
}

 

Problem

Diz-se que um inteiro é primo se for divisível apenas por 1 e por ele mesmo. Escreva uma função booleana (uma função que retorna true ou false ) para determinar se um determinado número é primo.
O programa principal usa o resultado da função lógica.
Exemplo.
Entrada Saída
4 NÃO
5 SIM