pat 1027 C 언어
이 문제는 주어진 기호를 모래시계 모양으로 인쇄하는 프로그램을 써 달라고 한다.예를 들어 17개의'*'를 정하면 다음과 같은 형식으로 aaaa – aaa - a - aaaaaaa를 인쇄해야 한다. 이른바'모래시계 모양'은 줄마다 홀수 기호를 출력하는 것을 말한다.각 줄 기호의 중심 정렬;두 줄에 인접한 기호의 수차 2;기호 수가 먼저 큰 순서에서 작은 순서로 1로 점차 줄어든 다음에 작은 순서에서 큰 순서로 점차 증가한다.수미 부호의 수가 같다.임의의 N개의 기호를 정하면 반드시 모래시계를 구성할 수 있는 것은 아니다.인쇄된 모래시계는 가능한 한 많은 기호를 사용할 수 있도록 요구한다.입력 형식:
입력은 한 줄에 정수 N(≤1000) 1개와 기호를 주고 중간에 빈칸으로 구분한다.출력 형식:
먼저 주어진 기호로 구성된 가장 큰 모래시계 모양을 출력하고, 마지막으로 한 줄에 사용하지 않은 기호 수를 출력합니다.여기서 내가 사용하는 것은 상하 2층 인쇄, 즉 모래시계를 2반으로 나누어 출력하는 것이다.
#include
int main()
{
int n,max=1,number=1;
char sign;
scanf(" %d %c",&n,&sign);
for(int i=3;i<=n;i+=2)//
{
if(max+i*2>n)
{
break;
}
else max+=i*2;
number+=2;//
}
for(int i=0;i<(number/2)+1;i++)// ( )
{
for(int j=0;j<i;j++)// , ,
{
printf(" ");
}
for(int k=i;k<number-i;k++)// sign ,
{
printf("%c",sign);
}
printf("
");
}
for(int i=(number/2)-1;i>=0;i--)//
{
for(int j=i;j>0;j--)
{
printf(" ");
}
for(int j=number-i;j>i;j--)
{
printf("%c",sign);
}
printf("
");
}
printf("%d",n-max);//
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
PAT 01-2텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.