for循环问题

时间:2013-01-09 13:59:03

标签: c++ loops for-loop

我的程序有问题,我需要写入文件,每个玩家在5天内玩了多少游戏,这是我的txt文件:第一行的第一个数字是他们玩了多少天,从第2行到第一个数字第5行是他们玩了多少天,每一行中的其他数字是他们在这些天玩了多少游戏:

5
5 3 2 3 1 2
3 6 2 4
4 2 2 1 2
3 3 3 3
2 3 4

这是我的计划:

 #include <iostream>
 #include <fstream>
 using namespace std;
 int main()
 {
     int programuotojai,programos;
     ifstream fin ("duomenys.txt");
     fin >> programuotojai; //players

     for(int i = 1; i <= 6; i++){
     fin >> programos; //games played
     cout << programos;
 } 
 }

你能帮我把这个程序写到最后,谢谢。

2 个答案:

答案 0 :(得分:1)

在阅读了比赛次数后,您需要自己阅读比赛。类似的东西:

#include <iostream>
#include <fstream>
using namespace std;
int main()
{
    int programuotojai,programos;
    ifstream fin ("duomenys.txt");
    fin >> programuotojai; //players

    for(int i = 1; i <= programuotojai; i++){
    fin >> programos; //games played
     cout << programos;
    for (int j=0;j<programos;++j) {
      int day;
      fin>>day;
      // ..... do some fancy stuff
    }
 } 
 }

也可以使用programuotojai代替常量6(如果我正确得到代码)。

我不会写完整的程序,但在我看来,你必须在每一行上总结数字。

答案 1 :(得分:0)

我认为这可能就是你要找的东西:

#include <iostream>
#include <fstream>

using namespace std;

int main()
{
    int players, daysPlayed, totalPlayed; 

    ifstream fin ("duomenys.txt");
    fin >> players; //  number of players.

    for( int playerCount = 1; playerCount <= players; playerCount++ ) {
        totalPlayed = 0;
        fin >> daysPlayed; //   number of days a player played games.

        for ( int dayCount = 1; dayCount <= daysPlayed; dayCount++ ) {
            int daysGameCount;
            fin >> daysGameCount; // amount of games a player played on each day.
            totalPlayed += daysGameCount;
        }
        cout << totalPlayed << endl;
        //  ... do whatever you want with the result
    }
}