2017-10-26 1 views
1

나는 할당을하고 학교에서, 그리고 난 내가 여기까지 입수했습니다하지만 통과 많은 얼마나 많은 실패의 번호 수를 표시하려고 도로 블록에 충돌하는 방법을수를 표시하는 방법은 무엇입니까?

double[] marks = new double[10]; 
     marks[0] = 0; 
     marks[1] = 0; 
     marks[2] = 0; 
     marks[3] = 0; 
     marks[4] = 0; 
     marks[5] = 0; 
     marks[6] = 0; 
     marks[7] = 0; 
     marks[8] = 0; 
     marks[9] = 0; 

Console.WriteLine("Please enter in 10 marks below: "); 
     marks[0] = Convert.ToDouble(Console.ReadLine()); 
     marks[1] = Convert.ToDouble(Console.ReadLine()); 
     marks[2] = Convert.ToDouble(Console.ReadLine()); 
     marks[3] = Convert.ToDouble(Console.ReadLine()); 
     marks[4] = Convert.ToDouble(Console.ReadLine()); 
     marks[5] = Convert.ToDouble(Console.ReadLine()); 
     marks[6] = Convert.ToDouble(Console.ReadLine()); 
     marks[7] = Convert.ToDouble(Console.ReadLine()); 
     marks[8] = Convert.ToDouble(Console.ReadLine()); 
     marks[9] = Convert.ToDouble(Console.ReadLine()); 

     if (marks[9] >= 50) 
     { 

      Console.WriteLine("\nYou Passed!"); 
     } 
     else 
     { 
      Console.WriteLine("\nYou ailed"); 
     } 

     Console.ReadLine();` 

알아내는 데 문제가 있어요.

+0

배열을 연구 했으므로 분명히 루프를 연구했을 것입니다. 맞습니까? – dasblinkenlight

+0

그래, 이제 막 배웠다. – TaricDF

+2

배열과 루프가 튀김과 케첩 같은 형태로 함께하기 때문에 :-) – dasblinkenlight

답변

1

배열 항목을 반복하여 표시하고 두 개의 카운터 변수를 전달할 수 있습니다. 하나는 통과 된 것이고 다른 하나는 실패한 것입니다. LINQ를 사용

var passedCount = 0; 
var failedCount = 0; 
for (var i = 0; i < marks.Length; i++) 
{ 
    if (marks[i] >= 50) 
    { 
     passedCount++; 
    } 
    else 
    { 
     failedCount++; 
    } 
} 
Console.WriteLine("Passed count : "+ passedCount); 
Console.WriteLine("Failed count : "+ failedCount); 

, 당신은 Count 확장 방법을 사용하여 oneliner에 그것을 할 수 있습니다.

var passedCount = marks.Count(a => a >= 50); 
var failedCount = marks.Count(a => a < 50); 
+1

영혼은 영원히 축복받을 것입니다. 덕분에 톤 – TaricDF

0

이 시도 :

void Main() 
{ 
    double[] marks = new double[10]; 

    Console.WriteLine("Please enter in 10 marks below: "); 

    for (int i = 0; i < 10; i++) 
    { 
     marks[i] = Convert.ToDouble(Console.ReadLine()); 
    } 

    Console.WriteLine("You passed {0} subjects.", marks.Where(mark => mark >= 50).Count()); 

    Console.ReadLine(); 
} 
0

int counterPassed = 0int counterFailed = 0를 선언합니다. 그런 다음 if else 문 안에 counterPassedcounterFailed을 하나씩 증가시킵니다. counterPassed++ 또는 counterPassed += 1을 사용할 수 있습니다. 그런 다음 루프 다음에 표시하십시오.

+0

도와 주셔서 감사합니다. – TaricDF

관련 문제