Você está aqui: LISP ::: Dicas & Truques ::: Matemática e Estatística |
Como testar se um número é primo em LISPQuantidade de visualizações: 555 vezes |
O Número Primo é o número maior que 1 e que só pode ser dividido por 1 e por ele mesmo, ou seja, números primos não podem ser divididos por outros números, a não ser por ele mesmo e pelo número 1. Dessa forma, 2, 3, 5, 7, 11, 13, 17, etc, são todos números primos. É importante observar que 0 e 1 não são números primos, e que o número 2 é o único número primo par. Veja agora um código Common Lisp (a implementação oficial da LISP) completo que pede para o usuário informar um número inteiro positivo e mostra uma mensagem indicando se o número informado é primo ou não: ; variáveis que vamos usar no programa (let ((numero)(primo NIL)) ; vamos solicitar um número inteiro positivo (princ "Informe um número inteiro positivo: ") ; talvez o seu compilador não precise disso (force-output) ; atribui o valor lido à variável numero (setq numero (read)) ; vamos testar as condições (cond ; o número é negativo? ((< numero 0) (princ "Número inválido")) ((or (= numero 0)(= numero 1)) (princ "Número válido, mas não é primo.")) ; passou até aqui. Vamos testar se o número é primo (t (setq primo T) (loop for i from 2 to (truncate (/ numero 2)) do ( ; se passar no teste, não é primo Ao executar este código LISP nós teremos o seguinte resultado: Informe um número inteiro positivo: 9 O número informado não é primo |
![]() |
Veja mais Dicas e truques de LISP |
Dicas e truques de outras linguagens |
Delphi - Como retornar o índice do item selecionado em um ComboBox do Delphi usando a propriedade ItemIndex JavaScript - Como testar se ao menos um elemento de um array satisfaz uma condição em JavaScript usando a função some() |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |