Bài tách số: Viết chương trình tách só nguyên dương A (A<200) thành tổng của hai số nguyên dương x và y sao cho UCLN d của x và y là lớn nhất trong cá

Bài tách số:
Viết chương trình tách só nguyên dương A (A<200) thành tổng của hai số nguyên dương x và y sao cho UCLN d của x và y là lớn nhất trong các cách có đc YÊU CÂU Dữ liệu vào: File text Tachso.INP chỉ có 1 dòng chứa số ng dương A. Dữ liệu ra: File text Tachso.OUT gồm 2 dòng: -Dòng 1: Ghi Số ng dương a Dòng 2 ghi 3 số nguyên dương x,y,d mỗi số cách nhau 1 khoảng trắng PLS mình đang cần gấp

0 bình luận về “Bài tách số: Viết chương trình tách só nguyên dương A (A<200) thành tổng của hai số nguyên dương x và y sao cho UCLN d của x và y là lớn nhất trong cá”

  1. #include<bits/stdc++.h>
    using namespace std;
    int ucln(int a, int b)
    {
        while (a*b != 0){
            if (a > b){
                a %= b;
            }else{
                b %= a;
            }
        }
        return a + b;
    }
    int main()
    {
        int x,y,A,d=0,m,n;
        cout<<“Nhap A:”;
        cin>>A;
        for(int i=1;i<A;i++){
            x=i;
            y=A-x;
            if(ucln(x,y)>d){
                m=x;
                n=y;
                d=ucln(x,y);
            }
        }
        cout<<A<<“\n”<<m<<” “<<n<< ” “<<d;
        //samon247
        return 0;
    }

    //bạn tự chuyển thành in out file nhé :))

    Bình luận
  2. uses crt;
    var  x,y,n,d,i:longint;
    begin
    clrscr;
    repeat
       write(‘n=’);readln(n);
    until n<200;
    If n mod 2=0 then begin x:=n div 2; y:=n div 2; end;
    If n mod 2=1 then begin x:=n div 2+1; y:=n div 2; end;
    For i:=1 to x do If(x mod i=0)and(y mod i=0)then d:=i;
    Writeln(x);
    Writeln(y);
    Writeln(d);
    readln
    end.

    Bình luận

Viết một bình luận