c 도와주세요ㅠㅠ(도형그리기)
가시내
*을 이용해서 도형그리는건데요..
숫자 5를 입력받았을때
*****
**
**
* *
*****
*
**
* *
* *
*****
*
* *
* *
* *
*
*
**
* *
**
*
이렇게 나타내야되는데요..
사각형은했거든요..
#includestdio.h
#includestdlib.h
void main()
{
int size, a, b;
while(1){
printf(@@ *문자로 도형 그리기 @@\n);
printf(도형의 크기(양의 홀수)를 입력하세용~ : );
scanf(%d,&size);
if(size/2=0 == size){
printf(크기 입력이 잘못됬어요~ 다시 입력해주세용~ : \n);
scanf(%d,&size);
}
for(a=0;asize;a++){
printf(*);
}
printf(\n);
for(a=0;asize-2;a++){
for(b=0;bsize;b++){
if((b==0)||(b==size-1))
printf(*);
else
printf( );
}
printf(\n);
}
for(a=0;asize;a++){
printf(*);
}
printf(\n\n);
}
}
이렇게했는데요.. 저기 빨간부분이 안되요..;; 잘못입력했으면 다시 입력하라고 해야되는데 그냥 해버리네요..;;;
그리고 직각삼각형은
#includestdio.h
#includestdlib.h
void main()
{
int size, a, b;
while(1){
printf(@@ *문자로 도형 그리기 @@\n);
printf(도형의 크기(양의 홀수)를 입력하세용~ : );
scanf(%d,&size);
for(a=0;asize;a++){
printf(*);
}
printf(\n);
for(a=0;asize-2;a++){
for(b=0;bsize;b++){
if((b==0)||(b==a))
printf(*);
else
printf( );
}
printf(\n);
}
for(a=0;asize;a++){
printf(*);
}
printf(\n\n);
}
}
이렇게했구요.. 마름모랑 이등변이 문제인디..ㅠㅠ
도와주세요~ㅠㅠ
-
튼동
아하.. 시작한지 얼마안되서요~ㅋ 머가 안되고 되는지 몰라요 ㅋ;;; 자주 물어볼께요~ㅋ
-
앵초
if(size/2=0 == size) 이게 뭐죠;; 이렇게 비교연산 안되는걸로 알고있는데요 일단 홀수이며 0보다 커야하니까
if((size%2)==1 && size0) 이렇게 하셔야 하지 않을까 싶구요
빨간부분이 반복문이 아니라 틀리게 입력했다 하더라도 1번만 다시 묻게되죠
이 부분을 do while문으로 조건에 맞는 수가 입력 될 때까지 계속 입력받도록 하거나
일정 횟수 이상 틀리게 입력되면 프로그램이 종료되도록 하는게 좋을 것 같네요