Циклическая запись в файл C++
Подскажите, пожалуйста, как можно грамотно написать циклическую запись в файл. Типовая программа.
using namespace std;
int main()
{
int N,i,a,b,c,d;
double p1,p2,p3,P,Pa,Pb,Pc;
system("chcp 1251");
system("cls");
ofstream out;
out.open("D:\\Result.dat");
if (out.is_open())
{
for (i=1 ; i<=8; i++)
{
cout << "К п х д";
cin >> a;
cout << "К п г н в";
cin >> b;
cout << "С к н";
cin >> c;
cout << "О к с м ";
cin >> d;
p1=a/d;
p2=b/d;
p3=c/d;
P=(p1+p2+p3)/3;
Pa=p1/3/P*100;
Pb=p2/3/P*100;
Pc=p3/3/P*100;
if (Pa>Pb && Pa>Pc)
{cout <<"В п х м " << Pa<<" %"<<endl;
out << "В п х м " << Pa<<" %"<<endl;
}
if (Pb>Pa && Pb>Pc)
{cout<<"В п г м " << Pb<< " %"<<endl;
out << "В п г м " << Pa<<" %"<<endl;
}
if (Pc>Pa && Pb<Pc)
{cout<<"В н м " << Pc<<" %"<<endl;
out<<"В н м " << Pc<< " %"<<endl;
}
system("cls");
}
}
getchar();
return 0;
}
То есть после каждого прогона я бы хотел записывать результат, на следующем прогоне посчитать новое значение и добавить его в этот же файл на новую строчку. И таким образом сделать 8 прогонов, записать 8 значений (каждое на свою строчку) в созданный файл.