Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // yapocetopravny.cpp : Defines the entry point for the console application.
- //
- #include "stdafx.h"
- #include <iostream>
- #include <string>
- #include <vector>
- using namespace std;
- struct Dom
- {
- string ulica;
- int cislo;
- double plocha;
- };
- void nacitaj(Dom * dom)
- {
- int i = 0;
- cout << "Zadajte ulicu domu: ";
- cin.sync();
- getline(cin,dom[i].ulica);
- cout << "Zadaj cislo domu: ";
- cin >> dom[i].cislo;
- cout << "Zadaj plochu domu v m^2: ";
- cin >> dom[i].plocha;
- cout << endl;
- }
- void vypis(Dom * dom)
- {
- int i = 0;
- cout << "Ulica domu je: " << dom[i].ulica;
- cout << "\nCislo domu je: " << dom[i].cislo;
- cout << "\nPlocha domu je: " << dom[i].plocha << "m^2" << endl;
- }
- void nacitajB(vector<Dom>&zoznam)
- {
- Dom dom;
- int N;
- cout << "\nZadaj pocet udajov (N): ";
- cin >> N;
- for(int i = 0; i < N; i++)
- {
- cout << "Zadaj ulicu " << i+1 << ". domu: ";
- cin.sync();
- getline(cin,dom.ulica);
- cout << "Zadaj cislo " << i+1 << ". domu: ";
- cin >> dom.cislo;
- cout << "Zadaj plochu " << i+1<< ". domu: ";
- cin >> dom.plocha;
- zoznam.push_back(dom);
- }
- }
- void vypisB(vector<Dom>&zoznam)
- {
- for(int i = 0; i < zoznam.size(); i++)
- {
- cout << endl;
- cout << "Dom c. "<<i+1<< ". ma udaje: " << "Ulica: " << zoznam[i].ulica;
- cout <<", Cislo: "<< zoznam[i].cislo;
- cout <<", Plocha: " << zoznam[i].plocha << "m^2" ;
- }
- cout << endl;
- }
- void zoradSelect(vector<Dom>&zoznam)
- {
- Dom dom;
- int imin;
- for (int I=0; I<=zoznam.size()-2; I++)
- {
- imin = I;
- for (int J=I+1; J<=zoznam.size()-1; J++)
- {
- if (zoznam[J].plocha < zoznam[imin].plocha)
- imin = J;
- }
- dom = zoznam[I];
- zoznam[I] = zoznam[imin];
- zoznam[imin] = dom;
- }
- }
- int _tmain(int argc, _TCHAR* argv[])
- {
- vector<Dom> zoznam;
- Dom * dom = NULL;
- dom = new Dom[1];
- cout << "Zadanie po A, jedna struktura" << endl;
- nacitaj(dom);
- vypis(dom);
- delete[]dom;
- cout << "Zadanie po B, zoznam struktur" << endl;
- nacitajB(zoznam);
- cout << "Nezotriedeny zoznam: " << endl;
- vypisB(zoznam);
- zoradSelect(zoznam);
- cout << "\nZotriedeny zoznam podla PLOCHY: ";
- vypisB(zoznam);
- zoznam.clear();
- system("Pause");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement