Tổng hợp bài tập môn cấu trúc dữ liệu và giải thuật pascal
Số trang: 11
Loại file: doc
Dung lượng: 72.00 KB
Lượt xem: 15
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:
Tài liệu tham khảo tin học
Nội dung trích xuất từ tài liệu:
Tổng hợp bài tập môn cấu trúc dữ liệu và giải thuật pascalSinh viên:Dương Anh VũLớp Sp Tin 21)uses crt;type tree=^node; node=record info:integer; left:tree; right:tree; end;var root:tree;x,tong,chon,sonut:integer;ch:char;procedure Init(var root:tree);begin new(root); root:=nil;end;procedure Add(var root:tree;x:integer);var p,q,l:tree;begin new(p); p^.info:=x; p^.left:=nil; p^.right:=nil; if(root=nil)then root:=p else begin new(q);new(l); q:=root; while(qnil)and(p^.infoq^.info)do begin l:=q; if(p^.info>q^.info)then q:=q^.right else q:=q^.left; end; if(q=nil)then if(p^.info>l^.info)then l^.right:=p else if(p^.infop^.info)then p:=p^.right else p:=p^.left; end; if(p=nil)then Find:=false else Find:=true;end;procedure Delete(var root:tree;x:integer);var p,q,l,r,t:tree;begin new(p);new(q); q:=nil; p:=root; while(pnil)and(p^.infox)do begin q:=p; if(x>p^.info)then p:=p^.right else p:=p^.left; end; if(p^.info=x)then begin if(p^.right=nil)and(p^.left=nil)then if(x>q^.info)then q^.right:=nil else q^.left:=nil; if(p^.right=nil)and(p^.leftnil)then if(p^.info>q^.info)then q^.right:=p^.left else q^.left:=p^.left; if(p^.rightnil)and(p^.left=nil)then if(p^.info>q^.info)then q^.right:=p^.right else q^.left:=p^.right; if(p^.rightnil)and(p^.leftnil)then begin new(r);r:=p^.right; new(t);t:=p; while(r^.leftnil)do begin t:=r;r:=r^.left; end; if(t^.info>r^.info)then t^.left:=r^.right else t^.right:=r^.right; p^.info:=r^.info; end; end;end;{function So_Node(root:tree;var sonut:integer):integer;begin if(rootnil)then begin So_node:=So_Node(root^.left,sonut); So_node:=So_node(root^.right,sonut); if(root^.left=nil)and(root^.right=nil)then inc(sonut); end; So_node:=sonut;end;}procedure So_Node(root:tree;var sonut:integer);begin if(rootnil)then begin So_Node(root^.left,sonut); So_node(root^.right,sonut); if(root^.left=nil)and(root^.right=nil)then inc(sonut); end;end;begin clrscr; init(root); repeat writeln( MENU); writeln( 1_Them ); writeln( 2_Tim ); writeln( 3_Xoa ); writeln( 4_TinhTong); writeln( 5_InCay ); writeln( 6_So_Nut_La); writeln( 7_Exit ); Write(Ban chon:);readln(chon); case(chon) of 1:begin repeat Write(Nhap phan tu can them(nhap -1 de dung):); readln(x); if(x-1)then add(root,x); until x=-1; end; 2:begin Write(nhap phan tu can tim:); readln(x); if(Find(root,x)=true)then writeln(tim thay) else writeln(khong tim thay); end; 3:begin write(nhap gia tri can xoa:);readln(x); delete(root,x); end; 4:begin tong:=0; writeln(Tong cay nhi phan la:,Sum(root,tong)); end; 5:begin printLNR(root); writeln; end; 6:begin sonut:=0; so_node(root,sonut); writeln(so nut la:,sonut); end; end until chon=7;end.2)Program GiaiThua;Uses crt;Var n: byte;Function Giaithua(n:byte):longint;Begin If (n Giaithua:=1 Else Giaithua:= Giaithua(n-1)*n;End;BEGIN Clrscr; Write(Nhap n: ); Readln(n); Write(n,!= ,Giaithua(n)); Readln;END.------------------------------------------Program Fibonaci2;Uses crt;Var n: byte;Function Fibonaci(n:byte):longint;Begin If (n ThapHN(n-1,A,C,B); ThapHN(1,A,B,C); ThapHN(n-1,C,B,A); End;End;BEGIN Clrscr; Write(Nhap so dia: ); Readln(n); Write(Nhap ten thap 1: ); Readln(A); Write(Nhap ten thap 2: ); Readln(B); Write(Nhap ten thap 3: ); Readln(C); writeln(Quy trinh chuyen dia nhu sau:); ThapHN(n,A,B,C); Readln;END.-----------------------------------------------------------------program TextFile;uses crt;const filename=C:Va nban.txt;var f: text; s: string; chon: char; dem: byte;function demtu(s: string):integer;var i,d: integer;begin d:=1; for i:=1 to length(s) do if (s[i]= ) and (s[i+1] ) then d:=d+1; demtu:=d;end;begin clrscr; assign(f,filename); {rewrite(f); repeat write(Nhap mot cau tho: ); readln(s); writeln(f,s); ...
Nội dung trích xuất từ tài liệu:
Tổng hợp bài tập môn cấu trúc dữ liệu và giải thuật pascalSinh viên:Dương Anh VũLớp Sp Tin 21)uses crt;type tree=^node; node=record info:integer; left:tree; right:tree; end;var root:tree;x,tong,chon,sonut:integer;ch:char;procedure Init(var root:tree);begin new(root); root:=nil;end;procedure Add(var root:tree;x:integer);var p,q,l:tree;begin new(p); p^.info:=x; p^.left:=nil; p^.right:=nil; if(root=nil)then root:=p else begin new(q);new(l); q:=root; while(qnil)and(p^.infoq^.info)do begin l:=q; if(p^.info>q^.info)then q:=q^.right else q:=q^.left; end; if(q=nil)then if(p^.info>l^.info)then l^.right:=p else if(p^.infop^.info)then p:=p^.right else p:=p^.left; end; if(p=nil)then Find:=false else Find:=true;end;procedure Delete(var root:tree;x:integer);var p,q,l,r,t:tree;begin new(p);new(q); q:=nil; p:=root; while(pnil)and(p^.infox)do begin q:=p; if(x>p^.info)then p:=p^.right else p:=p^.left; end; if(p^.info=x)then begin if(p^.right=nil)and(p^.left=nil)then if(x>q^.info)then q^.right:=nil else q^.left:=nil; if(p^.right=nil)and(p^.leftnil)then if(p^.info>q^.info)then q^.right:=p^.left else q^.left:=p^.left; if(p^.rightnil)and(p^.left=nil)then if(p^.info>q^.info)then q^.right:=p^.right else q^.left:=p^.right; if(p^.rightnil)and(p^.leftnil)then begin new(r);r:=p^.right; new(t);t:=p; while(r^.leftnil)do begin t:=r;r:=r^.left; end; if(t^.info>r^.info)then t^.left:=r^.right else t^.right:=r^.right; p^.info:=r^.info; end; end;end;{function So_Node(root:tree;var sonut:integer):integer;begin if(rootnil)then begin So_node:=So_Node(root^.left,sonut); So_node:=So_node(root^.right,sonut); if(root^.left=nil)and(root^.right=nil)then inc(sonut); end; So_node:=sonut;end;}procedure So_Node(root:tree;var sonut:integer);begin if(rootnil)then begin So_Node(root^.left,sonut); So_node(root^.right,sonut); if(root^.left=nil)and(root^.right=nil)then inc(sonut); end;end;begin clrscr; init(root); repeat writeln( MENU); writeln( 1_Them ); writeln( 2_Tim ); writeln( 3_Xoa ); writeln( 4_TinhTong); writeln( 5_InCay ); writeln( 6_So_Nut_La); writeln( 7_Exit ); Write(Ban chon:);readln(chon); case(chon) of 1:begin repeat Write(Nhap phan tu can them(nhap -1 de dung):); readln(x); if(x-1)then add(root,x); until x=-1; end; 2:begin Write(nhap phan tu can tim:); readln(x); if(Find(root,x)=true)then writeln(tim thay) else writeln(khong tim thay); end; 3:begin write(nhap gia tri can xoa:);readln(x); delete(root,x); end; 4:begin tong:=0; writeln(Tong cay nhi phan la:,Sum(root,tong)); end; 5:begin printLNR(root); writeln; end; 6:begin sonut:=0; so_node(root,sonut); writeln(so nut la:,sonut); end; end until chon=7;end.2)Program GiaiThua;Uses crt;Var n: byte;Function Giaithua(n:byte):longint;Begin If (n Giaithua:=1 Else Giaithua:= Giaithua(n-1)*n;End;BEGIN Clrscr; Write(Nhap n: ); Readln(n); Write(n,!= ,Giaithua(n)); Readln;END.------------------------------------------Program Fibonaci2;Uses crt;Var n: byte;Function Fibonaci(n:byte):longint;Begin If (n ThapHN(n-1,A,C,B); ThapHN(1,A,B,C); ThapHN(n-1,C,B,A); End;End;BEGIN Clrscr; Write(Nhap so dia: ); Readln(n); Write(Nhap ten thap 1: ); Readln(A); Write(Nhap ten thap 2: ); Readln(B); Write(Nhap ten thap 3: ); Readln(C); writeln(Quy trinh chuyen dia nhu sau:); ThapHN(n,A,B,C); Readln;END.-----------------------------------------------------------------program TextFile;uses crt;const filename=C:Va nban.txt;var f: text; s: string; chon: char; dem: byte;function demtu(s: string):integer;var i,d: integer;begin d:=1; for i:=1 to length(s) do if (s[i]= ) and (s[i+1] ) then d:=d+1; demtu:=d;end;begin clrscr; assign(f,filename); {rewrite(f); repeat write(Nhap mot cau tho: ); readln(s); writeln(f,s); ...
Tìm kiếm theo từ khóa liên quan:
pascal hệ thống thông tin hệ thống dữ liệu quản trị dữ liệu dữ liệu máy tínhTài liệu liên quan:
-
Bài tập thực hành môn Phân tích thiết kế hệ thống thông tin
6 trang 329 0 0 -
Đáp án đề thi học kỳ 2 môn cơ sở dữ liệu
3 trang 318 1 0 -
PHÂN TÍCH THIẾT KẾ HỆ THỐNG XÂY DỰNG HỆ THỐNG ĐẶT VÉ TÀU ONLINE
43 trang 283 2 0 -
Bài thuyết trình Hệ thống thông tin trong bệnh viện
44 trang 263 0 0 -
Bài giảng HỆ THỐNG THÔNG TIN KẾ TOÁN - Chương 2
31 trang 235 0 0 -
Phương pháp và và ứng dụng Phân tích thiết kế hệ thống thông tin: Phần 1 - TS. Nguyễn Hồng Phương
124 trang 222 0 0 -
Đồ án tốt nghiệp: Xây dựng ứng dụng quản lý kho hàng trên nền Web
61 trang 216 0 0 -
62 trang 209 2 0
-
Bài giảng Phân tích thiết kế hệ thống thông tin - Chương 9: Thiết kế giao diện
21 trang 189 0 0 -
Giáo trình Phân tích thiết kế hệ thống thông tin (chương 2-bài 2)
14 trang 183 0 0