자 이제 본격적으로 만들어 봅시다
문제를 다시 볼까요?
5명의 스파르탄에 대해서 사격 전투 운전 세과목의 성적을 임의로 저장하고 각각의 대해서 총점과 평균을 계산하여 화면에 출력하고
일등한 사람의 번호를 출력하라. 단 동점인 경우 번호가 빠른사람이 승리한 것으로 한다.
음 저는 일단 이렇게 생각 했습니다.
1.각각 세과목의 배열 5개를 지정하고
2.총점이 나와야 하니까 총점도 배열로 만들고
3.평균도 나와야 하니까 평균도 배열로 만들고
4.배열중에 가장 잘한 1등을 저장하기 위한 변수 하나 이렇게 할것 같습니다.
5. 총점을 구하기 위해 각 수들을 더할 것 입니다..
6.평균을 구하기 위해 총점을 3으로 나눌 것 입니다.(나누기에서 캐스팅을 해야 분수도 나오겠죠?)
7.if문을 이용해서 가장 높은 값을 1등을 저장하기로 할 것같습니다.
8. 각각 수들을 출력하면 완료!
그래서 저는 이렇게 생각하고 푼것인데요 어차피 프로그래밍이라는 것이 정답이 없습니다!
어떤 경로든 답이 나오는게 중요하니까요!! 제소스는 참고로만 봐주시고 꼭! 직접 해보세요!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ScoreProcess { class Program { static void Main(string[] args) { int[] gun = { 70, 90, 50, 60, 80 }; int[] war = { 30, 50, 80, 90, 70 }; int[] drive = { 20, 30, 70, 90, 90 }; int[] total = { 0, 0, 0, 0, 0 }; float[] average = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}; int maxindex; for(int i = 0; i<total.Length;i++) { total[i] = gun[i] + war[i] + drive[i]; average[i] = total[i] / (float)3.0f; } maxindex = -1; for(int i=0;i<total.Length;i++) { if(0==i) { maxindex = i; } else { if(total[maxindex]<total[i]) { maxindex = i; } } } Console.WriteLine("---------------------"); Console.WriteLine("번호 총점 평균"); Console.WriteLine("---------------------"); for(int i=0;i<total.Length;i++) { Console.WriteLine(i + " " + total[i] + " " + average[i]); } Console.WriteLine("----------------------"); Console.WriteLine("최고 득점자 번호"+maxindex); Console.WriteLine("----------------------"); } } } | cs |
자 저는 이렇게 했습니다 여러분은 어떤가요?
'Visual C# > Universal App' 카테고리의 다른 글
7. C# 강좌 로또번호 만들기!(2) (0) | 2015.10.20 |
---|---|
6. C# 강좌 로또번호 만들기!(1) 알아야 할 것들 (2) | 2015.10.20 |
4. C# 강좌 성적 처리 프로그램 (1) 알아야 할 것들 (2) | 2015.10.19 |
3. C# 강좌 Hello World 프로그램 (1) | 2015.10.18 |
2. C# 강좌 비주얼 스튜디오 커뮤니티 2015 설치하기! (0) | 2015.10.18 |