Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- using namespace std;
- const short N = 10;
- struct Student
- {
- string imie;
- string nazwisko;
- string e_mail;
- short nr_roku;
- float srednia_ocen_studenta;
- };
- //void wypisywanie_danych_na_ekran(Student wypisywanie)
- //{
- // cout << "DANE STUDENTA \n";
- // cout << wypisywanie.imie << "\n";
- // cout << wypisywanie.nazwisko << "\n";
- // cout << wypisywanie.e_mail << "\n";
- // cout << wypisywanie.nr_roku << "\n";
- // cout << wypisywanie.srednia_ocen_studenta << "\n";
- //}
- //void pobieranie_danych_studenta(Student& obiekt)
- //{
- // cout << "Wpisz swoje imie: \n";
- // cin >> obiekt.imie;
- // cout << endl;
- //
- // cout << "Wpisz swoje nazwisko: \n";
- // cin >> obiekt.nazwisko;
- // cout << endl;
- //
- // cout << "Wpisz swoje e_mail: \n";
- // cin >> obiekt.e_mail;
- // cout << endl;
- //
- // cout << "Wpisz swoj nr roku: \n";
- // cin >> obiekt.nr_roku;
- // cout << endl;
- //
- // cout << "Wpisz srednia swoich ocen: \n";
- // cin >> obiekt.srednia_ocen_studenta;
- // cout << endl;
- //}
- //
- //void wczytywanie_danych_studentow(Student& dane, ifstream& plik)
- //{
- // plik >> dane.imie >> dane.nazwisko >> dane.e_mail >> dane.nr_roku >> dane.srednia_ocen_studenta;
- //
- //}
- istream& operator>>(istream& in, Student& dane)
- {
- in >> dane.imie >> dane.nazwisko >> dane.e_mail >> dane.nr_roku >> dane.srednia_ocen_studenta; // pobranie danych do buforu wejścia
- return in; // zwrócenie bufora
- }
- ostream& operator<<(ostream& out, const Student& dane)
- {
- out << "Dane studenta: " << dane.imie << ' ' << dane.nazwisko << ", adres e-mail: " << dane.e_mail << " (" << dane.nr_roku << " rok), srednia ocen: " << dane.srednia_ocen_studenta;
- return out;
- }
- bool pobieranie_danych_z_pliku(Student* tablica, string nazwa_pliku)
- {
- ifstream plik;
- plik.open(nazwa_pliku);
- if (plik.fail())
- return 1; // zwrócenie błędu
- for (short i = 0; i < N; ++i)
- {
- plik >> tablica[i];
- }
- plik.close();
- return 0;
- }
- float srednia_ocen(Student* dane)
- {
- float suma_ocen = 0;
- for (short i = 0; i < N; ++i)
- {
- suma_ocen += dane[i].srednia_ocen_studenta;
- }
- float srednia = suma_ocen / N;
- return srednia;
- }
- int main()
- {
- Student tablica[N];
- cout << "Wpisz nazwe pliku, z ktorego maja zostac pobrane dane: ";
- string nazwa_pliku;
- cin >> nazwa_pliku;
- if (pobieranie_danych_z_pliku(tablica, nazwa_pliku))
- {
- cout << "Nie udalo sie odczytac danych z pliku.\n";
- return 0;
- }
- for (short i = 0; i < N; ++i)
- cout << tablica[i] << endl;
- cout << endl;
- cout << "Srednia uczniow wynosi: " << srednia_ocen(tablica);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement