고등학생이니다 프로그래밍 공부하는데 너무어려워서 질문올립니다. 해결해주시면 감사하겠습니다.ㅠㅜ

akfzknwk의 이미지

0~9까지 입력할수 있고
그이상의 숫자를 입력할경우 반복되어야하며
0을 입력할시 창이 꺼집니다. ㅜㅡ
고수님들 제가 지식이 부족하여 프로그램을짤수가 없습니다.(c언어)
printf
if
scanf
if else
for
while 만 사용해서 마름모로 나타내야합니다.
올리면 왼쪽정렬이 되네요 마름모로 되어야합니다. 도움을 주셧으면 합니다. ㅜㅜ
1
212
32123
4321234
543212345
65432123456
7654321234567 <-----7을입력햇을때의 결과물입니다.
65432123456
543212345
4321234
32123
212
1

ameba의 이미지

앞에다 적당히 띄어쓰기 넣으세요 ' '

세벌의 이미지

https://kldp.org/filter/tips 를 참고하여 소스를 올려주셔요. 그래야 소스가 제대로 나타납니다.

익명 사용자의 이미지

이미 이중 루프로 작성하셨을 텐데 이중 루프에서

Inner 루프를 두개를 만들어서 첫번째 루프에서는 뛰어 쓰기만 하면 되고

뒤에 지금처럼 루프에서는 숫자를 출력 하면 됩니다.

익명 사용자의 이미지

#include

int main(int argc, char** argv){

int max = 7;
int i = 1;
int j = 1;

int k ;
int l = -1;

while ( i != 0 ){
for( k = i ; k < max ; k++){
printf(" ");
}
k = i;
while(k <= i){
printf("%d", k);

if( k == 1 )
l *= -1;
k+= l;


}
l = -1;
printf ("\n");
if ( i == max )
j *= -1;
i+= j;

}
return 0;
}