百战守姜山
2021-10-14 23:12
采纳率: 80%
浏览 48

求大老解答一个大一oj题

img

  • 收藏

4条回答 默认 最新

  • 广大菜鸟 2021-10-14 23:32
    已采纳
    
    #include<iostream>
    using namespace std;
    //最大公约数
    int gcd(int a, int b) {
        return b == 0 ? a : gcd(b, a % b);
    }
    int lcm(int a, int b) {//这需要a>=b
        return a * b / gcd(a, b);
    }
    
    已采纳该答案
    打赏 评论
  • 
    #include <stdio.h>
    //给定两个正整数,计算这两个数的最小公倍数
    int main()
    {
        int a,b,c,i,count,tmp,j=0;
        int arr[64];
        printf("输入几组数据?:");
        scanf("%d",&count);
        tmp = count;
        printf("输入每组的两个整数:");
        while(tmp--)
        {
            scanf("%d%d",&a,&b);
            for(i=1;i<1000*1000;i++)
            {
                if(i%a==0 && i%b==0)
                {
                    arr[j] = i;
                    j++;
                    break;
                }   
            }   
        }
    
        for(j=0;j<count;j++)
        {
            printf("%d\n",arr[j]);
        }   
    //  printf("最小公倍数为:%d\n",c);
    }
    
    
    1 打赏 评论
  • #include<stdio.h>
    
    int main() {
        int a, b;
        scanf("%d%d", &a, &b);
    
        for (int i = 1; ; i++)
            if (i%a == 0 && i%b == 0) { //寻找能同时整除a,b的整数i
                printf("%d", i);
                break;//找到,退出
            }
    
        return 0;
    }
    
    
    
    

    img

    打赏 评论
  • 
    #include <stdio.h>
    //给定两个正整数,计算这两个数的最小公倍数
    int main()
    {
        int a,b,c,i;
        printf("输入两个整数:");
        scanf("%d%d",&a,&b);
    
        for(i=1;i<1000*1000;i++)
        {   
            if(i%a==0 && i%b==0)
            {
                c = i;
                break;
            }
        }   
        printf("最小公倍数为:%d\n",c);
    }
    
    
    打赏 评论

相关推荐 更多相似问题