C# を使用して最大公約数を求める

Muhammad Zeeshan 2023年10月12日
C# を使用して最大公約数を求める

今日のチュートリアルのトピックは、C# を使用して最大公約数または GCD を見つける方法です。 まず、GCD とは何かを見てみましょう。

C# を使用して最大公約数を見つける

2つ以上のゼロ以外の整数の最大公約数は、剰余を生成せずに数値を除算する最も重要な正の整数です。 これは、最大公約数 (GCF) または最大公約数 (HCF) としても知られています。

例を使用して、C# で最大公約数を見つけてみましょう。

  • まず、次のライブラリをインポートします。
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
  • 次に、2つのパラメーターを同時に取得できる gcdFinder() 関数を作成します。
  • この関数では、剰余変数 r、値 1 は val1、値 2 は val2 を作成します。 この関数は、以下に示すように、最も割り切れる整数を見つけます。
    static int gcdFinder(int val1, int val2) {
      int r;
      while (val2 != 0) {
        r = val1 % val2;
        val1 = val2;
        val2 = r;
      }
      return val1;
    }
    
  • Main() 関数では、2つの int 変数 sh を初期化します。
  • 次に、ユーザーから入力を取得し、それを int に解析します。
    int s, h;
    Console.Write("Please Enter 1st Number: ");
    s = int.Parse(Console.ReadLine());
    Console.Write("Please Enter 2nd Number: ");
    h = int.Parse(Console.ReadLine());
    
  • 最後に、パラメーターを gcdFinder() 関数に渡して結果を出力します。
    Console.WriteLine("\n GCD of {0} , {1} is {2}", s, h, gcdFinder(s, h));
    Console.ReadLine();
    

完全なソース コード:

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

public class ExamplebyShani {
  static int gcdFinder(int val1, int val2) {
    int r;
    while (val2 != 0) {
      r = val1 % val2;
      val1 = val2;
      val2 = r;
    }
    return val1;
  }

  static int Main(string[] args) {
    int s, h;
    Console.Write("Please Enter 1st Number: ");
    s = int.Parse(Console.ReadLine());
    Console.Write("Please Enter 2nd Number: ");
    h = int.Parse(Console.ReadLine());
    Console.WriteLine("\n GCD of {0}, {1} is {2}", s, h, gcdFinder(s, h));
    Console.ReadLine();
    return 0;
  }
}

出力:

Please Enter 1st Number: 2
Please Enter 2nd Number: 3
GCD of 2, 3 is 1
Muhammad Zeeshan avatar Muhammad Zeeshan avatar

I have been working as a Flutter app developer for a year now. Firebase and SQLite have been crucial in the development of my android apps. I have experience with C#, Windows Form Based C#, C, Java, PHP on WampServer, and HTML/CSS on MYSQL, and I have authored articles on their theory and issue solving. I'm a senior in an undergraduate program for a bachelor's degree in Information Technology.

LinkedIn

関連記事 - Csharp Math