Программа должна найти HCF для m и n, где m меньше n, используя рекурсивную функцию Hifact (int m, int n). Часть Hifact работает, но цикл while не работает, хотялогично.
public class test{
public static void main(int m,int n)//m<n
{
while(m%Hifact(m,n)!=0)//reduces value of m till m%Hifact(m,n)==0
{
--m;
}
System.out.println(m);
}
public static int Hifact(int m,int n)//returns largest number <= m which completely divides n
{
if(n%m==0)
{
return m;
}
else
{
return Hifact(m-1,n);
}
}
}