PTA-7-82 列印沙漏
本題要求你寫個程式把給定的符號列印成沙漏的形狀。例如給定17個“*”,要求按下列格式列印
*****
***
*
***
*****
所謂“沙漏形狀”,是指每行輸出奇數個符號;各行符號中心對齊;相鄰兩行符號數差2;符號數先從大到小順序遞減到1,再從小到大順序遞增;首尾符號數相等。
給定任意N個符號,不一定能正好組成一個沙漏。要求列印出的沙漏能用掉儘可能多的符號。
輸入格式:
輸入在一行給出1個正整數N(≤1000)和一個符號,中間以空格分隔。
輸出格式:
首先列印出由給定符號組成的最大的沙漏形狀,最後在一行中輸出剩下沒用掉的符號數。
輸入樣例:
19 *
輸出樣例:
*****
***
*
***
*****
2
#include <stdio.h>
int main(){
int n;
char x;
scanf("%d %c",&n,&x);
int i=1;
int sum=1;
if (n!=1)//n為1的情況不用進行sum和i的減
{
while(sum<n)
{
i+=2;
sum+=2*i;
}
sum-=2*i;
i-=2;//i為一行最大的符號數
}
int r=n-sum;
for(int j=1;j<=i/2+1;j++)//觀察發現目前的行數和最大符號數相等
{
for(int k=1;k<j;k++)
{
printf(" ");
}
for(int l=1;l<=i-2*(j-1);l++)
{
printf("%c",x);
}
printf("\n");
}
for(int j=1;j<=i/2;j++)
{
for(int k=1;k<=i/2-j;k++)
{
printf(" ");
}
for(int l=1;l<=j*2+1;l++)
{
printf("%c",x);
}
printf("\n");
}
printf("%d",r);
return 0;
}
相關文章
- 1027 列印沙漏 (20分)
- L1-002 列印沙漏
- 【PAT乙級】1027 列印沙漏
- PAT-B 1027 列印沙漏 【模擬】
- 實現一個沙漏⏳元件元件
- 【電子沙漏】製作相關例程
- 印萌自助列印系統,如何提升傳統列印店的列印效率?
- 列印流
- Web 列印Web
- 雲列印比線下列印店便宜嗎?
- 【Spring】日誌列印sql,日誌配置列印sqlSpringSQL
- Word 列印技巧大全,列印知識全在這。
- 列印服務的細節部署(列印許可權、印表機池、列印優先順序、列印文件轉向、分隔頁)
- 日誌列印
- 關於列印
- TVM VLOG列印
- python列印菱形Python
- 雲列印和無線列印有什麼區別?
- vxe-table 列印出貨單、自定義列印單據
- 考研黨列印資料怎麼使用雲列印服務?
- 校園小型列印店,如何實現列印智慧自助化?
- vue+element-ui+js頁面列印(列印elementui的table)VueUIJS
- 社保明細列印
- python 列印 ASCII表PythonASCII
- 前端實現列印前端
- 列印出閏年
- Web列印探祕Web
- js列印object物件JSObject物件
- 用css列印htmlCSSHTML
- js列印小結JS
- AA BB CC AA執行緒列印 ,CC執行緒列印執行緒
- vxe-table 實現列印出貨單、自定義單據列印
- macOS 蘋果電腦雙面列印單面列印PDF設定Mac蘋果
- cad列印怎麼設定黑白 cad怎麼列印圖紙黑白
- @軟考生,准考證列印時間已出,請及時列印
- 印表機如何取消列印任務 印表機列印任務刪不掉
- Excel如何設定列印區域?Exce列印區域設定教程Excel
- Laravel5.6 如何列印 SQL?insert/update/select 列印方法總結LaravelSQL