2017-06-28 3 views
-5

PART 1 次のようなプログラムを作成してください。
1.アレイ内の連続した日数を入力する機能を呼び出します。温度は整数でなければならない。
2.ユーザーは温度の数を入力します。 10以上の温度はありません。
3.配列を昇順でソートする関数を呼び出す。説明できる限り、任意のソートアルゴリズムを使用できます。
4.温度の平均を返す関数を呼び出します。平均値は小数点以下2桁まで表示する必要があります。C++初級配列プログラム

私のソースコードは以下の通りですが、正しい軌道に入っていますか?
この質問にはどのアルゴリズムを使用する必要がありますか?
4番は、平均的な関数を使うことができますか?
また、初心者がC++を勉強するために推薦するYouTubeチャンネルやその他の学習ソースはありますか?私は本を​​読むことを試みたが、私が実際に私を助けているとは思わなかった。
私は初心者です。オンラインで検索しようとしましたが、解決策が見つかりませんでした。

#include <iostream> 
using namespace std; 
int main() 
{ 
    int numtemp; 
    cout<<"Please input the number of temperatures to be read"<<endl; 
    cin>>numtemp; 
    int temp[numtemp]; 
    for (int i=0;i<numtemp;i++) 
    { 
     cout<<"Please input temperatures for day "<<(i+1)<<endl; 
     cin>>temp[i]; 
    } 
    return 0; 
} 
+1

[決定的なC++ブックガイドとリスト](https://stackoverflow.com/a/388282/7076153) – Stargateur

+1

、あなたが使用する必要があります役立ちますベクトル。 – Stargateur

+0

あなたの答えをありがとう! – Andrew

答えて

0

、それは非常によく完璧なソリューションが存在しない場合は、を書い機能を呼び出す意味するかもしれない「関数を呼び出す」と言うとき、私は...助けることができるかどうかを確認できます。以下のコードは#4の私の実装を示しています。

#include <iostream> 

double AvgFunction(int numTemp, int* temp); 

int main() 
{ 
    int numTemp; 
    std::cout << "Please input the number of temperatures to be read" << std::endl; 
    std::cin >> numTemp; 
    int temp[numTemp]; 
    for (int i = 0;i < numTemp; i++) 
    { 
     std::cout << "Please input temperatures for day "<< (i+1) << std::endl; 
     std::cin >> temp[i]; 
    } 
    std::cout << AvgFunction(numTemp, temp) << std::endl; 

    return 0; 
} 

double AvgFunction(int numTemp, int* temp) 
{ 
    double returnVal = 0; 
    for(int i = 0; i < numTemp; i++) 
    { 
     returnVal += temp[i]; 
    } 
    returnVal /= numTemp; 
    return returnVal; 
} 

私はAvgFunction、呼び出す関数は、メインの下に書かれています。このリンクは機能を説明しており、次のような問題で成功する方法を学ぶ上で最も役立ちます。 http://www.cplusplus.com/doc/tutorial/functions/

#3を完了するには、別の機能を記述する必要があります。同じ構造を使用しますが、問題を解決するために異なる内容を使用してください。最も簡単なソートアルゴリズムの説明: http://www.geeksforgeeks.org/selection-sort/

私がこの関数で使用する演算子は、複合演算子と呼ばれます。 "複合演算子"を検索した場合の詳細情報

mainの前に追加した行は関数プロトタイプです。 「関数プロトタイプ」を検索した場合の詳細情報

希望これは私がVLAは、C++での標準であるとは思わない

+0

のように、StargaturがVLAの代わりにベクトルを使用する[ここ](https://stackoverflow.com/a/1887178/7868736)はなぜですか – Tyger