U E D R , A S I H C RSS

김태진/별찍기 (rev. 1.19)

김태진/별찍기

----

별찍기

위키좀 써보고자 잉여로운 시간에 짰던, C시간에 배운것보다 초큼 더 어려운 별찍기를 올립니다.
.. 전 누구분과 같은 엄청난 노가다의 산물은 도전하기 꺼려지더라구요;;

별로 다이아몬드 찍기

1 그냥 다이아몬드는 식상했습니다. 그래서 n값을 사용자에게 받아와 그만한 크기의 다이아몬드를 찍는걸 짰습니다.

#include <stdio.h>

int main ()
{
    int i,j,n;
    scanf("%d",&n);
    n=n/2+1;
    for(i=1; i<=n; i++){
        for(j=i; j<=n; j++) printf("  ");
        for(j=1; j<=2*i-1; j++) printf("* ");
        printf("\n");// 다이아몬드 윗부분.
    }
    for(i=1; i<=n; i++){
        for(j=1; j<=i+1; j++) printf("  ");
        for(j=2*i-1; j<=2*n-3; j++) printf("* ");
        printf("\n");
    }
    

    return 0;
}
결과는 보여주고 싶었는데 별표를 찍으면 처음에 안습한 모양이 나와서 실패했습니다 ㅠㅠㅠㅠ
직접 해보시는것도 좋을거 같습니다.


2 위에 문제를 해결하고 그것도 식상해졌습니다. 그래서 n값을 받아서 거기까지의 모든 다이아몬드를 찍어내는걸 짰습니다.
.. 그러니까, 9를 하면 3 5 7 9일때의 다이아몬드를 모드 뱉어내는 겁니다.


#include <stdio.h>

int main ()
{
    int i,j,n,count; 
    scanf("%d",&count);
    n=1;

    while(n<count){
        

        if(n%2==0) {n++; continue;}
        n=n/2+2;
        for(i=1; i<=n; i++){
            for(j=i; j<=n; j++) printf("  ");
            for(j=1; j<=2*i-1; j++) printf("* ");
            printf("\n");// 다이아몬드 윗부분.
        }
        for(i=1; i<=n; i++){
            for(j=1; j<=i+1; j++) printf("  ");
            for(j=2*i-1; j<=2*n-3; j++) printf("* ");
            printf("\n");
        }
        n=(n-1)*2;
        n++;
    }
    
    return 0;
}
input을 7 로 하면
output은 아래와 같습니다.
라고 하고 싶었지만.. 역시 실패했습니다 ㅠㅠㅠ (올리는데 실패했다는거 뿐입니다.)

2번문제는 위 첫번째것과 많이 다르지 않습니다. while문 한번더 써서 n값에 도달할때까지 count를 올린것 뿐이지요.
(n값이 홀수에만 반응하도록 해야하는게 좀 짜증나긴 했습니다.)

3 의견을 받아들여 반대로 나오는 별표를 만들었습니다.

#include <stdio.h>

int main ()
{
    int i, j;
    for(i=1; i<=5; i++){
        for(j=i; j<=5;j++) printf("*");
        for(j=1; j<=2*i-1; j++) printf(" ");
        for(j=i; j<=5; j++) printf("*");
        printf("\n");
    }
    for(i=1; i<=4; i++){
        for(j=1; j<=i+1; j++) printf("*");
        for(j=2*i-1; j<=7; j++) printf(" ");
        for(j=1; j<=i+1; j++) printf("*");
        printf("\n");
    }
    
    return 0;
}

***** *****
****   ****
***     ***
**       **
*         *
**       **
***     ***
****   ****
***** *****

4 선만 긋는 다이아몬드도 완성했구요.


#include <stdio.h>

int main ()
{
    int i, j;
    for(i=1; i<=5; i++){
        for(j=i; j<=5;j++) printf(" ");
        printf("*");
        for(j=1; j<=2*i-1; j++) printf(" ");
        printf("*");
        printf("\n");
    }
    for(i=1; i<=4; i++){
        for(j=1; j<=i+1; j++) printf(" ");
        printf("*");
        for(j=2*i-1; j<=7; j++) printf(" ");
        printf("*");
        printf("\n");
    }
    
    return 0;
}


     * *
    *   *
   *     *
  *       *
 *         *
  *       *
   *     *
    *   *
     * *
5 다이아몬드 속에 다이아몬드 (N값에따라)
현재 진행상황입니다.1/4은 완성했지만 나머지 반쪽이 제 생각과 다르게 만들어지네요 -_-
#include <stdio.h>

int main()
{
	int i,j,n;
	scanf("%d",&n);
	for(i=1;i<=n;i++){
		for(j=i;j<=n;j++) printf("^");
		printf("*");
		for(j=1;j<=i;j++) {
			if(j%4==0) printf("*");
			else printf("^");
            
		}
		printf("\n");
	}
	for(i=1;i<=n;i++){
		for(j=1;j<=i;j++) printf("^");
		printf("*");
		for(j=i;j<=n;j++) {
			if(j%4==0) printf("*");
			else printf("^");
		}
		printf("\n");
	}
    
    
	return 0;
}
input :9
output:
         * 
        *  
       *   
      *   *
     *   * 
    *   *  
   *   *   
  *   *   *
 *   *   * 
 *   *   * 
  *  *   * 
   * *   * 
    **   * 
     *   * 
      *  * 
       * * 
        ** 
         * 

-- jereneal20 2011-04-25 19:07:31

자 그럼, 다음에는 어떤걸 만드는게 좋을까요? 의견달아주세요:D


*         *
**       **
***     ***
****   ****
***** *****
****   ****
**       **
*         *

  • 이거요 ㅇㅁㅇ 예전 새싹 퀴즈였지만ㅎㅎ; -강소현
    • 5개 4개 2개 1개라니, 범상치 않군요-_-!
      • 헉 시험 전이라 정신이 없었....ㅋㅋㅋㅋ 마음의 눈으로 보면 없던 한 줄이 생성됩니다< -강소현
        • 전 밑에꺼도 4->2개이길래 진짠줄 알았...;;ㅋㅋ - 김태진
  • 손으로는 코딩완료.(교양시간 잉여잉여;;) 업로드는 내일할게요ㅋㅋ -김태진

  • 태진군 이번에는 이런 걸 해보세요 - 장용운

      *
     * *
    *   *
   *     *
  *   *   *
 *   * *   *
*   *   *   *
 *   * *   *
  *   *   *
   *     *
    *   *
     * *
      *
  • 음, 나름 멋진걸. 도전해봐야겟서. + 별찍기 말고라도 다른 재밌는거 잇으면 추천좀해주라 -김태진

DeleteMe)그런데, 1. 번호매기는 기능이 2.을 해도 1.으로 표시되네요;;
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:28:50
Processing time 0.0734 sec