请哪位好心人帮我找找错
这是有关求最大公约数最小公倍数最笨但最易理解的方法,程序编译成功,但调试时若输两不能整除的数(如8,12)则会出错,请各位高手指点一下,新手上路,请勿见笑.多谢多谢!!!#include "stdafx.h"
#include<iostream>
using namespace std;
int fun1(int i,int j)
{
int temp;
if(i<j)
{temp =j;j=i;i=temp;};
int k;
for(k=j;k>1;j--)
{if ((i%k==0)&&(j%k==0))
return k;} //错误很可能在此处,但不知怎么改
return 1;
}
int _tmain(int argc, _TCHAR* argv[])
{cout<<"enter two number:";
int x,y;
cin>>x>>y;
cout<<"最大公约数是:"<<fun1(x,y)<<endl;
cout<<"最小公倍数是:"<<x*y/fun1(x,y);
return 0;
}