Program Validasi Credit Card (Pascal)

Di bawah ini adalah salah satu contoh dimana kita bisa membuat sebuah pemrograman validasi credit card yang cukup sederhana yang menggunakan bahasa pascal.

Program ini hanyalah sebuah contoh dimana dengan beberapa logika dari penggunaan credit card maka kita akan segera mengetahui keabsahan dari sebuah kertu kredit. Untuk digit yang akan di validasi tentu tergantung dari kartu kreditnya.

Jadi, program dibawah ini hanyalah sebuah simulasi dari logika untuk melakukan pengecekan kartu kredit, untuk lebih detail tentu saja Anda bisa melakukan modifikasi terhadap program ini.

function fullparamstr : string;
begin
fullparamstr := string(ptr(prefixSeg,$80)^);
end;

function v (key : char) : byte;
{ convert char to byte }
begin
if not (key in [‘0’..’9’]) then halt;
v := ord (key) – ord (‘0’);
end;

var
c : string;
i : byte;
s : word;

BEGIN
{ get credit card number }
if paramcount <> 0 then c:= fullparamstr
else begin
writeIn (‘enter a credit card number:’);
readln (c);
end;

{ remove anything that’s not a digit }
i := 1
while (i <= length(c)) do begin
if not (c[i] in [‘0’..’9’]) then
c:= copy (c,1,i-1) + copy (c,i+1,255)
else inc (i);
end;

{ calculate checksume }
s := 0;
for i := 1 to length(c) do begin
if odd(i) then begin inc (s, 2*v(c]i[));
if v(c[i]) > 4 then inc (s);
end
else inc (s, v(c[i]));
end;

if s mod 10 = 0
then writeIn (‘Credit Card number is OK’)
else writeIn (‘Credit Card number is INCORRECT !!’,^G);

if s mod 10 <> 0 then halt(1);

END.

komputek

%d bloggers like this: