C# (分数の計算1) 基本まとめ問題 - FC2ブログの有料プランで素人が雑記ブログで記事書きまくる

C# (分数の計算1) 基本まとめ問題


cccc
C# (分数の計算1)
2つの分数同士の足し算をし、その結果を分数で表示するプログラムを作りなさい。このとき、分子、分母共に最大値が10で、最小値は分母が2、分子が1とする。それらの数値をランダムに発生させ、以下のように結果を表示させなさい。ただし、計算結果は、分子と分母がきちんと約分されていることとする。また、分子が分母の数で割り切れる場合は、整数として表示するものとする。


どうも、エフロン君です。プログラミングの記事です。C#言語を使用しています。
今回はC#の問題に対して私なりの答えを示していきたいと思います。
※コードの書き方は一つではないため、悪魔で一例をここに掲載するだけです。

私のコードが正しいという確証はないので参考程度にしてください。
コードの書き方は人それぞれであるため、どれが正しくて、まとめられているのかなどは主観になってくることです。
私のコードがあなたの役に立つことを祈っています。是非参考に!

今回の問題は、
「(分数の計算1)
2つの分数同士の足し算をし、その結果を分数で表示するプログラムを作りなさい。このとき、分子、分母共に最大値が10で、最小値は分母が2、分子が1とする。それらの数値をランダムに発生させ、以下のように結果を表示させなさい。ただし、計算結果は、分子と分母がきちんと約分されていることとする。また、分子が分母の数で割り切れる場合は、整数として表示するものとする。」
これを解いていきたいと思います。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace prob8_6
{
class Bunsu
{

public int Gcm(int d1, int d2)
{
if (d1 < d2)
{
return Gcm(d2, d1);
}

while (d2 != 0)
{
int remain;
remain = d1 % d2;
d1 = d2;
d2 = remain;
}

return d1;
}

public int Lcm(int d1, int d2, int gcm)
{
return d1 * d2 / gcm;
}

public int Fraction(int bo, int si, int lcm)
{
return lcm / bo * si;
}

public string Reduction(int lcm,int sisum)
{
int tmp = sisum / lcm;
int ans = sisum % lcm;

if (ans == 0)
{
return tmp.ToString();
}
else if (tmp >= 1)
{
if (Gcm(ans, lcm) != 1)
{
int gcm = Gcm(ans, lcm);
ans /= gcm;
lcm /= gcm;
}
return tmp.ToString() + "." + ans.ToString() + "/" + lcm.ToString();
}
else
{
if (Gcm(ans, lcm) != 1)
{
int gcm = Gcm(ans, lcm);
ans /= gcm;
lcm /= gcm;
}
return ans.ToString() + "/" + lcm.ToString();
}
}
}
}


以上です。
ぜひ参考になればと思います。
解説や説明はないのでわからない部分は自力で頑張っていただく形になります。よろしくお願いいたします。
(間違っていたらすいませんorz)
それでは頑張ってください。以下、参考までに
今なら無料体験会実施中!!一度参加して自分の実力を測ってみよう!
ネットワークエンジニア始めるならネットビジョンアカデミー(NVA)
中高生向けオンラインのプログラミングスクール【TechAcademyジュニア】








関連記事

コメント

非公開コメント

エフロン君

どうも、エフロン君です。 来年から社会人になる国公立大学の大学生です!仕入れた情報や自分が学んできたうえで感じたことなど記載していくので是非見ていってください!


Twitterフォローもよろしくね

よく閲覧されている関連記事はこちらから



にほんブログ村 大学生日記ブログへ にほんブログ村 小遣いブログ 学生のお小遣い稼ぎへ

1日1回クリックして応援してくれると嬉しいです。

こちらもよろしく!
このエントリーをはてなブックマークに追加 Share on Google+

訪問者数

bitFlyerにすれば失敗しない!

bitFlyer ビットコインを始めるなら安心・安全な取引所で

GMOなら安心して取引可能!

無料で初めてリスクなし!?

オススメのポイントサイトです。
ポイントでお小遣い稼ぎ|ポイントタウン

人気No1ポイントサイト!

モッピー!お金がたまるポイントサイト

Amazonでお得にゲームを買おう