dang lifo

Màu nền
Font chữ
Font size
Chiều cao dòng

program baitapLIFO;

Uses crt;

Type DS=^Quanlyhoso;

     Quanlyhoso=record

        MaCB:string[5];

        Hoten:string[20];

        Phong:string[5];

        HSL:real;

        Tiep:DS;

     end;

Var ct,ct1,ctcuoi,last:DS; n:integer;

Procedure TaoDS;

var lam:char;

Begin

     writeln('Nhap thong tin can bo');

     writeln;

     lam:='C';

     ctcuoi:=nil;

     Repeat

           New(ct);

           With ct^ do

                begin

                     write('Ma can bo: ');readln(MaCB);

                     write('Ho va ten: ');readln(Hoten);

                     write('Phong ban: ');readln(Phong);

                     write('He so luong: ');readln(HSL);

                end;

           {if ctcuoi=nil then

              begin}

                   ct^.Tiep:=ctcuoi;

                   ctcuoi:=ct;

             { end;  }

           writeln;

           write('Nhap tiep hay thoi? (C/K) ');readln(lam);

           writeln;

     Until Upcase(lam)='K';

end;

Procedure DuyetDS;

begin

     writeln;

     writeln('Danh sach can bo');

     writeln;

     ct:=ctcuoi;

     writeln('MaCB':4,'Ho va ten':16,'Phong ban':12,'He so luong':13);

     while ct<>nil do

           begin

                with ct^ do

                     begin

                          writeln(MaCB:3,Hoten:17,Phong:10,HSL:13:2);

                          ct:=ct^.Tiep;

                     end;

           end;

end;

    {Them mot can bo vao cuoi danh sach}

Procedure Them;var ctdau:ds;

Begin

     writeln('Them mot can bo vao cuoi danh sach');

     writeln;

     New(ct);

     With ct^ do

                begin

                     write('Ma can bo: ');readln(MaCB);

                     write('Ho va ten: ');readln(Hoten);

                     write('Phong ban: ');readln(Phong);

                     write('He so luong: ');readln(HSL);

                end;

     ct^.Tiep:=nil;

     if ctcuoi=nil then ctcuoi:=ct

     else

       begin

          ct^.Tiep:=ctcuoi;

          ctcuoi:=ct;

       end;

end;

    {Tim va sua can bo co co ma CNP12}

Procedure TimvaSua;

var SmaCB:string[5];

begin

     writeln;

     writeln('Ma can bo can sua co ma la CNP12 ');

     writeln;

     write('Nhap ma can bo can sua: ');readln(SMaCB);

     ct:=ctcuoi;

     while (ct<>nil) and (ct^.MaCB<>SMaCB) do

           ct:=ct^.Tiep;

     If (ct^.MaCb=SMaCB) and (ct^.MaCB='CNP12') then

         ct^.HSL:=2.67

     else

         writeln('Du lieu ban nhap khong dung yeu cau');

end;

procedure xoa;

var SMaCB:string[5];

begin

     writeln;

     writeln('Can bo an xoa khoi danh sach co ma la : CNP20');

     writeln;

     write('Nhap ma can bo can xoa khoi danh sach: ');readln(SMaCB);

     ct1:=ctcuoi;

     ct:=ct1^.Tiep;

     While (ct<>nil) and (ct^.MaCB<>SMaCB) do

           begin

                ct1:=ct;

                ct:=ct^.Tiep;

           end;

     if ((ct=ctcuoi)and(ct^.MaCB='CNP12'))then

        ctcuoi:=ct^.Tiep

     else

         if ((ct^.MaCB=SMaCB)and(ct^.MaCB='CNP12'))then

          ct1^.Tiep:=ct^.Tiep

     else

         writeln('Khong tim thay can bo co ma CNP20');

end;

begin

     clrscr;

     writeln;

     writeln;

     textcolor(red);

     writeln('          MENU CHUONG TRINH CHINH ');

     writeln;

     textcolor(white);

     writeln('              1:Tao danh sach ');

     writeln('              2:Duyet danh sach ');

     writeln('              3:Them can bo vao danh sach ');

     writeln('              4:Tim va Sua thong tin can bo ');

     writeln('              5:Xoa ho so can bo ');

     writeln('              6:Nhan phim 9 de ket thuc  ');

     writeln;

     Repeat

           textcolor(green);

           write('Ban chon cong viec nao? ');readln(n);

           writeln;

           textcolor(white);

           Case n of

                1:TaoDS;

                2:DuyetDS;

                3:begin Them; DuyetDS; end;

                4:begin TimvaSua; DuyetDS; end;

                5:begin Xoa; DuyetDS; end;

           end;

           writeln;

           writeln('Nhan phim 9 de ket thuc ');

           writeln;

     Until n=9;

end.

Bạn đang đọc truyện trên: Truyen2U.Net

#kena