All pastes #237566 Raw Edit

Mine

public text v1 · immutable
·published 2006-11-04 16:59 UTC
rendered paste body
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Memo1: TMemo;
    Edit1: TEdit;
    Button1: TButton;
    Button2: TButton;
    CheckBox1: TCheckBox;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

function chiffre(text: string; n: integer):string;
var i, ordinal, ordinaln:integer;
begin
text:=UpperCase(text);
for i:=0 to length(text) do begin
    ordinal:=ORD(text[i]);
    ordinaln:=ordinal+n;
    if(ordinal>=65) AND (ordinal<=90) then begin
      text[i]:=chr(ordinaln);
      if(ordinaln>90) then
        text[i]:=chr(ordinaln-26)
        else if (ordinaln < 65) then
          text[i]:=chr(ordinaln+26);
    end;
end;
result:=text;
end;

function trimNumber(n: integer):integer;
begin
if( n > 25) then
    n:= n mod 26;
result:=n;
end;

function isValidNumber(n: integer):boolean;
begin
if (n mod 26) = 0 then
   result:=false
else
    result:=true;
end;

procedure abortChiffre;
begin
   showmessage('Wolltest du nicht Chiffrieren?');
   abort;
end;
{
function trimSpecialChars(s:string):string;
var s1:string;
    i:integer;
begin
//der scheiss wird nicht genutzert....
     s1:='';
     for i:=1 to length(s) do
         if not (s[i] in [' ', '-', ' '])
            then s1:=s1+s[i];
     result:=s1;
end;
}
function removeSpecialChars(s: string): string;
var s1: string;
    i,c: integer;
begin
for i:=0 to length(s) do begin
    c:=ORD(s[i]);
    if ((c>=65) AND (c<=90)) then
       s1:=s1+chr(c);
end;
result:=s1;
end;


procedure preChiffre(text: string; n: integer);
begin
    n:=trimNumber(n);
    if(n<0) then
        form1.edit1.Text:=inttostr(n*-1)
    else
        form1.edit1.Text:=inttostr(n);
    if isValidNumber(n)=false then
       abortChiffre;
    if(form1.CheckBox1.Checked) then
        text:=removeSpecialChars(text);
    form1.memo1.text:=chiffre(text, n);
end;

procedure TForm1.Button1Click(Sender: TObject);
var text:string;
    n:integer;
begin
text:=memo1.text;
n:=strtoint(edit1.text);
preChiffre(text, n);  
end;

procedure TForm1.Button2Click(Sender: TObject);
var text:string;
    n:integer;
begin
text:=memo1.text;
n:=strtoint(edit1.text);
preChiffre(text, n*-1);
end;

end.