Trang chủ » Diễn Đàn » Lập trình và Phát triển Web » CLB Thuật toán » nhờ mọi người xem hộ thuật toán của mình.mình k bít sai ở đâu.huhu.
Chủ đề đã bị khóa, bạn không thể xóa, sửa hay trả lời trong chủ đề này!
|
|
|---|
|
0
Mình còn vài ngaỳ nữa là phải nộp bài tập rùi nhưng bg mình k biết mình sai ở đâu nữa.Đề bài là lập trình để đưa ra chu trình hamilton của đồ thị.Mình đã viết nó theo quay lui nhưng k hiểu sao k chạy dc.mọi người xem hộ mình nhé!!!thanks nhiều.mình viết theo pascal:
const n=5; type mang=array[1..5] of 1..5; mang2=array[1..5,1..5] of integer; var i,j,k,v0:integer; chuaxet:array[1..5] of boolean;x:mang; a:mang2; procedure nhapsolieu; begin write('Nhap so lieu ma tran ke: '); for i:=1 to n do begin for j:=i+1 to n do begin write('a[',i,',',j,']','='); read(a[i,j]);a[i,j]:=a[j,i]; end; a[i,i]:=0; writeln; end; end; procedure ghinhan(var x:mang); begin for j:=1 to n do write(x[j]:2); writeln; end; procedure hamilton(k:integer); begin for j:=2 to n do if (a[x[k-1],j]=1) then begin if( k=n-1) and (j=v0) then ghinhan(x); else if chuaxet[j] then begin x[k]:=j; chuaxet[j]:=false; hamilton(k+1); chuaxet[j]:=true; end;end; end; begin nhapsolieu; write('Chu trinh tu dinh: ');readln(v0); for i:=1 to n do chuaxet[i]:=true; x[1]:=v0; chuaxet[v0]:=false; hamilton(2); readln; end. Mọi người ơi nhanh hộ mình nha.Mình mà k làm dc bt này thì khỏi thi hết hp lun.hjx |
