5-24約分最簡略式

1123 ワード

スコアは、 / の形式で表すことができる.プログラムを作成し、ユーザーに点数を入力してから、最も簡単な式に分けるように要求します.最も単純な式とは、分子と分母が約分できる成分を持たないことを意味する.6/12のように約1/2に分けることができる.分子が分母より大きい場合、整数または分数の形態、すなわち11/8または11/8として表現する必要はない.一方,分子分母が等しい場合,依然として1/1の分数形態で表現される.
入力形式:
入力は1行に分数を与え、分子と分母の間はスラッシュ/で区切られ、例えば12/34は34分の12を表す.分子も分母も正の整数(0を含まず、正の整数の定義が不明であれば).
ヒント:scanfのフォーマット文字列に/を加え、scanfにこのスラッシュを処理させます.
出力フォーマット:
このスコアに対応する最も単純な式を1行に出力し、フォーマットは入力と同じ、すなわち / の形式でスコアを表す.5/6に6分の5を示す.
サンプルを入力:
60/120

出力サンプル:1/2
#include 

int main(void)
{
	int a, b,i,n;
	scanf("%d/%d", &a, &b);
	for (i = 1; i <= (a > b ? b : a); i++)
	{
		if (a%i == 0 && b%i == 0)
			n = i;
	}
	if (a == b) printf("1/1
"); else printf("%d/%d", a / n, b / n); return 0; }

, 。