program QLSDT;
uses crt;
type
ttkh=record
makh,hoten,sdt,diachi:string[35];
end;
mangkh=array[1..50] of ttkh;
var
i,j,n,k:integer;
kh:mangkh;
tg:ttkh;
ans,choice:char;
dt:string;
{---------------------------------------------------}
procedure nhap;
begin
i:=0;
repeat
i:=i+1;
clrscr;
writeln('Nhap Thong Tin Kh thu ',i,':');
with kh[i] do
begin
write('+ Nhap ma khach hang:');readln(makh);
write('+ Nhap ho ten :');readln(hoten);
write('+ Nhap dia chi:');readln(diachi);
write('+ Nhap so dien thoai:');readln(sdt);
end;
write('continue (y/n)?');readln(ans);
until upcase(ans)='N';
n:=i;
end;
{----------------------------------------------------}
procedure inds;
begin
clrscr;
writeln(' DANH SACH KHACH HANG ');
writeln('+------+----------------+--------------------+----------+');
writeln('|Ma Kh | Ho va ten | Dia Chi | So DT |');
writeln('+------+----------------+--------------------+----------+');
for i:=1 to n do with kh[i] do
writeln('|',makh:6,'|',hoten:16,'|',diachi:20,'|',sdt:10,'|');
writeln('+------+----------------+--------------------+----------+');
readln;
end;
{----------------------------------------------------}
procedure sapxep;
begin
for i:=1 to n-1 do
for j:=i+1 to n do if (kh[i].sdt>kh[j].sdt) then
begin
tg:=kh[i];
kh[i]:=kh[j];
kh[j]:=tg;
end;
end;
{-----------------------------------------------------}
procedure tim;
begin
clrscr;
write('Nhap so dien thoai can tim:');readln(dt);
i:=1;
while (i<=n) and (kh[i].sdt<>dt) do i:=i+1;
if (i<=n) then with kh[i] do
begin
writeln('Thong tin khach hang thu ',i,':');
writeln('+ Ma khach hang:',makh);
writeln('+ Ho va ten:',hoten);
writeln('+ Dia chi:',diachi);
writeln('+ So dien thoai:',sdt);
end
else
write('Khong ton tai SDT:',dt);
readln;
end;
{----------------------------------------------------}
procedure chen;
begin
clrscr;
write('Nhap vi can chen k:');readln(k);
n:=n+1;
i:=n;
while (i>k) do
begin
kh[i]:=kh[i-1];
i:=i-1;
end;
writeln('Nhap thong tin khach hang thu ',k,':');
with kh[i] do
begin
write('+ Ma khach hang:');readln(makh);
write('+ ho va ten:');readln(hoten);
write('+ Nhap dia chi:');readln(diachi);
write('+ Nhap so dien thoai:');readln(sdt);
end;
end;
{---------------------------------------------------}
procedure xoa;
begin
clrscr;
write('Nhap vi tri can xoa k:');readln(k);
i:=k;
while i<n do
begin
kh[i]:=kh[i+1];
i:=i+1;
end;
n:=n-1;
end;
{---------------------------------------------------}
{chuong trinh chinh}
begin
repeat;
clrscr;
writeln(' CHUONG TRINH QUAN LY SO DIEN THOAI');
writeln('---------------------------------------------');
writeln('Chon cong viec:');
writeln('1. Nhap khach hang dang ky');
writeln('2. In danh sach khach hang');
writeln('3. Sap xep khach hang theo SDT');
writeln('4. Tim khach hang theo SDT');
writeln('5. Chen khach hang');
writeln('6. Xoa khach hang');
writeln('7. Thoat khoi chuong trinh');
write('Ban chon viec nao?(1,2,3,4,5,6,7)');readln(choice);
case choice of
'1':nhap;
'2':inds;
'3':sapxep;
'4':tim;
'5':chen;
'6':xoa;
end;
until choice='7';
end.