分数の足し算をさせるプログラムが分かりません。どなたか分かりませんか?
分数の足し算をさせるプログラムが分かりません。
C言語の問題で分数の足し算までは一応できるんですが、答えがでたときに整数で出すやり方と約分して表す方法が分かりません。
どなたか知恵を貸してくれませんか?
ユーザから4つの整数を入力し、はじめに入力された2個の整数と後に入力された2個の整数を分数と考え、その分数の和を表示するプログラムを作成せよ。
例えば、「3」「4」「5」「6」と入力されたときは、3/4 + 5/6を計算する。
そのプログラム内では分数の和を計算する関数を作成する。
さらに、
約分を行う関数を 再帰呼び出しを利用して作成する。
void yakubun(int *a1, int *a2)
例えば、以下の場合1/2と表示される。
int i=10,j=20;
yakubun(&i,&j);
printf(“%d / %d”, i, j);
ちなみにここまでできました↓
#include<stdio.h>
void bunsu_tasizan(int a1,int a2,int b1,int b2, int *c1,int *c2 )
{
*c1=(a1*b2)+(b1*a2);
*c2=(a2*b2);
}
int main()
{
int x1,x2,y1,y2,z1,z2;
printf("整数を入力してください");
scanf("%d",&x1);
scanf("%d",&x2);
scanf("%d",&y1);
scanf("%d",&y2);
if(x2==0||y2==0||x2==0&&y2==0)
printf("0以外を入力してください");
else{
bunsu_tasizan(x1,x2,y1,y2,&z1,&z2);
printf("%d/%d",z1,z2);}
return (0);
}
お礼
ありがとうございました。