728x90
728x170
▶ MainForm.cs
using System;
using System.Windows.Forms;
namespace TestProject
{
/// <summary>
/// 메인 폼
/// </summary>
public partial class MainForm : Form
{
//////////////////////////////////////////////////////////////////////////////////////////////////// Constructor
////////////////////////////////////////////////////////////////////////////////////////// Public
#region 생성자 - MainForm()
/// <summary>
/// 생성자
/// </summary>
public MainForm()
{
InitializeComponent();
#region 이벤트를 설정한다.
this.btnGo.Click += runButton_Click;
#endregion
}
#endregion
//////////////////////////////////////////////////////////////////////////////////////////////////// Method
////////////////////////////////////////////////////////////////////////////////////////// Private
//////////////////////////////////////////////////////////////////////////////// Event
#region 실행 버튼 클릭시 처리하기 - runButton_Click(sender, e)
/// <summary>
/// 실행 버튼 클릭시 처리하기
/// </summary>
/// <param name="sender">이벤트 발생자</param>
/// <param name="e">이벤트 인자</param>
private void runButton_Click(object sender, EventArgs e)
{
long a = long.Parse(this.txtA.Text);
long b = long.Parse(this.txtB.Text);
this.gcdTextBox.Text = GetGreatestCommonDivisor(a, b).ToString();
this.lcmTextBox.Text = GetLeastCommonMultiple(a, b).ToString();
}
#endregion
//////////////////////////////////////////////////////////////////////////////// Function
#region 최대 공약수 구하기 - GetGreatestCommonDivisor(a, b)
/// <summary>
/// 최대 공약수 구하기
/// </summary>
/// <param name="a">A</param>
/// <param name="b">B</param>
/// <returns>최대 공약수</returns>
private long GetGreatestCommonDivisor(long a, long b)
{
a = Math.Abs(a);
b = Math.Abs(b);
for(; ; )
{
long remainder = a % b;
if(remainder == 0)
{
return b;
}
a = b;
b = remainder;
};
}
#endregion
#region 최소 공배수 구하기 - GetLeastCommonMultiple(a, b)
/// <summary>
/// 최소 공배수 구하기
/// </summary>
/// <param name="a">A</param>
/// <param name="b">B</param>
/// <returns>최소 공배수</returns>
private long GetLeastCommonMultiple(long a, long b)
{
return a * b / GetGreatestCommonDivisor(a, b);
}
#endregion
}
}
728x90
그리드형(광고전용)
'C# > Common' 카테고리의 다른 글
[C#/COMMON] 에라토스테네스의 체(Sieve of Eratosthenes)를 사용해 소수 구하기 (0) | 2018.12.09 |
---|---|
[C#/COMMON] TimeZoneInfo 클래스 : GetSystemTimeZones 정적 메소드를 사용해 표준 시간대 나열하기 (0) | 2018.12.08 |
[C#/COMMON] 스레드 안전 우선 순위 큐 사용하기 (0) | 2018.12.07 |
[C#/COMMON] 스레드 안전 리스트/리스트 큐 사용하기 (0) | 2018.12.06 |
[C#/COMMON] 경로 결합하기 (0) | 2018.12.05 |
[C#/COMMON] 조합(Combination) 구하기 (0) | 2018.12.05 |
[C#/COMMON] 순열(Permutation) 구하기 (0) | 2018.12.04 |
[C#/COMMON] Thread 클래스 : 반복 작업자 사용하기 (0) | 2018.12.04 |
[C#/COMMON] WMI를 사용해 운영 체제 정보 구하기 (0) | 2018.12.03 |
[C#/COMMON] WMI를 이용해 프린터 정보 구하기 (0) | 2018.12.02 |