partition

partition

計算機編程函數
Partition函數用于返回一個Variant(String),指定一個範圍,在一系列計算的範圍中指定的數字出現在這個範圍内。
    中文名: 外文名:partition 别名: 性質:計算機 類别:編程 屬于:函數

函數定義

template

BidirectionalIterator partition(BidirectionalIterator first,

BidirectionalIterator last,UnaryPredicate pred)

{

while(first!=last){

while(pred(*first)){

++first;

if(first==last)

return first;

}

do{

--last;

if(first==last)

return first;

}while(!pred(*last));

swap(*first,*last);

++first;

}

return first;

}n

函數的作用

Partition函數用于返回一個Variant(String),指定一個範圍,在一系列計算的範圍中指定的數字出現在這個範圍内。

函數的語法格式

Partition(number,start,stop,interval)

Partition函數的語法含有下面這些命名參數:部分描述

number必要參數。整數,在所有範圍中判斷這個整數是否出現。

start必要參數。整數,數值範圍的開始值,這個數值不能小于0。

stop必要參數。整數,數值範圍的結束值,這個數值不能等于或小于start。

說明:

Partition函數會标識number值出現的特定範圍,并返回一個Variant(String)來描述這個範圍。

Partition函數在查詢中是最有用的。可以創建一個選擇查詢顯示有多少定單落在幾個變化的範圍内,例如,定單數從1到1000、1001到2000,以此類推。

函數舉例

下面的表格使用三組start,stop以及interval部分,來顯示怎樣決定這個範圍。第一個範圍和最後一個範圍兩列顯示Partition的返回值,此範圍的低端(lowervalue)和高端(uppervalue)是以冒号分開的。

startstopinterval第一個範圍之前第一個範圍最後一個範圍最後一個範圍之後0995":-1""0:4""95:99""100:"2019910":19""20:29""190:199""200:"100101020":99""100:119""1000:1010""1011:"從上面的表格中得知,在第三行中,由start和stop所定義的數值範圍不能以interval來均分。所以,即使interval是20,最後一個範圍也隻能擴展到stop(11個數)。

如果需要的話,Partition會在返回的範圍中加上足夠的空白,以便讓返回值在冒号的左右兩側有相同的字符數,其值就是stop中的字符數再加一。如此可确保當要使用Partition與其它的數值作運算時,所得的字符串,可以在之後的排序操作中得到正确的結果。如果interval是1,則範圍便是number:number,而不管start和stop參數如何。比如說,如果interval是1,number是100,而stop是1000,則Partition會返回"100:100"。如果任何部分是Null,則Partition會返回一個Null。

相關詞條

相關搜索

其它詞條