Написать структуру дробные числа числителя (целое число) и знаменателя >0 - C (СИ)

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

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

Помогите пожалуйста решить. Написать структуру дробные числа числителя (целое число) и знаменателя >0. И сделать все операции с ними +, -,*, /.

Решение задачи: «Написать структуру дробные числа числителя (целое число) и знаменателя >0»

textual
Листинг программы
typedef struct
{
 int numerator;
 int denominator;
} fraction;
 
 
void add_fraction(fraction *result, fraction *a, fraction *b)
{
 int m,n;
 
 m=a->numerator*b->denominator + b->numerator*a->denominator;
 n=a->denominator*b->denominator;
 
 result->numerator=m;
 result->denominator=n;
}
 
void sub_fraction(fraction *result, fraction *a, fraction *b)
{ fraction b1;
 
    b1.numerator=-b->numerator;
    b1.denominator=b->denominator;
    add_fraction(result, a, &b1);
}
 
void mult_fraction(fraction *result, fraction *a, fraction *b)
{
 int m,n;
 
 m=a->numerator*b->numerator;
 n=a->denominator*b->denominator;
 
 result->numerator=m;
 result->denominator=n;
}
 
void div_fraction(fraction *result, fraction *a, fraction *b)
{ fraction b1;
 
    b1.numerator=b->denominator;
    b1.denominator=b->numerator;
    mult_fraction(result, a, &b1);
}

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

  1. Структура дробного числа: числитель (целое число) и знаменатель (целое число больше 0).
  2. В функции add_fraction производится сложение двух дробей.
  3. В функции sub_fraction производится вычитание двух дробей.
  4. В функции mult_fraction производится умножение двух дробей.
  5. В функции div_fraction производится деление двух дробей.
  6. В функции sub_fraction создается дополнительная дробь b1, которая используется как аргумент для функции add_fraction.
  7. В функции div_fraction создается дополнительная дробь b1, которая используется как аргумент для функции mult_fraction.
  8. Значение переменной m в функции add_fraction равно произведению числителей или числителя и знаменателя, или знаменателя и числителя.
  9. Значение переменной n в функции add_fraction равно произведению знаменателей.
  10. Значение переменной m в функции mult_fraction равно произведению числителей.
  11. Значение переменной n в функции mult_fraction равно произведению знаменателей.
  12. Значение переменной m в функции div_fraction равно произведению числителя и знаменателя.
  13. Значение переменной n в функции div_fraction равно произведению знаменателя и числителя.
  14. Значение переменной b1 в функции sub_fraction равно исходной дроби b, но со знаком минус перед числителем.
  15. Значение переменной b1 в функции div_fraction равно исходной дроби b, но со знаком деления перед числителем.
  16. Аргумент a передается в функцию add_fraction по ссылке.
  17. Аргумент b передается в функцию add_fraction по ссылке.
  18. Аргумент b передается в функцию sub_fraction по ссылке.
  19. Аргумент b передается в функцию div_fraction по ссылке.
  20. Аргумент b1 передается в функцию div_fraction по ссылке.

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


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

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

9   голосов , оценка 3.889 из 5
Похожие ответы