2013-10-05 3 views
-5

기본적으로 3 자리 숫자를 사용하고 다음을 수행하는 C# 콘솔 응용 프로그램을 작성해야합니다. 1. 모든 3 자리 합계 (예 : 숫자가 123이면 6) 2. "리 팩터"와 같은 숫자 : 수백, 수십, 개. 예 : 365 300 + 60 + 5 = 365 3. 몇 가지 작업이있는 콘솔 응용

큰 도움이 인식 번호를 역방향. 나는 귀하의 질문하지만 해킹에 응답 할 위험을 감수 느낌

+4

시도해 보셨습니까? –

+3

이것은 숙제와 매우 흡사합니다. 따라서 숙제를하기 위해 태그를 지정하거나 그렇지 않은 이유를 설명해야합니다. 그래서 우리는 어느 경우 에나 적절한 도움을 줄 수 있습니다. 어느 쪽이든, 당신은 스스로 해결하려고했던 것을 포함시켜야합니다. – Guffa

+0

'%'(예 : 256 % 100)를 사용하여 세 자리의 합계를 계산하려고 시도했지만 출력이 2가되지만 5를 얻고 100 대신 10을 사용하려면 작동하지 않습니다. . –

답변

0

.. 그런

"리팩토링"자신의 자리 : 수백, 수만, 사람. 3 자리의

int i = 123, reverse = 0; 
while (i > 0) 
{ 
    reverse = (reverse * 10) + (i % 10); 
    i /= 10; 
} 
Console.WriteLine(reverse); //321 

합 (예. 숫자 인 경우 (123)는 다음 6 예정)

int i = 123, total = 0; 
while (i > 0) 
{ 
    total += i % 10; 
    i /= 10; 
} 
Console.WriteLine(total); //6 

감사하지만 내가 말 무슨 뜻인지 아니다 '리팩터링'. 예를 들어, 입력 는 389 그것은이 인쇄 할 수 있습니다 : 수백 : 3 수만 : 8 이여 : 9

int i = 389, houndreds = 0, tens = 0, ones = 0; 

ones = i%10; 
i /= 10; 
tens = i%10; 
i /= 10; 
houndreds = i%10; 

Console.WriteLine("Hundreds: {0} Tens: {1} Ones: {2}", houndreds, tens, ones); //Hundreds: 3 Tens: 8 Ones: 9 
+0

고마워요.하지만 '리팩토링 (refactor)'이라고 말하면 의미가 없습니다. 예를 들어, 입력 389의 경우 다음과 같이 인쇄됩니다. 수백 : 3 수십 : 8 다음 : 9 –

+0

@KyleButler 내 답이 업데이트되었습니다. 다음 번에는 문제 해결을 위해 노력하십시오. –

0

이 당신이 리팩터링 부분에 대한 3 자리 숫자가 있다고 가정된다

static void Main(string[] args) 
    { 
     int num = 365; 
     char[] digits = num.ToString().ToCharArray(); 

     Console.WriteLine(digits.Sum(x=>char.GetNumericValue(x))); 
     Console.WriteLine(new string(digits.Reverse().ToArray())); 
     Console.WriteLine(string.Format("Hundreds: {0} Tens: {1} Ones: {2}", digits[0], digits[1], digits[2])); 

     Console.Read(); 
    }