Вопрос задан 15.05.2020 в 21:49. Предмет Информатика. Спрашивает Цаллагова Сабина.

Даны две дроби найти их сумму . (Паскаль)пожалуйста, срочно надо!

0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Белая Екатерина.
Var
  n1, d1, n2, d2, m, n, d, nn, dd, nod: integer;
  r: double;

begin
  Writeln('Нахождение суммы двух простых дробей.');
  Write('Введите через пробел числитель и знаменатель первой дроби: ');
  Readln(n1, d1);
  Write('Введите через пробел числитель и знаменатель второй дроби: ');
  Readln(n2, d2);
  {Находим результат, как простую дробь}
  n := n1 * d2 + n2 * d1;
  d := d1 * d2;
  r := n / d;
  {Если дробь неправильная, надо исключить целое число}
  if n > d then begin m := n div d; n := n mod d end
  else if n = d then begin m := 1; n := 0; d := 1 end
  else m := 0;
  {Возможно числитель и знаменатель дроби могут быть частично сокращены}
  if n <> 0 then begin
    {ищем НОД числителя и знаменателя и делим их на него}
    nn := n; dd := d;
    while nn <> dd do
      if nn > dd then nn := nn - dd else dd := dd - nn;
    nod := nn;
    if nod <> 1 then begin n := n div nod; d := d div nod end;
  end;
  Write(n1, '/', d1, ' + ', n2, '/', d2, ' = ');
  if m > 0 then
    if n <> 0 then Writeln(m, ' ', n, '/', d, ' = ', r)
    else Writeln(m)
  else
    Writeln(n, '/', d, ' = ', r)
end.

Тестовые примеры:

Нахождение суммы двух простых дробей.
Введите через пробел числитель и знаменатель первой дроби: 25 5
Введите через пробел числитель и знаменатель второй дроби: 64 256
25/5 + 64/256 = 5 1/4 = 5.25

Нахождение суммы двух простых дробей.
Введите через пробел числитель и знаменатель первой дроби: 8 19
Введите через пробел числитель и знаменатель второй дроби: 154 221
8/19 + 154/221 = 1 495/4199 = 1.11788521076447

Нахождение суммы двух простых дробей.
Введите через пробел числитель и знаменатель первой дроби: 5 7
Введите через пробел числитель и знаменатель второй дроби: 12 42
5/7 + 12/42 = 1

Нахождение суммы двух простых дробей.
Введите через пробел числитель и знаменатель первой дроби: 1 5
Введите через пробел числитель и знаменатель второй дроби: 3 11
1/5 + 3/11 = 26/55 = 0.472727272727273





0 0
Отвечает Маслова Анастасия.
Program DROB;
uses crt;
var
a, b, c, d: integer;
s: real;
   begin
   Write('Введите числитель a1 = ');
   Readln(a);
   Write('Введите знаменатель b1 = ');
   Readln(b);
   Writeln;
   Write('Введите числитель с2 = ');
   Readln(c);
   Write('Введите знаменатель d2 = ');
   Readln(d);
   S:=(a*d+b*c)/(b*d);
   Writeln;
   write('Сумма дробей s = ', s:0:3);
  
   readln;
end.    

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос