私たちの教授。少し前にこの擬似コードを提供してくれました...そして、私はこの部分で苦労しています
疑似コード
配列インデックス値は 14 で、14 個の文字列名があります
Shell_Sort(Arr,N)
{ If(N=1) then
{
出口
}
間隔を N に設定
while(間隔が1でない)
{
間隔を ((間隔/3)+1) に設定します。(間隔は整数ではありません) の場合 <--------- これが私が問題を抱えている部分です
{
間隔を切り捨てる<------------そしてここで、間隔を整数に切り捨てるにはどうすればよいですか?
}
開始を 1 に設定
while(開始 <= 間隔)
{
選別()
増分開始
}
}
}
選別()
{
Unsrt_Indx を (開始 + 間隔) に設定します。
while(unsrt_Indx <= N)
{
if (Arr[Unsrt_Indx - 間隔] > arr[unsrt_Indx] then
{
str_indx を unsrt_indx に設定します
temp を arr[srt_indx] に設定
while((str_indx >start && (arr[str_indx-Interval] > temp))
{
arr[set_indx] を arr[str_index-interval] に設定
str_indx を (crt_index - interval) に設定します
}
arr[str_indx] を temp に設定します
}
unsrt_indx を (unsrt_indx + interval) に設定します
}
}
整数でないかどうかを判断する際に if ステートメントを使用するにはどうすればよいですか??
そして、切り捨てをどのように使用しますか?? 1 2 または 3 に切り捨てます。
ex.
4.6666666666667
how can i truncate it into
4.67
4.6
4
そんな感じ。