我想知道如何記錄變化的變量的以前的值。此問題的一個示例如下:記錄變量的值
int distanceFormula(int x1, int x2, int y1, int y2){
int distance;
distance = sqrt(pow((x1-x2), 2) + pow((y1-y2), 2));
return distance;
}
int main(){
for(int i = 0; i < 2; i++){
int x = rand() % 180;
int y = rand() % 180;
int x2 = rand() % 180;
int y2 = rand() % 180;
int distance = distanceFormula(x, x2, y, y2);
int priordistance = distanceFormula(x, x2, y, y2);
if(priordistance != distance){
cout<<"Yes! It worked!"<<endl;
}
}
return 0;
}
該代碼本身不會返回「是!它工作!」如何記錄先前的距離值,然後將之前的值與當前值進行比較?
編輯: 感謝您的快速評論!真的很感激它。
要澄清實際問題,上面的代碼只是一個快速的模板/示例。由於距離值會在第二個迴路周圍發生變化,因此如何記錄距離的第一個值並將該值設置爲priordistance,然後將距離的當前值與priordistance進行比較(其值實際上只是前一個距離值) 。
定義'for'環路範圍以外的'priordistance'變量? –
您使用相同的參數調用'distanceFormula'函數兩次,所以它會得到相同的結果。爲什麼會輸出'是的!它的工作!'? – Polb