2017-06-18 63 views
-10

我目前已設置,使值,r = 10。然後,我使用r對其他變量執行一些計算,然後在第一個system("Pause")後更改r(未顯示)的值,並期望我之前計算的變量得到更新,但它們不是。一旦r已更新,如何更新多個變量(calcArea等)?C++:「如何更改一個變量後,它已經是int」

int r = 10, pi = 3.14, calcArea = 0, calcCircumfrence = 0, calcDiameter = 0; 

int main() { 
    calcArea = pi*r*r; 
    calcCircumfrence = 2 * pi*r; 
    calcDiameter = 2 * r; 
    cout << "Area: " << calcArea << endl; 
    cout << "Diameter: " << calcDiameter << endl; 
    cout << "Circumfrence " << calcCircumfrence << endl; 
    system("Pause"); 
    // Once I've updated r, why haven't these variables changed? 
    cout << "Area: " << calcArea << endl; 
    cout << "Diameter: " << calcDiameter << endl; 
    cout << "Circumfrence " << calcCircumfrence << endl; 
    system("pause"); 
    // The system follows PEMDAS on point 
    return 0; 
} 
+0

這是怎麼回事任何與'calcArea'或'calcDiameter'做的不同?你不明白什麼?你甚至不試圖將其改變爲不同的值。 – Tas

+1

歡迎來到Stack Overflow。請花些時間閱讀[The Tour](http://stackoverflow.com/tour),並參閱[幫助中心](http://stackoverflow.com/help/asking)中的資料,瞭解您可以在這裏問。 –

+0

這是重讀您的編程文本早期章節的好時機。看起來你錯過了幾個基本概念。如果你沒有編程文本,[在這裏推薦幾個](https://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list)。 – user4581301

回答

0

只需使用普通的變量賦值:

r = 15; 

爲了使您的計算值進行更新,以這種新r你有重拍他們:

calcArea = pi*r*r; 
calcCircumfrence = 2 * pi*r; 
calcDiameter = 2 * r; 
+0

我試過這個,但由於某些原因,該值仍然是原始的int值。當重新計算時。 –

+0

@Name更改變量的值不會導致重新計算任何內容。 –

+0

更改值後,必須手動重新計算所有內容,執行相應的指令 – Isac

相關問題