[英]C++ strings and arrays
我對C ++家庭作業的問題有疑問。
編寫一個程序來分析過去10天的汽油價格。 首先,要求用戶輸入價格。 然后執行以下操作:(a)計算並顯示前5天的平均價格和第二個5天的平均價格(b)比較兩個平均價格。 確定並報告哪一個更高(或它們是相同的)。 (c)將每天的價格(第1天除外)與前一天的價格進行比較。 確定它是變高,變低還是保持不變。 計算並報告價格分別高於,低於前一天價格的天數。
我不確定如何比較如何比較前五天和過去五天,而部分c我完全迷失了....
我不是在尋找有人為我做功課,但是朝着正確的方向努力將是一個很大的幫助!
這是我到目前為止所做的:
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
double gasPrice[10];
double firstFive = 0.0;
double lastFive = 0.0;
double ffAvg = 0.0;
double lfAvg = 0.0;
for (int x = 0; x < 10; x = x + 1)
{
gasPrice[x] = 0.0;
}
cout << "You will be asked to enter daily gas prices for 10 days."<< endl;
ofstream gasprice;
gasprice.open("gasprice.txt", ios::app);
if (gasprice.is_open())
{
for (int x = 0; x < 10; x = x + 1)
{
cout << "Enter the gas price " << x+1 << ": ";
getline(cin, gasPrice[x];
}
if ( ffAvg > lfAvg)
{
cout << "The first five days have a lower gas price " << ffAvg << lfAvg << endl;
}
else if ( ffAvg < lfAvg)
{
cout << "The last five days have a lower gas price " << ffAvg << lfAvg << endl;
}
system("pause ");
return 0;
}
閱讀要求,就像它們是描述而不是計算機公式。 在第一次學習東西時,它會變得勢不可擋,我們會被另一種環境中自然而然的東西淹沒。
無論如何,你不是要單獨比較天數,而是平均天數。 因此,您首先需要計算前五天的AVERAGE和后五天的平均值,然后進行比較。
對於問題的第二部分,總計的聚合器是我給你的推動力。
希望這可以幫助。
將問題分解為一系列階段:首先,您需要從用戶那里獲得10個輸入價格,並將它們存儲在大小為10的數組中。
接下來,您需要計算前五天的平均價格(即數組的索引0-4中的值),並將其存儲在ffAvg中,您可以使用以下簡單的for
循環來執行此操作:
double sum;
for( int i = 0; i < 5; i++ )
{
sum += gasPrice[i];
}
double ffAvg = sum / 5;
然后在第2天完成此操作,將平均值存儲在lfAvg中。
您的任務的下一部分是比較平均值,您可以使用if
和else if
語句執行此操作,例如,如果要與數字, num1
和num2
進行比較,則可以執行以下操作:
if( num1 > num2 )
{ /* Do something */ }
這將比較num1
和num2
,如果num1
大於num2
,它將執行大括號中的代碼。
要進行最后一次比較,您只需將我們上面所做的工作按天組合。 嘗試嘗試各種方法,因為這將有助於您了解更多信息。
希望這對你有所幫助! :)
編輯:我也注意到你沒有關閉很多你的護腕,你必須總是這樣做,這樣編譯器才能正常工作。 每個{
必須有一個對應的}
,否則編譯器應該拋出錯誤,而不是編譯。
我覺得如下:
double average1=0.0;
for(int i=0;i<5;++i) {
average1 += values[i];
}
average1/=5.0;
double average2=0.0;
for(int i=5;i<10;++i) {
average2 += values[i];
}
average2/=5.0;
另外,看一下std :: vector,它可以幫助你進一步練習: http : //www.cplusplus.com/reference/stl/vector/
您應該首先計算第一天和最近5天的平均值。 平均值由總和除以項目數來定義。 所以你的平均值是(gasPrice[0] + gasPrice[1] + gasPrice[2] + gasPrice[3] + gasPrice[4]) / 5.0
。
您應該在類似於獲取輸入的循環中進行此計算。 循環應該只迭代5次。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.