Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- class Kruznica2D {
- public:
- float x, y, r;
- Kruznica2D() {}
- Kruznica2D(float x, float y, float r)
- {
- this->x = x;
- this->y = y;
- this->r = r;
- }
- };
- typedef Kruznica2D Tip;
- class Cvor {
- public:
- Cvor* next;
- Tip info;
- Cvor(Tip info, Cvor* next = nullptr) {
- this->info = info;
- this->next = next;
- }
- };
- class PrioRedPov {
- Cvor* prvi;
- /*ovaj dio se razlikuje od zadatka do zadatka, ostatak kod-a kod nas na fakultetu za ispit je uvijek isti default-ni*/
- float najvecaPovrsina(Tip x) {
- float pi = 3.14;
- return pow(x.r, 2) * pi;
- }
- public:
- PrioRedPov() {
- prvi = nullptr;
- }
- void dodaj(Tip x) {
- Cvor* temp = prvi;
- Cvor* privremeni = nullptr;
- while (temp != nullptr)
- {
- if (najvecaPovrsina(temp->info) > najvecaPovrsina(x))
- break;
- privremeni = temp;
- temp = temp->next;
- }
- Cvor* novi = new Cvor(x);
- if (privremeni == nullptr)
- prvi = novi;
- else
- privremeni->next = novi;
- novi->next = temp;
- }
- Tip ukolni()
- {
- if (jeLiPrazan())
- {
- return Tip();
- }
- Cvor* temp = prvi;
- prvi = prvi->next;
- Tip x = temp->info;
- delete temp;
- return x;
- }
- bool jeLiPrazan() {
- return prvi == nullptr;
- }
- void ispis() {
- Cvor* temp = prvi;
- while (temp != nullptr)
- {
- cout << temp->info.x << " " << temp->info.y << " " << temp->info.r << endl;
- temp = temp->next;
- }
- }
- };
- int main() {
- Kruznica2D k1(1, 23, 3),
- k2(9, 5, 6),
- k3(6, 5, 4),
- k4(9, 2, 0),
- k5(7, 4, 3);
- PrioRedPov A;
- A.dodaj(k1);
- A.dodaj(k2);
- A.dodaj(k3);
- A.dodaj(k4);
- A.dodaj(k5);
- Kruznica2D uklonjena = A.ukolni();
- cout << "Uklonjeno: " << uklonjena.x << " " << uklonjena.y << " " << uklonjena.r << endl;
- cout << "Dodano: " << endl;
- A.ispis();
- system("PAUSE");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement