2012-10-24 2 views
1

내 수업에 점수 계산기를 만드는 데 도움이 필요합니다. 점수 입력은 미리 설정할 수 없으며 카운트 수를 늘리면서 이전 입력을 모두 합산해야합니다.목록을 작성하기 전에 입력을 제거하지 않고 여러 사용자 입력을 허용하는 데 도움이 필요합니다.

예를 들어 입력란에 23을 입력하고 입력을 누른 다음 45를 입력하십시오. 23을 유지하고 45에 추가하려면 내 프로그램이 필요하며 사용자가 숫자를 입력하는 한이를 반복해야합니다.

나는 그것이 컬렉션이 필요하다는 것을 알고 있으며, 나는 그것의 기초가있다. 나는 단지 입력을 저장하고 새로운 것에 추가하고 그 총을 다음 입력에 추가하는 코드를 필요로한다. . 이 방법 중 하나입니다

private void tbEntry_KeyDown(object sender, KeyEventArgs e) 
{ 
    Decimal entry; 

    if (e.KeyCode == Keys.Enter) 
    { 
     if (Decimal.TryParse(tbEntry.Text, out entry)) 
     { 
      score.Add(entry); 
     } 

     tbResult.Text = score.Sum(s => s).ToString(); 
     tbEntry.Text = string.Empty; 
    } 
} 

:

List<decimal> score = new List<decimal>(); 
     score.Add(scoreInput); 
     decimal scoreTotal = 0; 
     decimal scoreHolder = 0; 
     foreach (decimal d in score) 
     { 

      scoreTotal = scoreHolder + scoreInput; 
      scoreHolder = scoreInput; 
      scoreInput = 0; 
      txtTotal.Text = scoreTotal.ToString(""); 
      txtCount.Text = score.Count.ToString(""); 
      txtScore.Clear(); 
      txtScore.Focus(); 
     } 
+0

당신이 변수'sum'를 선언 할 수

private List<decimal> score = new List<decimal>(); 

건배? –

+2

지금까지 무엇을 가지고 계십니까? 약간의 코드를 게시 할 수 있습니까? –

+3

Web Forms, Windows Forms, 콘솔 또는 다른 유형의 응용 프로그램과 같은 자세한 정보를 제공해야합니다. 또한 이미 시도한 것에 대한 코드를 보여줘야합니다. 사람들은 자문을 제공하고자하지만 기꺼이 숙제를하고있는 것처럼 느끼고 싶지 않습니다. – JamieSee

답변

0

단순히 KeyDown 이벤트에 대한 이벤트 처리기를 추가하고 다음과 같은 코드를 사용

이이 문제를 해결하려고 시도한 것입니다 당신이 원하는 것을하고 있습니다.

편집 :

이 당신이 당신의 양식의 멤버로 선언하여 변수 "점수"를 가지고 있다고 가정한다 :

관련 문제