Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Дан файл f, компоненты которого являются действительными числами.
- // Найти: Наибольшее значение в файле.
- //Записать это значение в конец файла столько раз, сколько положительных чисел было в исходном файле.
- #include <iostream>
- #include <fstream>
- #include <cstdlib>
- using namespace std;
- int main ()
- {
- int value;
- int MAX=0;
- int counter=0;
- //Чтение из файла, поиск максимума, подсчет количества положительных чисел
- ifstream fin;
- fin.open("f.txt");
- if(!fin.is_open())
- {
- cout<<"This file does not exist"<<endl;
- exit(EXIT_FAILURE);
- }
- fin>>value;
- MAX=value;
- if(value>0)
- counter +=1;
- while(fin.good())
- {
- fin>>value;
- MAX=(value>MAX)?value:MAX;
- if(value>0)
- counter+=1;
- }
- if(fin.eof())
- cout<<"End of file reached."<<endl;
- else if(fin.fail())
- cout<<"Input terminated by data mismatch."<<endl;
- else
- cout<<"Input terminated for unknown reason."<<endl;
- fin.close();
- //Запись в файл
- ofstream fout;
- fout.open("f.txt",ios::app);
- for(int i=1; i<=counter; i++)
- fout<<MAX<<endl;
- fout.close();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement