题目:已知一个整数N,选出三个数,他们的最小公倍数的最大值为多少
分析题目,从整数N开始回数
若N为奇数,举例9,8,7。。。,则该数列最小公倍数为987,即N*(N-1)*(N-2)
若N为偶数,举例8,7,6,5,,此数列前三位有8和6的公约数,则从第二位开始往后延,即最大公倍数为 N*(N-1)*(N-3)
举例12,11,10,9。。。若如上例,则12和9有公约数,首位偶数为3的倍数,则往后顺延一位,即(N-1)(N-2)(N-3);
#include<stdio.h>
int main(){
int N,M;
printf("请输入一个正整数:");
scanf("%d",&N);
if(N%2==0){//判断奇数偶数
if(N%3==0){//判断偶数是否为三的倍数
M=(N-1)*(N-2)*(N-3);
}else{
M=N*(N-1)*(N-3);
}
printf("最小公倍数为:%d",M);
}else{
M=N*(N-1)*(N-2);
}
printf("最小公倍数为:%d\n",M);
return 0;
}