banner

[Rule] Rules  [Home] Main Forum  [Portal] Portal  
[Members] Member Listing  [Statistics] Statistics  [Search] Search  [Reading Room] Reading Room 
[Register] Register  
[Login] Loginhttp  | https  ]
 
Forum Index Thảo luận hệ điều hành Windows Hic , ai check giup' 1 đoạn bài tập C!!!  XML
  [Programming]   Hic , ai check giup' 1 đoạn bài tập C!!! 05/04/2007 15:14:40 (+0700) | #1 | 51803
[Avatar]
steel_dragon
Member

[Minus]    0    [Plus]
Joined: 02/07/2006 14:10:06
Messages: 17
Offline
[Profile] [PM]
Em mới học C, ai đó check giúp bài này, nó ko chạy !!
#include <stdio.h>
int USCLN (int n, int m)
{
while (n!=0 && m!=0 )
if (n>m ) n-=m;
else m-=n;
if (n==0 )
return m;
else
return n;


}
int BSCNN (int n, int m)
{
return n*m / USCLN(n,m);
}
/*tim uoc so chung ????*/
int UC(int n, int m),i
{
for (i==1,i<=USCLN(n,m),i++)
if (USCLN(n,m)%i=0) USCLN(n,m)/i;
}

main()
{
int n,m;
printf("\nNhap vao 2 so nguyen duong : "); scanf ("%u%u",&n,&m);
printf("\nUSCLN cua %u va %u la %u" ,n,m,USCLN(n,m));
if (USCLN(n,m)==1) printf ("\nDay la 2 so nguyen to cung nhau")
else ("\n Uoc chung cua %d va %d la: %d",n,m,UC(n,m)) ;
printf("\nBSCNN cua %u va %u la %u", n,m,BSCNN(n,m));

}
[Up] [Print Copy]
  [Question]   Hic , ai check giup' !!! 05/04/2007 15:34:08 (+0700) | #2 | 51808
[Avatar]
learn2hack
Elite Member

[Minus]    0    [Plus]
Joined: 29/06/2006 16:32:37
Messages: 825
Offline
[Profile] [PM] [WWW]
Bạn viết

/*tim uoc so chung ????*/
int UC(int n, int m),i /* chữ i này để làm gì vậy? */
{
for (i==1,i<=USCLN(n,m),i++)
if (USCLN(n,m)%i=0) USCLN(n,m)/i;
}
 

thì làm sao chạy được
Blog: http://hontap.blogspot.com
Tải phần mềm miễn phí: http://www.taiphanmem.org
[Up] [Print Copy]
  [Question]   Hic , ai check giup' !!! 06/04/2007 07:42:20 (+0700) | #3 | 51922
[Avatar]
steel_dragon
Member

[Minus]    0    [Plus]
Joined: 02/07/2006 14:10:06
Messages: 17
Offline
[Profile] [PM]
Đoạn đó ko biết viết thế nào cho phải, anh có thể viết lại nó ko??, bỏ i vẫn ko chạy ????
[Up] [Print Copy]
  [Question]   Hic , ai check giup' !!! 06/04/2007 08:07:54 (+0700) | #4 | 51952
[Avatar]
learn2hack
Elite Member

[Minus]    0    [Plus]
Joined: 29/06/2006 16:32:37
Messages: 825
Offline
[Profile] [PM] [WWW]
Nói thật ra thì cái đoạn đó nên bỏ hẳn đi, vì mình ko biết nó có tác dụng gì trong bài của cậu?
Có lẽ cậu muốn liệt kê tất cả các ước chung của m, n? Ước chung của m, n thì có thể có rất nhiều, vậy mà trong chương trình chính của cậu chỉ in ra 1. Thêm nữa là trong hàm ước chung chẳng có lệnh nào để in các ước ra cả.

Vậy thì bạn nên:
1. Xóa hàm ước chung, và bỏ lệnh liệt kê ước chung của m, n trong chương trình chính.
2. Sửa lại hàm ước chung (nhớ có câu lệnh in trong hàm) và sửa lại câu lệnh tương ứng trong chương trình chính.

