사용자로부터 입력받은 코드가 완전수인지 아닌지 확인하는 코드다. 스태틱함수를 사용하는데, 스태틱은 프로그램이 실행될 때 우선적으로 메모리에 띄워지는 특징을 가지고 있다. 소스를 보자면...
-
using System;
-
using System.Collections.Generic;
-
using System.Linq;
-
using System.Text;
-
-
/*
-
* 문제 내용 : 완전수를 구하는 스태틱 메서드를 선언하고 호출하자.
-
* 학습 내용 : 스태틱 메서드 선언법과 호출법을 익힌다.
-
* 힌트 내용 : 'static' 키워드가 붙은 메서드이다.
-
* */
-
-
-
namespace Console_Test
-
{
-
public class Program
-
{
-
static void Main(string[] args)
-
{
-
//완전수는 자신을 제외한 약수의 총합이 자신이 되는 수이다.
-
//수 입력을 받는다.
-
Console.WriteLine("완전수를 판별합니다. 정수를 입력하세요");
-
int iNum = int.Parse(Console.ReadLine());
-
//자신을 제외한 약수를 더한다.
-
SumDivision(iNum);
-
PrintDivision(iNum);
-
//입력받은 수와 약수의 합을 비교한다.
-
isPerfect(iNum);
-
//맞으면 출력.
-
}
-
public static int SumDivision(int n)
-
{
-
int total = 1;
-
for (int i = 2; i < n; i++)
-
{
-
if (n % i == 0)
-
{
-
total = total + i;
-
}
-
}
-
return total;
-
}
-
public static void PrintDivision(int n)
-
{
-
Console.WriteLine("해당 수의 약수를 구합니다.");
-
Console.Write("[1 ,");
-
for (int i = 2; i < n; i++)
-
{
-
if (n % i == 0)
-
{
-
Console.Write("{0} ,", i);
-
}
-
}
-
Console.WriteLine("{0}]", n);
-
}
-
public static void isPerfect(int n)
-
{
-
if (SumDivision(n) == n)
-
{
-
Console.WriteLine("입력하신 수는 완전수입니다.");
-
}
-
else
-
{
-
Console.WriteLine("입력하신 수는 완전수가 아닙니다.");
-
}
-
}
-
}
-
}
이 문제의 출처는 c#프로그래밍 기본기 익히기, 정보문화사, 25000, 조효은지음, 2010년 10월 4일 2쇄발행, ISBN 978-89-5674-452-0 이고, 풀이는 제가 직접 썼습니다. 저작권 침해가 됐다면 내리겠습니다.
'Language > C#' 카테고리의 다른 글
c#, 짝수와 홀수의 합 구하기. c#에서 class를 이용한다. (2) | 2011.12.09 |
---|---|
c# break문을 이용하여 소수(Prime)를 구하자!! (0) | 2011.12.08 |
c# 네임스페이스 사용법 - 비공개 (0) | 2011.12.05 |
c# 네임스페이스 사용법 (0) | 2011.12.05 |
C# 등차수열을 이용한 *트리(별표트리)만들기 (6) | 2011.12.05 |