真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

XTU-創(chuàng)新互聯(lián)

按照給定小菱形的數(shù)量n,利用字符打印菱形,要求

成都創(chuàng)新互聯(lián)公司主要從事成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)泰安,10余年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來(lái)電咨詢建站服務(wù):028-86922220
  1. 只使用/\,空格,回車四種字符。
  2. 行首無(wú)多余的空格,行末無(wú)空格。
  3. 菱形從上到下,從左到右,依次編碼,從1到n,不要輸出多余的菱形。
  4. 邊長(zhǎng)為a的大菱形,最少有(a?1)2+1個(gè)小菱形,最多有a2個(gè)小菱形。

具體格式見(jiàn)樣例。

比如邊長(zhǎng)為3的菱形,最少有5個(gè)小菱形(左邊的情況),最多有9個(gè)小菱形(右邊的情況)。

/\      /\
  /\/\    /\/\
 /\/\/   /\/\/\
 \/\/    \/\/\/
          \/\/
           \/

對(duì)應(yīng)的編號(hào)分別為

1     1
 2 3   2 3
4 5   4 5 6
       7 8
        9
輸入格式

存在多個(gè)樣例,每個(gè)樣例是一個(gè)整數(shù)n(1≤n≤100)。如果n為0,表示輸入結(jié)束,這個(gè)樣例不需要處理。

輸出格式

依次按要求輸出對(duì)應(yīng)數(shù)量的菱形。

樣例輸入
1
2
3
4
5
6
7
0
樣例輸出
/\
\/
 /\
/\/
\/
 /\
/\/\
\/\/
 /\
/\/\
\/\/
 \/
  /\
 /\/\
/\/\/
\/\/
  /\
 /\/\
/\/\/\
\/\/\/
  /\
 /\/\
/\/\/\
\/\/\/
 \/
代碼:
#include#includeint main(){
	int n = 1;
	while(n!=0){
		scanf("%d",&n);
		if(n==0) break;
		int a = ceil(sqrt((float)n));
		int head = a;
		int last = a;
		int count = 0;
		int up = (a*a-a)/2+a;
		
		
		for(int x = 0;x< a;x++){
			for(int y = 1;y< last||y == last;y++){
				if(y< head) printf(" ");
				else{
					if((y-head)%2==0){
						printf("/");
						printf("\\");
						count=count+1;
						if(count == n) break;
						y++;
					}
				}
			}
			head = head-1;
			last = last+1;
			if(x != a-1) printf("\n");
			
			if(x == a-1){
				if(countup){
		printf("\n");
		count = up;
		for(int x = 0;x< a-1;x++){
			head = head+1;
			last = last-1;
			for(int y = 0;y
運(yùn)行結(jié)果:

思路:

于是再次進(jìn)行題目分析:

? 首先菱形可以分為上半部分up和下半部分down,經(jīng)過(guò)計(jì)算,我們可以得到

up=(a^2-a)/2+a

down=(a^2-a)/2

? 畫(huà)菱形無(wú)非三種情況:

  1. 一種是畫(huà)到上半部分的最后一層的中間,上層畫(huà)不滿:如N=5的情況;
  2. 上層剛好畫(huà)滿,如N=6;
  3. 畫(huà)完上層還不夠,畫(huà)到下層,如N=7;

所以上層一定會(huì)畫(huà)到最后一層,我們只需要把上層的最后一層根據(jù)最后一層所畫(huà)的結(jié)點(diǎn)數(shù)去補(bǔ)一個(gè)/

——>如果是情況1則在最后補(bǔ)一個(gè)/,然后換行

——>如果是情況2則不需要補(bǔ),直接換行

記錄下最后一層所畫(huà)的節(jié)點(diǎn)數(shù)count=count-(a^2-a)/2+a

換行之后,因?yàn)樽詈笠粚又蝗盶/了,畫(huà)count個(gè)\/即可

至此為止,上半部分就畫(huà)好了

下半部分我們經(jīng)過(guò)分析,發(fā)現(xiàn)直接在節(jié)點(diǎn)處畫(huà)\/即可

注意每好一個(gè)節(jié)點(diǎn)需判斷畫(huà)好的節(jié)點(diǎn)數(shù)是否等于n,等于則結(jié)束循環(huán)直接輸出,不等于則下一步;

畫(huà)節(jié)點(diǎn)的算法:

? 1、將菱形分為上界和下界,上界a層,下界a-1層

? 2、兩層for循環(huán):

? 第一層for循環(huán)遍歷層數(shù)

? 第二層for遍歷打印每一層的數(shù)據(jù)

? 對(duì)每一層又根據(jù)第一個(gè)節(jié)點(diǎn)head和最后一個(gè)節(jié)點(diǎn)last劃分區(qū)域

? 當(dāng)當(dāng)前位置在head之前,打印空格,當(dāng)當(dāng)前位置與head的差值為2的倍數(shù)時(shí),打印/\,計(jì)數(shù)點(diǎn)跳過(guò)\往前走一步;

? 內(nèi)層循環(huán)結(jié)束后換行;

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧


網(wǎng)站欄目:XTU-創(chuàng)新互聯(lián)
當(dāng)前URL:http://weahome.cn/article/pcdjs.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部