PGR21.com
- PGR21 관련된 질문 및 건의는 [건의 게시판]을 이용바랍니다.
- (2013년 3월 이전) 오래된 질문글은 [이전 질문 게시판]에 있습니다.
통합 규정을 준수해 주십시오. (2015.12.25.)
Date 2014/10/22 02:26:19
Name 화이트데이
Subject [질문] [C++] 석차 구하는 방법 질문입니다.
#include <stdio.h>
#define N 5

int main()
{
        int i, j, k;
        int kor[N] = {90, 80, 70, 60, 100};
        int math[N] = {81, 91, 81, 81, 100};
        int order[N];
        double avg[N];

        printf("============================n");
        printf("국어        수학        평균        석차n");
        printf("============================n");

        for(i=0; i<=4; i++)
        {
                avg[i] = (kor[i] + math[i]) / 2.0;
        }

        i = 0;
        order[i] = 1;

        for(i=0; i<=4; i++)
        {
                printf("%d        ",kor[i]);
                printf("%d        ",math[i]);
                printf("%.2lf        ",avg[i]);


지금 딱 여기까지에서 막혔습니다. 우선 석차값을 1로 맞춘 뒤, 평균값을 여태까지 나온 평균값(0~4)들과 비교해서 비교된 평균값이 더 크다면, 숫자 1을 더해주는 식으로 하려고 하는데 머리는 이론상으로 가는데 손이 못따라가네요.

네이버에 검색하니 다른 구조로 문제를 푸는 방법이 대부분이라서 for 문과 if 문 만을 이용해서 만들어보라는 것과 맞지가 않네요 흑흑.

여기서 어떻게 더 추가하면 될까요?


값은,

============================
국어        수학        평균        석차
============================
90           81        85.50         2
80           91        85.50         2
70           81        75.50         4
60           81        70.50         5
100         100     100.00         1

이런 식으로 나오는 듯 합니다.

통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
Rorschach
14/10/22 02:35
수정 아이콘
for와 if로만 해야한다면 그냥 for 두 번 돌리세요.

> for(i=0; i<=4; i++) {
> order[i] = 1;
> for(j=0; j<=4; j++) {
> if (i != j and avg[i]>avg[j]) order[i] += 1;
> }
> }

이런식으로 하면 대충 구해질거예요. 자기자신의 평균은 어차피 같으니 "i != j" 부분은 없어도 될 듯...
화이트데이
14/10/22 02:40
수정 아이콘
와, 왜 이걸 생각못했을까요. 개멍청하네요 흑흑.
답변 감사합니다.. 다 와서는 헤매고 있었네요.

그그 부등호 방향만 반대로 바꾸니까 되네요~.
14/10/22 02:40
수정 아이콘
sorting algorithm은 컴공과 자료구조 과목에서도 중요하게 다룹니다.
http://en.wikipedia.org/wiki/Sorting_algorithm
를 참고해 보시고, 실질적인 코딩은 인터넷에서 원리와 코드를 찾아 따라해 보시고, 전공서로 포괄적으로 공부하는 것도 좋겠지요.
그리고 가장 기본적이고 쉽지만, 제일 느린 방법인 selection sort인데요, 다음 주소에 C코드도 있으니 참고해서 이해해 보시면 되겠습니다.
http://en.wikipedia.org/wiki/Selection_sort
그럼 열공하세요~
화이트데이
14/10/22 02:40
수정 아이콘
참고하겠습니다. 감사합니다~^^.
Je ne sais quoi
14/10/22 10:02
수정 아이콘
도움은 윗 분들이 주셨으니, 그냥 노파심에 한 마디 하면 써놓으신 코드는 c++이 아니라 c입니다. 곧 포인터를 하실텐데 잘 이겨내시길 바랍니다.
14/10/22 18:10
수정 아이콘
크크 저도 보면서 이건 c언어네 구냥..
14/10/22 18:09
수정 아이콘
석차 -> 솔팅문제구나..

이중 for문 + if 를 사용하여 올림차순 혹은 내림차순으로 나열하는건데 크크
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
공지 댓글잠금 [질문] 통합 규정(2019.11.8. 개정) jjohny=쿠마 19/11/08 111069
공지 [질문] [삭제예정] 카테고리가 생겼습니다. [10] 유스티스 18/05/08 134071
공지 [질문] 성인 정보를 포함하는 글에 대한 공지입니다 [38] OrBef 16/05/03 183811
공지 [질문] 19금 질문은 되도록 자제해주십시오 [8] OrBef 15/10/28 216905
공지 [질문] 통합 공지사항 + 질문 게시판 이용에 관하여. [22] 항즐이 08/07/22 268795
181148 [질문] 흰수염제모 질문드립니다. [5] 살만합니다464 25/07/16 464
181147 [질문] pgr 화면 어둡게 볼 수 없나요? [4] 월터화이트791 25/07/16 791
181146 [질문] 서울 에서 맛집 한곳을 추천하신다면? [23] 비카리오1123 25/07/16 1123
181145 [질문] KT 로밍 잔여데이터 확인 [1] vi20nq1149 25/07/16 1149
181144 [질문] Notion 수식 세우기 [1] ELESIS1817 25/07/15 1817
181143 [질문] 노안 안경? [3] 방구차야1642 25/07/15 1642
181142 [질문] 노래를 배울 수 있는 곳이 있나요??? [2] 좋습니다1493 25/07/15 1493
181141 [질문] 수염 거뭇거뭇 난 거 질문 드립니다. [8] 콩돌이1938 25/07/15 1938
181139 [질문] 갤럭시 S25 엣지 사려고 하는데, 싸게 살수 있는 방법이? [7] 짜부리2116 25/07/15 2116
181138 [질문] KT모바일요금제 문의 [6] 면역1232 25/07/15 1232
181137 [질문] LCK가 젠지를 싫어하나요? [10] 리니시아3503 25/07/15 3503
181136 [질문] 운전자 보험을 가입하려고 합니다. [2] 픽킹하리스2072 25/07/15 2072
181135 [질문] 기독교 믿음에 대한 질문 [18] 하루아빠2648 25/07/14 2648
181134 [질문] 두번째 피검사 결과 확인 해주실있나요 [8] poocang2137 25/07/14 2137
181133 [질문] 성폭행 피해자의 신뢰관계인 동석 [5] klavsax3229 25/07/14 3229
181132 [질문] 40대 독거남 입니다.. 민생회복 소비쿠폰 꿀팁 좀 공유 부탁 드려요 [15] 크림샴푸2712 25/07/14 2712
181131 [질문] 마크 돌아가는 노트북 추천 부탁 드립니다. [1] 우엉징아리1077 25/07/14 1077
181130 [질문] 디아블로4 이제 입문한 사람인데 초보적인 질문 몇 드립니다. [11] 바카스1759 25/07/14 1759
목록 이전 다음
댓글

+ : 최근 1시간내에 달린 댓글
+ : 최근 2시간내에 달린 댓글
맨 위로