Chủ đề: tìm kết quả của chương trình C?
-
01-11-2010, 08:31 AM #1Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
tìm kết quả của chương trình C?
Mọi người giúp mình tìm KQ bước 2 của chương trình sẽ xuất ra với. Kq bước 1 mình cbiên dịch đc là 1 2 3 4. Mình ko hiểu sau khi bước 1 hoàn tất thì máy sẽ biên dịch để tìm kết quả bước 2 như thế nào?
P/s: Đã chạy thử ctr trên máy thì ra bước 2 là: 1 2 4 3. Nhưng ko hiểu sao lại ra đc kq này?
Mã:#include<stdio.h> #include<conio.h> int X[10], chuaxet[10], n, count; void Init(void) { n=4; count=0; for(int i=1; i<=n; i++) chuaxet[i]=1; } void Result(void) { printf(" Ket qua buoc %d :",++count); for (int i=1; i<=n; i++) printf("%3d", X[i]); } void Try(int i) { for(int j=1; j<=n; j++) {if (chuaxet[j]) { X[i]=j; chuaxet[j]=0; if (i==n)Result(); else Try(i+1); chuaxet[j]=1;} } } void main(void){ Init(); Try(1);}
View more random threads:
- typedef struct có ý nghĩa gì?
- không hiểu cách sử dụng biến a!
- code tính biểu thức Postfix bị lỗi chổ nào xem giúp mình với
- [Hỏi] Bài tập Kiểu dữ liệu nâng cao và sắp xếp
- Hàm kiểm tra kiểu trong C
- tìm kết quả của chương trình C?
- desktop services?
- HÌnh như code xóa 1 node dslk này bị sai
- ngẫm suốt mấy tiếng mà không hiểu bài nà
- [Help] min max mảng
-
01-11-2010, 11:59 AM #2Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
BackTracking thì tự chạy tay thôi bạn.
vẽ cái cây ra, tùy bạn làm sao cho nó dễ hiểu
BackTrack sài Debug cũng khó kiểm soát
Nhưng bạn cứ Debug đi, sẽ nhìn thấy thôi.
Mấy loại này phải tự tay làm thôi bạn ạ.
Vì nó khó [IMG]images/smilies/biggrin.png[/IMG] do vậy nếu để người khác làm thì mình ko hiểu đc nhiều đâu [IMG]images/smilies/biggrin.png[/IMG]
-
01-11-2010, 12:08 PM #3Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Hì, bài này là sinh ra các hoán vị thôi, ở mỗi lần sinh kiểm tra xem nó đã được sử dụng chưa.
Với n=4 thì sẽ sinh hoán vị trong {1,2,3,4}
Đầu tiên Try(1) đc gọi chọn đc X[1]=1, đánh dấu đã xét
vì 1!=4 nên gọi đến Try(2) chọn đc X[2]=2, đánh đầu
.....
đến 4==4 thì OK đã gọi xong Try(4), chọn đc X[4]=4 -> kết thúc Try(4) nhảy đến chuaxet[j]=1;
Tức là số 4 chưa xét, đến dây chính là của Try(3) chưa xử xong, lúc này chọn ngay con 4, lại nhảy đến Try(4) lúc này còn mỗi em 3 chưa chọn, selec nó luôn
[IMG]images/smilies/biggrin.png[/IMG]
Nên ở bước 2 là: 1 2 4 3
-
01-11-2010, 02:31 PM #4Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi hienclubvn
[IMG]images/smilies/biggrin.png[/IMG]
-
01-11-2010, 03:58 PM #5Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Hì, đã nói rùi mà
Mấy cái này mà nhờ người khác bảo thì khó đấy
Bạn vẽ cây nhị phân ra, biểu diễn sự chạy đệ quy của nó
với n=4 ko khó lắm để kiểm soát đâu [IMG]images/smilies/biggrin.png[/IMG]
-
03-11-2010, 05:07 PM #6Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Cảm ơn bạn nhiệt tình giúp đỡ, mình làm được rồi. Thấy cách vẽ cây nhị phân ra rất dễ hiểu [IMG]images/smilies/biggrin.png[/IMG]
Thông qua phân tích dữ liệu Google từ 86 quốc gia, mới đây, một công ty tại Anh đã công bố bảng xếp hạng kích tấc "cậu nhỏ" của các nước trên thế giới. Kết quả, hầu hết các nước xếp ở nhóm đầu của...
"Chim" của chàng trai Việt thuộc...