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

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

Re: [shell-script] Numeros primos


From: Fernando Lemes da Silva
Subject: Re: [shell-script] Numeros primos
Date: Fri, 31 Oct 2003 00:49:22 -0300

   Tentei brincar com isso para aprender mais, mas o que fiz não funciona
para numeros muito grandes...

raiz=$(echo "sqrt($1)" | bc -q)
for i in $(seq 2 $raiz); do
  if [ $(echo $1%$i | bc -q) -eq "0" ]; then exit; fi
done
echo "$1"

   A ideia é testar os divisores de 2 a raiz quadrada do numero (floor) até
achar algum que divide e constatar que nao é primo. Se o numero aguentar as
divisões e não tiver um divisor ele é impresso na saida padrao. Dá pra fazer
montando uma lista com os numeros primos e ao invés de tentar os numeros
2,3,4,5,6,7,8,9,10,11,12,... ele tentaria 2,3,5,7,11,... poupando tempo de
processamento (não me recordo se existe algum meio mais eficiente...).

   Não entendi bem o porque, mas quando o numero tem mais que 7 digitos
parece que ele transforma o numero em notação cientifica e arredonda... é
complicado fazer isso quando não se tem bem definido o tipo e propriedades
da variavel...

   []'s
   Fernando Lemes


----- Original Message ----- 
From: "rettore" <address@hidden>
To: <address@hidden>
Sent: Monday, October 27, 2003 9:04 AM
Subject: [shell-script] Numeros primos


> Alguem conhece algum algoritimo que verifica se o numero é primo ??
> Rettore



reply via email to

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