質問: Gcm(lcm, rdsum); // 分子と分母の最大公約数を算出 lcm /= gcm; // 分母を最大公約数で割る rdsum /= gcm; // 分子を最大公約数で割る } return rdsum.ToString() + " / " + lcm.ToString(); } } } } ``` ### 補足情報(言語/FW/ツール等のバージョンなど) C#を触り始めてちょうど1週間くらいになる初心者です。 この部分の処理はこうすればもっと少ない量で書けます。やこれを追加すればこんな面倒なことする必要ない等アドバイスを頂けると非常に幸いです。 よろしくお願いいたします。
回答: 今時は、文字列連結は ``` Console.WriteLine($"1つ目の分数→{numer1}/{denom1}"); ``` が便利ですね。 {}で囲まれたところで計算してもいいので、それだけで見通しは良くなりますね。 ``` Console.WriteLine($"最大公約数は {x.Gcm(denom1, denom2)} 最小公倍数は {x.Lcm(denom1, denom2, gcm)}"); ``` こんな感じ。 class名 publicはやらないほうがいいかと。@は気持ち悪い。こういう特殊な記法は、絶対その言葉を使わないとだめなときだけです。今回は絶対使わないとだめなときではありません。 あと ``` public int Lcm(int d1, int d2, int gcm) { return d1 * d2 / gcm; } ``` は ``` public int Lcm(int d1, int d2, int gcm)=> d1 * d2 / gcm; ``` こう書けますね。