Ver Mensaje Individual
  #4  
Antiguo 07-04-2015
Avatar de nlsgarcia
[nlsgarcia] nlsgarcia is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Caracas, Venezuela
Posts: 2.206
Reputación: 21
nlsgarcia Tiene un aura espectacularnlsgarcia Tiene un aura espectacular
agustin_uni,

Cita:
Empezado por agustin_uni
...Mi primera pregunta en el foro es un ejercicio que me pide que cree un programa en donde me muestre si un numero es primo o no...


Revisa este código:
Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Edit1KeyPress(Sender: TObject; var Key: Char);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

// Verifica si un número es primo ó compuesto
function CheckPrime(Number : LongWord) : Boolean;
var
   NumberSqrt, i : Integer;

begin

   Result := True;

   NumberSqrt := Trunc(Sqrt(Number));

   for i := 2 to NumberSqrt do
   begin
      if (Number mod i) = 0 then
      begin
         Result := False;
         Exit;
      end;
   end;

end;

// Permite solo entrada de datos númericos
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
   if not (Key  in ['0'..'9',#8]) then
      Key := #0;
end;

// Valida el rango de un número y verifica si es primo ó compuesto
procedure TForm1.Button1Click(Sender: TObject);
var
   Number : LongWord;

begin

   if (StrToInt64(Edit1.Text) >  High(LongWord)) then
   begin
      MessageDlg('El Número Máximo Permitido para Chequeo de Primo es : ' + IntToStr(High(LongWord)),mtInformation,[mbOk],0);
      Exit;
   end;

   Number := StrToInt64(Edit1.Text);

   if CheckPrime(Number) then
      MessageDlg('El número ' + IntToStr(Number) + ' es Primo',mtInformation,[mbOk],0)
   else
      MessageDlg('El número ' + IntToStr(Number) + ' es Compuesto',mtInformation,[mbOk],0);

end;

end.
El código anterior en Delphi 7 sobre Windows 7 Professional x32, Verifica si un número es Primo o Compuesto.

Revisa esta información relacionada:
Espero sea útil

Nelson.
Responder Con Cita