Blog: http://hontap.blogspot.com
Tải phần mềm miễn phí: http://www.taiphanmem.org
[Up] [Print Copy]
  [Question]   Hic , ai check giup' !!! 06/04/2007 09:43:17 (+0700) | #5 | 51980
[Avatar]
steel_dragon
Member

[Minus]    0    [Plus]
Joined: 02/07/2006 14:10:06
Messages: 17
Offline
[Profile] [PM]
Ờ , chính xác yêu cầu là in ra tất cả các ước chung !!!, nhưng ko biết làm thế nào , đoạn đó là để in ra tất cả các ước, nhờ anh chỉnh giúp để in ra tất cả các ước !!Cảm ơn !!
[Up] [Print Copy]
  [Question]   Hic , ai check giup' !!! 06/04/2007 09:55:36 (+0700) | #6 | 51989
[Avatar]
steel_dragon
Member

[Minus]    0    [Plus]
Joined: 02/07/2006 14:10:06
Messages: 17
Offline
[Profile] [PM]
Đoạn yêu cầu in ra các ước chung :
if (USCLN(n,m)==1) printf ("\n Day la hai so nguyen to cung nhau")
else printf ("\n Cac uoc chung cua %d va %d la %",n,m,UC(n,m));--->chắc là chỉ in đc 1 giá trị ước chung thôi phải không ???

[Up] [Print Copy]
  [Question]   Hic , ai check giup' !!! 06/04/2007 12:20:14 (+0700) | #7 | 52016
[Avatar]
delua
Locked

[Minus]    0    [Plus]
Joined: 28/12/2006 00:48:39
Messages: 102
Offline
[Profile] [PM]

steel_dragon wrote:
Ờ , chính xác yêu cầu là in ra tất cả các ước chung !!!, nhưng ko biết làm thế nào , đoạn đó là để in ra tất cả các ước, nhờ anh chỉnh giúp để in ra tất cả các ước !!Cảm ơn !! 


Giá trị lớn nhất mà ước chung của 2 số đó đạt đến là bằng chính giá trị của số nhỏ.
Cho nên cách trực quan nhất là chạy vòng lặp ( i chạy ) từ 2 đến số nhỏ ( muốn chạy 1 cũng được,vì tất nhiên 1 là ước chung rồi )
Rồi xét 2 điều kiện cùng lúc (&&),nếu 2 số đó cùng chia hết .Thì in ra i .

Thân !
[Up] [Print Copy]
  [Question]   Re: Hic , ai check giup' !!! 06/04/2007 19:31:46 (+0700) | #8 | 52039
[Avatar]
conmale
Administrator

Joined: 07/05/2004 23:43:15
Messages: 9353
Location: down under
Offline
[Profile] [PM]
Đọc lại nội quy và đặt lại tiêu đề.
What bringing us together is stronger than what pulling us apart.
[Up] [Print Copy]
  [Question]   Hic , ai check giup' !!! 07/04/2007 10:17:03 (+0700) | #9 | 52188
[Avatar]
learn2hack
Elite Member

[Minus]    0    [Plus]
Joined: 29/06/2006 16:32:37
Messages: 825
Offline
[Profile] [PM] [WWW]
Ước chung của 2 số thì có nhiều mà bạn dùng như thế thì ... Bạn có hiểu ước chung là gì không?

Để in tất cả các ước chung thì có thể làm thế này:
Code:
int UC(int n, int m)
{
  int t;

  printf("Cac uoc so chung cua %d, %d la:\n", n, m);

  t = USCLN(n, m);
  for (int i = 2; i <= int(pow(t, 0.5)); i++)
    if (t % i == 0) printf("%5d%5d", i, t/i);
}


Trong chương trình chính của bạn, sửa 1 tí:
Code:
if (USCLN(n, m) == 1) printf("%n, %m nguyen to cung nhau", n, m)
else UC(n, m);

Chúc bạn vui vẻ.
Blog: http://hontap.blogspot.com
Tải phần mềm miễn phí: http://www.taiphanmem.org
[Up] [Print Copy]
  [Question]   Hic , ai check giup' 1 đoạn bài tập C!!! 07/04/2007 11:39:44 (+0700) | #10 | 52212
[Avatar]
steel_dragon
Member

