緊湊地寫10 的冪
在Go 程式語言中,練習3.13 挑戰程式設計師為KB、MB、up 編寫緊湊的常數聲明為YB,代表1000的冪。儘管iota機制對於生成冪的限制10,但文本建議使用最緊湊的方法。
浮點文字
節省空間的解決方案是利用具有指數部分的浮點文字。例如,寫入 1e3 佔用的空間少於 1000。將所有識別符組合成單一常數規範進一步減少了等號的數量。以下是一個簡潔的聲明(67 個字符,不含空格):
const ( KB, MB, GB, TB, PB, EB, ZB, YB = 1e3, 1e6, 1e9, 1e12, 1e15, 1e18, 1e21, 1e24 )
整數文字使用KB 作為乘數
創建無類型整數常數需要為KB 寫入1000。要獲得後續值,可以將前面的識別碼乘以 1000。但是,也可以使用 KB 作為乘數,因為它代表 1000。以下聲明為77 個字符,不含空格:
const (KB,MB,GB,TB,PB,EB,ZB,YB = 1000,KB*KB,MB*KB,GB*KB,TB*GB,PB*KB,EB*KB,ZB*KB)
使用額外常量進行乘法
引入一個額外的1 字符const x 透過將*KB 替換為x 可以進一步節省空間:
const (x,KB,MB,GB,TB,PB,EB,ZB,YB = 1000,x,x*x,MB*x,GB*x,TB*GB,PB*x,EB*x,ZB*x)
Rune Literal
使用代碼點為 1000 的 rune 文字('Ϩ') 減少了多一個字元所需的空間:
const (x,KB,MB,GB,TB,PB,EB,ZB,YB = 'Ϩ',x,x*x,MB*x,GB*x,TB*GB,PB*x,EB*x,ZB*x)
以上是如何在 Go 中簡潔地聲明 10 的冪次方?的詳細內容。更多資訊請關注PHP中文網其他相關文章!