Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <fstream>
- #include <string>
- #include <iostream>
- using namespace std;
- class Student {//
- string name;//deklaracje
- string surname;//string to ci¹g znaków, typ zmiennej
- int height;//liczba ca³kowita(max 4 bajty)
- double weight;//liczba wiêksza (liczba rzeczywista)
- public:
- Student() {
- name;
- surname;
- height;
- weight;
- }
- Student(string _name, string _surname, int _height, double _weight) {
- name = _name;
- surname = _surname;
- height = _height;
- weight = _weight;
- }//funkcja przenosz¹ca która przepisuje z name do _name
- string toString() {//zapisze wszystkie dane jako jeden ci¹g
- return name + " " + surname + " " + string to_string(height) + " " + string to_string(weight);//zwróci dane
- }
- int compareTo(Student &student) {//funkcja która porównuje
- int val = height - student.height;
- if (val == 0)
- val = weight - student.weight;
- return val;
- }
- };
- int main()
- {
- Student tabOfStudents[35];//deklaracja tablicy
- string name;//--
- string surname;//--
- int height;//--
- double wage;//--
- cout << "Podaj dane studentów imie nazwisko wzrost waga" << endl;//wypisanie tekstu
- for (int i = 0; i < 35; i++)////pentla wypisuj¹ca talicy dane pobrane z funkcji student
- {
- cin >> name >> surname >> height >> wage;
- tabOfStudents[i] = Student(name, surname, height, wage);//przypisanie wszystkiego do tej tablicy linijka
- }
- for (int i = 0; i < 35; i++)
- for (int j = i; j < 1; j++)
- if (tabOfStudents[i].compareTo(tabOfStudents[j]) < 0)//pentla która robi porównanie 1 z 2 bêdzie zamieniaæ miejscami
- swap(tabOfStudents[i], tabOfStudents[j]);//zamiana miejscami pentla
- for (int i = 0; i < 35; i++)//pentla która wypisuje wszystko z tablicy
- cout << tabOfStudents[i].toString() << endl;
- cout << "Chcesz zapisaæ do pliku ? (TAK - tak, cokolwiek innego - nie)" << endl;
- cin >> name;
- if (name == "Tak" || name == "TAK" || name == "tak")
- {
- fstream plik;//biblioteka !!!
- plik.open("studenci.txt", std::ios::in | std::ios::out);// otwarcie pliku (ios::out)-zapisanie danych do pliku ios::in-pozwala na odczytanie danych z pliku
- if (plik.good() == true)//da odpowiedz tak jeœli uda siê uzyskaæ dostêp programowi do tego pliku , zwraca tak albo nie,jeœli tak przejdzie do pentli for i zapisze plik,
- {
- for (int i = 0; i < 35; i++)
- plik << tabOfStudents[i].toString() << endl;;
- plik.close();//program zosta³ zapisany
- cout << "Zapisano dane do pliku" << endl;
- }
- else std::cout << "Dostep do pliku zostal zabroniony!" << std::endl;//program niedosta³ dostêp do pliku
- }
- else {
- cout<<"Nie zapisano do pliku na prosbe uzytkownika"<<endl;//pojawi siê jeœli u¿ytkownik nie wpisze tak
- }
- cin.ignore();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement