shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Teste Matematico em shell


From: Ivan lopes
Subject: Re: [shell-script] Teste Matematico em shell
Date: Sat, 22 Oct 2005 07:58:34 -0200

optimizado :
-----------------
#!/bin/bash
[ "$1" ] || { echo "usage: $0 number" ; exit 1 ; }
for ((i=2; i < $1 / 2 + 1  ; i++));do
   [ $(( $1 % $i )) -eq 0 ] && { echo "nao, $1 nao eh primo" ; exit 0 ; }
done
echo "sim, $1 eh primo"


A definicao de primo diz que primo eh
o número que é dividido somente por 1 e ele mesmo.
*sendo 1 primo

para tanto basta que nosso algoritmo divida o numero em questao por
2 até ele mesmo, e caso seja divisível(mod 0), teremos que o número nao
eh primo e em caso comtrário seria primo.

logo um algoritmo da forma O(n) resolveria nosso problema.

para tanto amigos nenhum número é divisívem pela sua metade +1, ou seja
45 nao é divisível por 22 +1.
logo o laco muda para
for ((i=2; i < $1 / 2 + 1  ; i++));do

diminuindo o número de interacoes de 2n para n.

mas como O(2n)==O(n), deu na mesma ...


--
[ ]'s
Ivan Carlos Da Silva Lopes

Engenheiro Eletronico e Computacao
UFRJ


reply via email to

[Prev in Thread] Current Thread [Next in Thread]