메뉴 바로가기

서브메뉴 바로가기

본문 바로가기

logo

C/C++/MFC

C기초 피라미드 출력

2007.10.25 10:36

WhiteAT 조회 수:9544

 Outlook.jpg

 #include <iostream.h>

#include <string.h>

#include <stdio.h>

#include <conio.h>

 

 

 

void main() {

int iLineCount = 6;

 int iTemp0;

 int iTemp1;

 

for(iTemp0=0;iTemp0<=iLineCount;iTemp0++){

  printf("\r\n");

  for(iTemp1=0;iTemp1<=iLineCount*2;iTemp1++){

   if (iLineCount-iTemp0>iTemp1) printf(" ");

   else if (iLineCount+iTemp0<iTemp1) printf(" ");

   else printf("*");

  }

 }

 

printf("\r\n");

 printf("\r\n");

 

 

 

 

if(iLineCount%2 == 1)iLineCount++;

 int iMaxCount = (iLineCount*2) -1;      // 가장 칸의

 int iCenterLine = (iLineCount)/2;      // 가운데 번호

 int iSpaceCount =0;

 

 for(iTemp0=0;iTemp0<=iLineCount;iTemp0++){

  printf("\r\n");

  if(iTemp0==0 || iTemp0==iLineCount){  // first line, last line

   iSpaceCount = iMaxCount/2+1;

  }else if(iTemp0 <=iCenterLine){

   iSpaceCount++;

  }else{

   iSpaceCount--;

  }

  for(iTemp1=0;iTemp1<=iMaxCount;iTemp1++){

   if (iSpaceCount-1>iTemp1) printf(" ");

   else if (iMaxCount-iSpaceCount<iTemp1) printf(" ");

   else printf("*");

  }

  if(iTemp0==0 || iTemp0==iLineCount){  // first line, last line

   iSpaceCount=0;

  }

 }

 printf("\r\n");

 

}