PGR21.com
- PGR21 관련된 질문 및 건의는 [건의 게시판]을 이용바랍니다.
- (2013년 3월 이전) 오래된 질문글은 [이전 질문 게시판]에 있습니다.
통합 규정을 준수해 주십시오. (2015.12.25.)
Date 2017/04/05 17:20:56
Name 올드패션드
Subject [질문] 간단한 C 프로그래밍 for문 관련 질문입니다.
안녕하세요

출력을

1******
12*****
123****
1234***
12345**
123456*
1234567
이렇게 하는 문제를 푸는중입니다.


저는 아래처럼 그냥 막 가는대로 써봤고
#include

int main()
{
        int a, b;
        int c = 1;



        for (a = 1; a <= 7; a++)
        {
                for (b = 1; b <= a; b++)
                {
                                if (c > b)
                                        c = 1;
                                else{
                                        c = b;
                                }
                                printf("%d", c++);
                }
                
                printf("*n");
        }
        printf("n");
}

그 결과
1*
12*
123*
1234*
12345*
123456*
1234567*

이런식으로 출력이 되네요.
사실 맞는 방향으로 풀고 있는지도 잘 모르겠습니다. 도움 부탁드립니다.

통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
MirrorShield
17/04/05 17:23
수정 아이콘
c를 왜 쓰셨는지 모르겠어요. 그냥 숫자를 출력할거면 b를 출력하면 될텐데요.

c에 관련된건 아예 전부 필요가 없는 사족이고, *을 반복해서 출력하는 부분이 빠져있네요.

그부분만 추가하시면 될거같습니다.
올드패션드
17/04/05 17:28
수정 아이콘
문제 풀기 전에 변수 3개 써야 될거라고 들어가지고 일단 3개 도입하고 시작하긴 했습니다.
풀면서 실행하다보니까
1*
23*
456*
78910*
이런식으로 출력되게 짠 경우가 있었는데요. 매 줄 시작을 1로 고정할려고 무언가 추가할려다가 본문과 같이 썼습니다.
몰아치는간지폭풍
17/04/05 17:26
수정 아이콘
힌트: for (b = 1; b <= 7; b++)
올드패션드
17/04/05 18:17
수정 아이콘
힌트 감사합니다.
써니는순규순규해
17/04/05 17:28
수정 아이콘
힌트: for (c = a; c <= 7; c++)
올드패션드
17/04/05 18:16
수정 아이콘
다른 힌트 바탕으로 변수 두개만 써 봤는데 세개 쓰는 경우는 어떻게 짤 수 있을까요?
하루빨리
17/04/05 19:00
수정 아이콘
써니는순규순규해님이 제시하신 방법은 if문을 쓰지 않는 방법입니다.
즉, a를 기준으로 b영역과 c영역을 나누고 b영역은 숫자찍고 c영역은 별 찍는 방식이죠.

이 경우 for문을 3개 써야 합니다. 하지만 이 문제에서 for문을 3개 쓴다 해도 삼중 for문이 아닌 이중 for문이기 때문에 변수는 두개만 있으면 됩니다.
위에 보니 1~10을 4열에 찍는 문제가 있는데, 이 경우는 열 바뀔때 숫자가 초기화 되면 안되기 때문에 출력할 숫자를 카운터 할 변수 c를 따로 둔 것이죠.
하루빨리
17/04/05 17:39
수정 아이콘
좀 더 쉬운 힌트를 드리자면
a가 열이고, b가 행이라고 한다면 열과 행은 7로 고정인것이죠.
1열은 숫자 1까지, 2열은 숫자 2까지 3열은 숫자 3까지 나머지는 별 찍는거니 이부분을 if로 구분해서 찍으면 됩니다.
올드패션드
17/04/05 18:15
수정 아이콘
감사합니다. 결정적인 힌트덕분에 해결했습니다.
마루하
17/04/05 17:55
수정 아이콘
int a, b;

