该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
我也新手。这题想的头都大了,还是老师出的思路...
static void Main()
{
/*用户输入两个正整数m和n,求其最大公约数和最小公倍数。
如: 2 和 3 的最大公约数为1 ,最小公倍数位 6
4 和 16 的最大公约数为4 ,最小公倍数位 16
*/
int m, n;
Console.WriteLine("输入两个整数");
Console.Write("第一个数字 = ");
m = int.Parse(Console .ReadLine());
Console.Write("第二个数字 = ");
n = int.Parse(Console .ReadLine());
for (int a = m < n ? m : n; a >=1; a--) //循环取值范围
{
if (n % a == 0 && m % a == 0) //输出条件
{
Console.WriteLine("{0}是{1}和{2}的最大公约数。", a, m, n); break;//结束
}
}
for (int a = m > n ? m : n; a <= m * n; a++)
{
if (a % m == 0 && a % n == 0)
{
Console.WriteLine("{0}是{1}和{2}的最小公倍数。", a, m, n); break;
}
}