2010-09-03 49 views
1

我一直在試圖找出我們如何可以打印一個陣列hellically但我停留在如何讓started.Any算法或想法會很helpful.Thanks HELLICALLY手段以同心圓形打印陣列搞不清楚如何打印數組hellically

+1

你是什麼意思的「hellically?」我對這個詞不熟悉。 – 2010-09-03 16:15:42

+1

一維數組?那很有意思。 – dirkgently 2010-09-03 16:17:15

+0

你可以使用curses或類似的嗎? – nmichaels 2010-09-03 16:18:14

回答

1

如果我正在解釋你說的正確,你想打印一個數組的內容,但是以螺旋形式打印。

我會先分配一個大的矩形內存塊(一個二維數組)並將它初始化爲零。這代表了屏幕。然後設計一個函數來確定圓中下一個點的座標,並將一些座標變量初始化爲原點。通過將陣列成員放在任何地方來填滿屏幕。

一次一行地打印出屏幕陣列,但用空格替換爲零。

屏幕尺寸和下一個座標功能留給讀者練習。

+0

這也適用於同心圓。下一個座標功能只需畫圓而不是螺旋。在極座標(r,theta)中執行此操作可能最簡單,並將其傳遞給另一個轉換函數以獲取您的二維數組座標。 – nmichaels 2010-09-03 16:54:43

+2

將圓形映射到二維數組上的最簡單方法是中點圓算法:http://en.wikipedia.org/wiki/Midpoint_circle_algorithm – 2010-09-03 16:58:35

+0

Hooray,更好的版本。 – nmichaels 2010-09-03 20:18:00