Код программы:
var a:array[1..27] of integer;
b, i, c, ind:integer;
begin
a[1]:= 72;
a[2]:= 76;
a[3]:= 92;
a[4]:= 45;
a[5]:= 55;
a[6]:= 82;
a[7]:= 46;
a[8]:= 39;
a[9]:= 78;
a[10]:=50;
a[11]:=34;
a[12]:=71;
a[13]:=44;
a[14]:= 92;
a[15]:= 38;
a[16]:= 51;
a[17]:= 6;
a[18]:= 45;
a[19]:= 66;
a[20]:= 78;
a[21]:= 19;
a[22]:= 17;
a[23]:= 42;
a[24]:= 36;
a[25]:= 34;
a[26]:= 91;
a[27]:= 61;
writeln('Введите число');
readln(b);
if ((b >= 0) and (b <= 100)) then begin
c:=abs(b - a[1]);
for i:=2 to 27 do begin
if(abs(b - a[i]) <=c) then begin
c:=abs(b - a[i]);
ind:=i;
end;
end;
writeln('Результат: ', a[ind]);
end
else
writeln('Ошибка, число должно быть больше 0 и меньше 100');
end.
using namespace std;
int gcd(int a, int b);
int main()
{
freopen("input.txt", "r", stdin);
freopen("output.txt", "w", stdout);
int n;
cin >> n;
for (int i = 0; i < n; ++i)
{
int a, b, c, d;
scanf("%d/%d+%d/%d=", &a, &b, &c, &d);
int num = a * d + b * c;
int den = b * d;
int cur_gcd = gcd(num, den);
num /= cur_gcd;
den /= cur_gcd;
cout << num;
if(den != 1)
cout << '/' << den;
cout << endl;
}
fclose(stdin);
fclose(stdout);
return 0;
}
int gcd(int a, int b)
{
if(a == 0)
return b;
return gcd(b % a, a);
}