PHÉP BIẾN ĐỔI KHÓA – HÀM BĂM part 4
Số trang: 9
Loại file: pdf
Dung lượng: 30.08 KB
Lượt xem: 11
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Tham khảo tài liệu phép biến đổi khóa – hàm băm part 4, công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
Nội dung trích xuất từ tài liệu:
PHÉP BIẾN ĐỔI KHÓA – HÀM BĂM part 4{Ch¬ng tr×nh theo ph¬ng ph¸p d©y truyÒn t¬ng tù nh bµi tËp 2 vµ bµi tËp 3}Bµi 5program danhsachlienket;type banghi=record id:string; password:string; end; elementtype=banghi; point=^usernode; usernode=record data:elementtype; next:point; end; bangbam=array[0..12] of point;var f:text; userRec:banghi; userT:bangbam; found:boolean; loc:integer; p:point; ten:string; c:char; dem:integer;procedure khoitao(var T:bangbam);var i:integer;begin for i:=0 to 12 do T[i]:=nil;end;function hambam(ten:string):integer;vartong:integer;i:integer;begintong:=0;for i:=1 to length(ten) do tong:=tong+ord(ten[i]);hambam:=tong mod 11;end;procedure timkiem(T:bangbam;item:elementtype);begin loc:=hambam(item.password); p:=T[loc]; found:=false; dem:=1; while not found and (pnil) do if p^.data.password=item.password then begin found:=true; writeln(Password dung); writeln(ID la ,p^.data.id); dem:=dem+1; end else begin dem:=dem+1; p:=p^.next; end;end;procedure nhap(var T:bangbam;item:elementtype);begin timkiem(T,item); if found=true then writeln(Item da co trong bang bam tai bang thu ,loc,-,dem) else begin new(p); p^.data:=item; p^.next:=T[loc]; T[loc]:=p; writeln(da dien vao vi tri ,loc, o bang thu ,dem); end;end;procedure luu;var i:integer;begin for i:=1 to 11 do begin p:=userT[i]; while pnil do begin write(f,,p^.data.password,*); p:=p^.next; end; writeln(f,); end; close(f);end;procedure doc;var i,j:integer; ten:string;begin readln(f,userrec.id); readln(f,userrec.password);end;beginkhoitao(userT);assign(f,bai5.txt);filemode:=2;reset(f);while not eof(f) do begin doc; nhap(userT,userrec); end;close(f);begin writeln(Nhap password: );readln(userrec.password); timkiem(userT,userrec); if found=false then writeln(Password sai);end;readln;end.Bµi 6program danhsachlienket;type banghi=record id:integer; end; elementtype=banghi; point=^usernode; usernode=record data:elementtype; next:point; end; bangbam=array[0..12] of point;var f:text; userRec:banghi; userT:bangbam; found:boolean; loc:integer; p:point; c:char; ten:string; vc:integer; dem:integer; Tsize:integer; co:array[0..12] of integer;procedure khoitao(var T:bangbam);var i:integer;begin for i:=0 to 12 do T[i]:=nil; co[i]:=0;end;function hambam(ten:integer):integer;begin hambam:=ten mod Tsize;end;procedure timkiem(T:bangbam;item:elementtype);begin loc:=hambam(item.id); p:=T[loc]; found:=false; dem:=1; while not found and (pnil) do if p^.data.id=item.id then begin found:=true; dem:=dem+1; end else begin dem:=dem+1; p:=p^.next; end;end;procedure nhap(var T:bangbam;item:elementtype);begin timkiem(T,item); if found=true then writeln(Gia tri da co trong bang bam tai bang thu ,loc,-,dem) else begin if co[loc]=1 then vc:=vc+1; new(p); p^.data:=item; p^.next:=T[loc]; T[loc]:=p; co[loc]:=1; writeln(da dien vao vi tri ,loc,-,dem); end;end;procedure ghi;var i:integer;begin for i:=1 to 11 do begin p:=userT[i]; while pnil do begin write(,p^.data.id, ); p:=p^.next; end; writeln; end;end;beginkhoitao(userT); vc:=1; writeln(Nhap Tsize: );readln(Tsize); {writeln(Nhap gia tri cua so);readln(userrec.id);} for userrec.id:=1 to 100 do begin nhap(userT,userrec); end; writeln(so lan va cham la ,vc); writeln(Cac gia tri trong bang bam la:); writeln; ghi;readln;end.
Nội dung trích xuất từ tài liệu:
PHÉP BIẾN ĐỔI KHÓA – HÀM BĂM part 4{Ch¬ng tr×nh theo ph¬ng ph¸p d©y truyÒn t¬ng tù nh bµi tËp 2 vµ bµi tËp 3}Bµi 5program danhsachlienket;type banghi=record id:string; password:string; end; elementtype=banghi; point=^usernode; usernode=record data:elementtype; next:point; end; bangbam=array[0..12] of point;var f:text; userRec:banghi; userT:bangbam; found:boolean; loc:integer; p:point; ten:string; c:char; dem:integer;procedure khoitao(var T:bangbam);var i:integer;begin for i:=0 to 12 do T[i]:=nil;end;function hambam(ten:string):integer;vartong:integer;i:integer;begintong:=0;for i:=1 to length(ten) do tong:=tong+ord(ten[i]);hambam:=tong mod 11;end;procedure timkiem(T:bangbam;item:elementtype);begin loc:=hambam(item.password); p:=T[loc]; found:=false; dem:=1; while not found and (pnil) do if p^.data.password=item.password then begin found:=true; writeln(Password dung); writeln(ID la ,p^.data.id); dem:=dem+1; end else begin dem:=dem+1; p:=p^.next; end;end;procedure nhap(var T:bangbam;item:elementtype);begin timkiem(T,item); if found=true then writeln(Item da co trong bang bam tai bang thu ,loc,-,dem) else begin new(p); p^.data:=item; p^.next:=T[loc]; T[loc]:=p; writeln(da dien vao vi tri ,loc, o bang thu ,dem); end;end;procedure luu;var i:integer;begin for i:=1 to 11 do begin p:=userT[i]; while pnil do begin write(f,,p^.data.password,*); p:=p^.next; end; writeln(f,); end; close(f);end;procedure doc;var i,j:integer; ten:string;begin readln(f,userrec.id); readln(f,userrec.password);end;beginkhoitao(userT);assign(f,bai5.txt);filemode:=2;reset(f);while not eof(f) do begin doc; nhap(userT,userrec); end;close(f);begin writeln(Nhap password: );readln(userrec.password); timkiem(userT,userrec); if found=false then writeln(Password sai);end;readln;end.Bµi 6program danhsachlienket;type banghi=record id:integer; end; elementtype=banghi; point=^usernode; usernode=record data:elementtype; next:point; end; bangbam=array[0..12] of point;var f:text; userRec:banghi; userT:bangbam; found:boolean; loc:integer; p:point; c:char; ten:string; vc:integer; dem:integer; Tsize:integer; co:array[0..12] of integer;procedure khoitao(var T:bangbam);var i:integer;begin for i:=0 to 12 do T[i]:=nil; co[i]:=0;end;function hambam(ten:integer):integer;begin hambam:=ten mod Tsize;end;procedure timkiem(T:bangbam;item:elementtype);begin loc:=hambam(item.id); p:=T[loc]; found:=false; dem:=1; while not found and (pnil) do if p^.data.id=item.id then begin found:=true; dem:=dem+1; end else begin dem:=dem+1; p:=p^.next; end;end;procedure nhap(var T:bangbam;item:elementtype);begin timkiem(T,item); if found=true then writeln(Gia tri da co trong bang bam tai bang thu ,loc,-,dem) else begin if co[loc]=1 then vc:=vc+1; new(p); p^.data:=item; p^.next:=T[loc]; T[loc]:=p; co[loc]:=1; writeln(da dien vao vi tri ,loc,-,dem); end;end;procedure ghi;var i:integer;begin for i:=1 to 11 do begin p:=userT[i]; while pnil do begin write(,p^.data.id, ); p:=p^.next; end; writeln; end;end;beginkhoitao(userT); vc:=1; writeln(Nhap Tsize: );readln(Tsize); {writeln(Nhap gia tri cua so);readln(userrec.id);} for userrec.id:=1 to 100 do begin nhap(userT,userrec); end; writeln(so lan va cham la ,vc); writeln(Cac gia tri trong bang bam la:); writeln; ghi;readln;end.
Tìm kiếm theo từ khóa liên quan:
Cấu trúc dữ liệu giáo trình cấu trúc dữ liệu và giải thuật mẹo lập trình thủ thuật lập trình kĩ thuật lập trìnhGợi ý tài liệu liên quan:
-
Đề cương chi tiết học phần Cấu trúc dữ liệu và giải thuật (Data structures and algorithms)
10 trang 316 0 0 -
Thủ thuật giúp giải phóng dung lượng ổ cứng
4 trang 211 0 0 -
NGÂN HÀNG CÂU HỎI TRẮC NGHIỆM THIẾT KẾ WEB
8 trang 203 0 0 -
Giáo trình cấu trúc dữ liệu và giải thuât part 2
16 trang 163 0 0 -
Giải thuật và cấu trúc dữ liệu
305 trang 159 0 0 -
Giáo trình Cấu trúc dữ liệu và giải thuật: Phần 2 - Trần Hạnh Nhi
123 trang 156 0 0 -
Hướng dẫn lập trình với Android part 4
5 trang 154 0 0 -
Bài giảng Phân tích thiết kế phần mềm: Chương 1 - Trường ĐH Ngoại ngữ - Tin học TP.HCM
64 trang 149 0 0 -
Tập bài giảng Thực hành kỹ thuật lập trình
303 trang 143 0 0 -
Giáo trình Cấu trúc dữ liệu và thuật toán (Tái bản): Phần 1
152 trang 138 0 0