for (a = 1; a <= 7; a++)
{
for (b = 1; b <= 7; b++)
{
if (b < a){
printf("%d", b);
}
else{
printf("*");
}
}
printf("n");
}
올드패션드
17/04/05 18:20
수정 아이콘
해결하고 왔습니다. 거의 동일하게 썼는데
b<a 이 부분인 b<=a로 썼습니다. 감사합니다.
시노부
17/04/05 18:30
수정 아이콘
for (int icnt = 1; icnt <= 7; icnt++)
{
for (int j =1; j <= 7; j++)
{
if (icnt < j) printf("[*]");
else printf("[%d]", j);
}
printf("n");
}

...어, 위에 비슷한 소스 있네요 크크
MDIR.EXE
17/04/05 20:28
수정 아이콘
char txt[]="*******";
for (i=0;i<7;i++)
{
txt[i]=i+'1';
printf("%s₩n",txt);
}

출제 의도와 다르겠지만 이런 풀이도 가능합니다.
17/04/06 03:50
수정 아이콘
하지만 실무는 결국

printf("1******\n");
printf("12*****\n");
printf("123****\n");
printf("1234***\n");
printf("12345**\n");
printf("123456*\n");
printf("1234567\n");

크크
일반회원
17/04/06 14:16
수정 아이콘
실무네요.
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
100676 [질문] 변호사 상담 뭐가 좋을까요? [2] 윤가람2102 17/04/07 2102
100675 [질문] 긴가민가해서 여쭤봅니다. [6] FeeLinG2755 17/04/07 2755
100674 [질문] 중학생 징계관련 질문 후기(?) [63] 정짱5291 17/04/07 5291
100673 [질문] 국내에서 제일 긴 짚라인(짚와이어) 어딘가요? [3] 로켓라쿤6603 17/04/07 6603
100672 [질문] 5년만에 아이폰으로 갈아탔는데요 [2] 난나무가될꺼야2567 17/04/07 2567
100671 [질문] [스타1] 최근 공개 테스트 스타.. 심각한 버그 저만 그런가요? [7] 하자3004 17/04/07 3004
100670 [질문] [LOL]멘탈관리 어떻게 하세요? [30] Faker Senpai3741 17/04/07 3741
100669 [질문] [하스스톤] 운고로 카드팩 예구자 분들 안녕하신가요? [9] 아지메2777 17/04/07 2777
100668 [질문] (학과)전과 사실을 학교에서 알 수 있나요? [10] Genius4577 17/04/07 4577
100667 [질문] 경주관광 - 맛집 소개 부탁 드려요! [27] 삭제됨6106 17/04/07 6106
100666 [질문] 예전 백업파일 삭제 어떻게 하나요? 레스토랑스2619 17/04/07 2619
100665 [질문] 먼지 알레르기 심하면 어떻게 하나요? [1] 케이틀린2524 17/04/07 2524
100664 [질문] 차떼기에 관해 질문드립니다. [6] 만두베스트3329 17/04/07 3329
100663 [질문] 엑원패드 3세대 블루투스 연결시 질문 입니다 발적화2111 17/04/07 2111
100661 [질문] MSSQL 링크드서버 구성 후 트리거로 INSERT시 오류가 발생합니다. [1] 삭제됨3519 17/04/07 3519
100660 [질문] 영미 문학 작품 잘 읽는 법 [4] 에라스뮈스2313 17/04/07 2313
100659 [질문] 여권 10년짜리 만들어보신분 계신가요? [8] 참교육3080 17/04/07 3080
100658 [질문] 일본어 공부 방법에 대해서 질문드립니다. 한자부분. [4] 랜슬롯3082 17/04/07 3082
100657 [질문] 엄마 알뜰폰 해드릴려는데 좀 복잡해요. 답변좀 부탁드립니다. [2] 푸른늑대2315 17/04/07 2315
100656 [질문] 미란다커가 전세계적으로 유명한 편은 아니죠? [14] 메티스4306 17/04/07 4306
100655 [질문] 고성능 노트북 또는 탭북 관련 질문입니다. [6] 김승남2763 17/04/07 2763
100654 [질문] 명절 귀경길에 남해-서울 차 막히면 몇시간 걸릴까요? [5] 세정2375 17/04/07 2375
100653 [질문] 미녹시딜은 비처방인가요? [8] cs3221 17/04/07 3221
목록 이전 다음
댓글

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