1. Trang chủ
  2. » Giáo án - Bài giảng

Cài đặt thuật toán Vector đồ thị bằng Pascal

3 983 3
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 3
Dung lượng 31 KB

Nội dung

CÀI ĐẶT THUẬT TOÁN VECTOR ĐỒ THỊ BẰNG CHƯƠNG TRÌNH PASCAL Vecto đồ thị. Chương trình kiểm tra một vector có phải là một vector đồ thị hay không. Dữ liệu được lấy từ tệp VECTO.INP, gồm các vector dạng v =(d 1 ,d 2 ,…d n ) gồm n số nguyên giảm dần, được viết theo dòng. Chương trình sẽ kiểm tra vector v và kết quả được lưu vào tệp VECTO.OUT. Nếu v là vector đồ thị thì kết quả là YES, ngược lại là NO. Chương trình: (VECTOR.PAS) Program vecto; type mang = array[1 20] of integer; var f,g:text; v:mang; n:integer; procedure giamdan(var u:mang;m:integer); var i,j,t:integer; begin for i:=1 to m-1 do for j:=i+1 to m do if u[i]<u[j] then begin t:=u[i]; u[i]:=u[j]; u[j]:=t; end; end; function kiemtra(v:mang;m:integer):boolean; var i:integer; u:mang;kt,bietroi:boolean; begin u:=v; giamdan(u,m); kt:=false; bietroi:=true; for i:=1 to m do if (u[i]>m-1) or (u[i]<0) then kt:=true else if u[i]<>0 then bietroi:=false; if kt then kiemtra:=false else if bietroi then kiemtra:=true else begin for i:=1 to u[1] do u[i]:=u[i+1]-1; for i:=u[1]+1 to m-1 do u[i]:=u[i+1]; giamdan(u,m-1); kiemtra:=kiemtra(u,m-1); end; end; Begin writeln(' ct xac dinh vec to do thi'); assign(f,'vecto.inp'); reset(f); assign(g,'vecto.out'); rewrite(g); while not eof(f) do begin n:=0; while not eoln(f) do begin inc(n); read(f,v[n]); write(v[n]:3); end; writeln; if kiemtra(v,n) then writeln(g,'YES') else writeln(g,'NO'); readln(f); end; close(f); close(g); End. File vào ví dụ: (VECTO.INP) 2 2 1 3 3 2 2 2 5 4 3 3 3 2 File ra tương ứng: (VECTO.OUT) NO YES YES . CÀI ĐẶT THUẬT TOÁN VECTOR ĐỒ THỊ BẰNG CHƯƠNG TRÌNH PASCAL Vecto đồ thị. Chương trình kiểm tra một vector có phải là một vector đồ thị hay không kết quả được lưu vào tệp VECTO.OUT. Nếu v là vector đồ thị thì kết quả là YES, ngược lại là NO. Chương trình: (VECTOR. PAS) Program vecto; type mang = array[1 20]

Ngày đăng: 30/06/2013, 01:26

TỪ KHÓA LIÊN QUAN

w