Witam czy ktoś pomoże mi zrobić to zadanie ? potrzebne na dzis !!!!
W pliku temp.txt znajduje się wykaz średnich temperatur w poszczególnych miesiącach w latach 1779-2006. W każdej linii zapisany jest rok i średnie miesięczne temperatury. Każda informacja jest oddzielona spacją. Napisz program który:
obliczy i wyświetli średnie temperatury w poszczególnych latach
wskaże rok, w którym był najcieplejszy styczeń
wskaże rok, w którym był najzimniejszy styczeń
wskaże rok, w którym była najwyższa średnia temperatura roczna
wskaże rok, w którym była najniższa średnia temperatura roczna
dla każdego miesiąca poda najwyższą, najniższą temperaturę występującą w zestawieniu oraz lata, w których te skrajne wartości wystąpiły.
Wyniki mają być wyświetlane na ekranie i zapisywane do pliku.
Program ma być tak napisany, aby działał poprawnie dla każdego pliku o takim samym układzie danych w wierszu.
operacje tylko na <string> <fstream> <iostream>
c++ operacje na plikach
Re: c++ operacje na plikach
podaję trzy linijki zawartosci pliku temp
1779 -4.9 2.2 3.8 9.5 15.4 16.4 17.9 19.5 14.7 9.3 4.1 1.4
1780 -5.1 -4.3 4.4 5.9 14.2 17.2 19.4 17.9 13.1 9.4 2.8 -4.6
1781 -4.0 -1.9 1.5 9.1 13.8 19.2 20.1 22.8 16.2 6.0 4.0 -3.6
1779 -4.9 2.2 3.8 9.5 15.4 16.4 17.9 19.5 14.7 9.3 4.1 1.4
1780 -5.1 -4.3 4.4 5.9 14.2 17.2 19.4 17.9 13.1 9.4 2.8 -4.6
1781 -4.0 -1.9 1.5 9.1 13.8 19.2 20.1 22.8 16.2 6.0 4.0 -3.6
-
- Początkujący
- Posty: 7
- Dołączył(a): sobota, 26 maja 2012, 14:08
Re: c++ operacje na plikach
Zadanie nie wydaje się trudne. po prostu musisz wczytywać za pomocą chociażby fstream, liczbę podaną do chociażby vector'a
Mniej więcej to powinno wyglądać tak :
Styczeń można pobrać poprzez operację modulo 
Mniej więcej to powinno wyglądać tak :
Code: Zaznacz cały
#include <iostream>
#include <string>
#include <fstream>
#include <vector>
using namespace std;
class file
{
private : string filename;
int i;
float f;
vector<float> v;
ifstream in;
static const unsigned int r = 2;
float tab_st[r];
public : file()
{
filename = "temp.txt";
i = 0;
};
~file()
{
};
void open_file();
void show_vector();
};
void file::open_file()
{
in.open(filename.c_str());
while(!in.eof())
{
in >> f;
if((i % 13) != 0)
v.push_back(f);
++i;
}
in.close();
};
void file::show_vector()
{
for(unsigned int i = 0; i < v.size();++i)
{
if(i % 12 == 0)
cout << endl;
cout << v[i] << " ";
}
};
int main()
{
file q;
q.open_file();
q.show_vector();
cin.sync();
cin.get();
return 0;
}
