Cmo achar um numero primo ?

Delphi

02/02/2004

Olá, pode parecer loucura, mas queria saber qual o algoritimo para que que eu posso achar O PRIMEIRO numero primo depois de um numero fornecido pelo usuario? Teria que ter um algoritimo para verificar se o que o usuario digitou e ou nao um numero primo... e apos a verificacao True, me dar o primeiro numero primo depois dele..

Desde já agradeço,
Abraços,


Titanius

Titanius

Curtidas 0

Respostas

Deus

Deus

02/02/2004

Essa questão é bastante fácil. Criei uma função pequena para você, que ficou assim:

function iRetornaPrimo(iNum: Integer): Integer;

  function bEPrimo(iNum: Integer): Boolean;
  var
             i: Integer;
    bResultado: Boolean;
  begin
    bResultado := True;

    for i := 2 to (iNum div 2) do
      if ((iNum mod i) = 0) then
      begin
        bResultado := False;
        break;
      end;

    Result := bResultado;
  end;

begin
  while not (bEPrimo(iNum)) do
    inc(iNum);

  Result := iNum;
end;


Aí, é só você usá-la da seguinte forma:

varInteger := iRetornaPrimo(varInteiro_a_ser_testado);


A [i:c470e5241a]varInteiro_a_ser_testado[/i:c470e5241a] é uma variável do tipo integer que vai guardar o valor do usuário. Ao chamar a função, ela vai retornar o próprio valor testado, se este for primo, ou o primeiro primo encontrado na sequencia.

Abraços, dEUS.


GOSTEI 0
POSTAR