2016-03-30 17 views
0

こんにちは私はBMEの学生で、プログラミングに関する情報はあまりありません。私はデータを実行するのに完全に使えるシンプルなプログラムをインターネット上に見つけましたが、手作業でしか入力できません。私はすべての値を1つずつ入力するのに時間がかかりますので、データファイルを自動化したいのです。可能にするためにいくつかのモジュールを統合するのを手伝ってください。コードは非常に長いです、私は、プログラム全体を置きたくなかったが、入力部は以下の通りです:このプログラムの入力方法を変更するには?

int m; 
cout << "Enter the MRI number" << endl; 
cin >> m; 
cout << "Enter the extensions one by one" << endl; 
for (i=1; i<=m; i++) 
    cin >> a[i]; 

だから、プログラムのメインロジックは次のとおりです。

1) Enter the total number of MRI extensions >> 4 
2) Enter the MRI extensions >> 12131415 12131411 12131419 12131421 
3) Run the algorithm and get the output 

そして、私のデータファイルこのようになります:

4 
12131415 
12131411 
12131419 
12131421 

大体これはプロセスであり、それは上記の例にあるように私のデータファイルは約70〜75拡張子ごとではなく、4が含まれています。

どんな種類のヘルプでも大歓迎です。ありがとう!

p/s私の質問がどういうわけか質問をするルールに違反している場合は、本当に申し訳ありません。私の質問には私の仕事が含まれているはずだが、本当にこれをどう扱うべきか分からない。

+1

標準入力をファイルにリダイレクトしてプログラムを実行するだけです。コマンドラインで 'programName

+0

" your program Slava

+0

BME学生とは何ですか?私は略語を本当に嫌いです。 –

答えて

-1

基本的には、入力ストリーム(cinとcout)を受け入れる方法は2つあります。 catの "input file"のようなものをLinuxのために使っているシステムに応じて、プログラムを呼び出すときに自動化します(コンソールの情報を与えるプログラムを使用します)。あなたの実行可能ファイル第2の可能性は、入力ストリームをファイルストリームに変更することである。この場合、cinとcoutを使用する代わりに、宣言されたファイルストリームをまったく同じ方法で使用する必要があります。ここ

はcplusplus.comの例である:

#include <iostream>  // std::cout 
#include <fstream>  // std::ifstream 

int main() { 

    std::ifstream ifs ("test.txt", std::ifstream::in); 

    char c = ifs.get(); 

    while (ifs.good()) { 
    std::cout << c; 
    c = ifs.get(); 
    } 

    ifs.close(); 

    return 0; 
} 

最初の行は、入力および出力ストリームを含みます。 そして、この行:

std::ifstream ifs ("test.txt", std::ifstream::in); 

は、実際のストリームを構築するには、残りの部分は、ストリームの使用です。

int m; 
std::ifstream myinputfile ("file you want to read", std::ifstream::in); 
myinputfile >> m; 
for (i=1; i<=m; i++) 
    myinputfile >> a[i]; 
+1

'while(ifs.good())'はwhile(!ifs.eof())と同じくらい悪いです。参照してください:[iostream :: eofがループ状態の中で間違っているのはなぜですか?](http://stackoverflow.com/questions/5605125/why-is-iostreameof-inside-a-loop-condition-considered-wrong) – NathanOliver

+0

Iコードを作成せず、cplusplus.comから直接投稿しました。 – cerkiewny

+1

これは、cplusplus.comを使用しないもう一つの理由です。また、他の場所から資料をコピーしている場合は、引用してブロックして、他の人の作品であることを視覚的に確認してください。 FYI非常に良いC++リソースはcppreference.comです – NathanOliver

関連する問題