[Minus]    0    [Plus]
Joined: 02/07/2006 14:10:06
Messages: 17
Offline
[Profile] [PM]
Cảm ơn anh nhiều!!! em làm đc rồi !!!À ước chung của 2 số a,b là những số mà a,b đều chia hết cho nó --> phải không anh !!Bài của em hơi khác anh 1 chút !!
#include <stdio.h>
int USCLN (int n, int m)
{
while (n!=0 && m!=0 )
if (n>m ) n=n-m;
else m=m-n;
if (n==0 )
return m;
else
return n;
}
int BSCNN (int n, int m)
{
return n*m / USCLN(n,m);
}

main()
{
int n,m,i;
printf("\nNhap vao 2 so nguyen duong : "); scanf ("%u%u",&n,&m);
printf("\nUSCLN cua %u va %u la %u" ,n,m,USCLN(n,m));
if (USCLN(n,m)==1) printf ("\nDay la 2 so nguyen to cung nhau");

else
for (i=1;i<=USCLN(n,m);i++) if (USCLN(n,m)%i==0)
printf ("\n Cac uoc chung cua %d va %d la %d", n,m, USCLN(n,m)/i);
printf ("\nBSCNN cua %u va %u la : %u", n,m,BSCNN(n,m));
}
[Up] [Print Copy]
  [Question]   Hic , ai check giup' 1 đoạn bài tập C!!! 07/04/2007 12:27:29 (+0700) | #11 | 52223
[Avatar]
steel_dragon
Member

[Minus]    0    [Plus]
Joined: 02/07/2006 14:10:06
Messages: 17
Offline
[Profile] [PM]
@conmale :đây đúng là 1 bài quá căn bản, quá dễ........đối với những người ...đã học và rất giỏi ..như anh(và rất n người khác), em cũng đã đọc nội quy trc khi post bài và đọc 1 lần nữa sau khi có reply của anh,em cũng đã sửa tiêu đề,và em xin nói rõ: em ko hề "nhờ anh giải giúp bài toán" hay " nhờ tìm code hộ" , em chỉ nhờ kiểm tra hộ mà thôi, bài em đã làm rồi, code(coi là code đc chưa nhỉ) em đã tự viết, chỉ có 1 đoạn nó bị sai và em nhờ ai đó kiểm tra hộ và sửa giúp
Nếu xem xét cẩn thận ra thì cũng có thể coi em post sai chỗ, hay em đã tìm mãi mà ko biết post vào chỗ nào , hay nói đúng hơn là không có chỗ cho những bài kiểu con con, cơ bản như thế này, và chính xác hơn thì không có chỗ cho những người (quá ư) non kem như em , nếu vậy em cũng có đề nghị anh 1 điều , anh thêm vào cái banner 1 dòng chú ý, "ko cho gà vào đây !", vậy thôi !
[Up] [Print Copy]
  [Question]   Hic , ai check giup' 1 đoạn bài tập C!!! 07/04/2007 15:51:17 (+0700) | #12 | 52240
[Avatar]
learn2hack
Elite Member

[Minus]    0    [Plus]
Joined: 29/06/2006 16:32:37
Messages: 825
Offline
[Profile] [PM] [WWW]
Bạn hiểu ước chung vậy là đúng rồi. Cố rèn luyện thêm kỹ năng lập trình nhé.

PS: Anh conmale chỉ có ý muốn bạn đặt lại tiêu đề cho phù hợp với nội dung bài viết thôi, tiêu đề lúc trước không rõ ràng và không bao hàm được nội dung bạn muốn nói. Chỉ có vậy thôi, chứ không có chuyện "gà hay không gà" gì cả.

Chúc sinh hoạt thoải mái.
Blog: http://hontap.blogspot.com
Tải phần mềm miễn phí: http://www.taiphanmem.org
[Up] [Print Copy]
[digg] [delicious] [google] [yahoo] [technorati] [reddit] [stumbleupon]
Go to: 
 Users currently in here 
1 Anonymous

Powered by JForum - Extended by HVAOnline
 hvaonline.net  |  hvaforum.net  |  hvazone.net  |  hvanews.net  |  vnhacker.org
1999 - 2013 © v2012|0504|218|