Найти сумму в виде правильной несократимой дроби с выделенной целой частью - PascalABC.NET

Узнай цену своей работы

Формулировка задачи:

Даны натуральные числа a , b , c , d . Найти сумму (a/b)+(c/d) в виде правильной несократимой дроби с выделенной целой частью. Пример

Решение задачи: «Найти сумму в виде правильной несократимой дроби с выделенной целой частью»

textual
Листинг программы
  1. var a,b,c,d,p,q,t,x,y,nd:integer;
  2. begin
  3. repeat
  4. writeln('Введите числители и знаменатели двух дробей, натуральные числа');
  5. readln(a,b,c,d);
  6. until(a>0)and(b>0)and(c>0)and(d>0);
  7. //суммируем
  8. p:=a*d+b*c;
  9. q:=b*d;
  10. //находим НОД
  11. x:=p;
  12. y:=q;
  13. while x<>y do
  14. if x>y then x:=x-y else y:=y-x;
  15. nd:=x;
  16. //сокращаем
  17. p:=p div nd;
  18. q:=q div nd;
  19. //определяем целую часть и новый числитель
  20. t:=p div q;
  21. p:=p mod q;
  22. //выводим результат
  23. write(a,'/',b,'+',c,'/',d,'=');
  24. if t=0 then write(p,'/',q)
  25. else write(t,' ',p,'/',q);
  26. end.

Объяснение кода листинга программы

  1. Переменные a, b, c, d, p, q, t, x, y, nd инициализируются как целочисленные значения.
  2. Программа повторяет запрос на ввод числителей и знаменателей двух дробей до тех пор, пока эти числа не будут положительными.
  3. Затем происходит суммирование двух дробей, и результат сохраняется в переменных p и q.
  4. Следующий этап - нахождение НОДа (наименьшего общего делителя) для чисел p и q, и сохранение этого значения в переменной nd.
  5. Далее происходит сокращение суммы дробей путем деления на НОД, и результаты сохраняются в переменных p и q.
  6. Затем определяется целая часть суммы и новый числитель, и результаты сохраняются в переменных t и p соответственно.
  7. Наконец, программа выводит результат в виде несократимой дроби в формате a/b+c/d=t/nd, где a, b, c, d, t и nd - это значения переменных a, b, c, d, t и nd соответственно. Если t=0, то вместо t/nd выводится p/q. Если t не равно нулю, то выводится t, пробел, p/q.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.273 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы