Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "stdafx.h"
- #include <iostream>
- using namespace std;
- using namespace System;
- float frand(float fMin, float fMax);
- #define max_size 10
- class climate_build;
- class climate_street;
- class climate
- {
- float temperature;
- int light; // %
- int water; // %
- int cys; // %
- public:
- climate();
- ~climate();
- friend void enter_value(climate&, climate_build&, climate_street&);
- friend void print_value(climate*, climate_build*, climate_street*, int n);
- friend bool operator >(climate a, climate_street b);
- friend climate& operator ++(climate &a);
- private:
- };
- class climate_build
- {
- int optical_climate; // %
- int permit;
- public:
- climate_build();
- ~climate_build();
- friend void enter_value(climate&, climate_build&, climate_street&);
- friend void print_value(climate*, climate_build*, climate_street*, int n);
- friend climate& operator ++(climate &a);
- private:
- };
- class climate_street
- {
- int critical_water; // %
- int critical_cys; // %
- public:
- climate_street();
- ~climate_street();
- friend void enter_value(climate&, climate_build&, climate_street&);
- friend void print_value(climate*, climate_build*, climate_street*, int n);
- friend bool operator >(climate a, climate_street b);
- friend climate& operator ++(climate &a);
- private:
- };
- bool operator >(climate a, climate_street b)
- {
- if (a.water < b.critical_water && a.cys < b.critical_cys)
- return false;
- return true;
- }
- climate& operator ++(climate &a)
- {
- a.water++;
- return a;
- }
- void enter_value(climate &a, climate_build &b, climate_street &c)
- {
- a.temperature = frand(1.0, 100.0);
- a.light = (int)frand(1.0, 100.0);
- a.water = (int)frand(1.0, 100.0);
- a.cys = (int)frand(1.0, 100.0);
- b.optical_climate = (int)frand(1.0, 100.0);
- b.permit = (int)frand(1.0, 100.0);
- c.critical_water = (int)frand(1.0, 100.0);
- c.critical_cys = (int)frand(1.0, 100.0);
- }
- void print_value(climate* a, climate_build* b, climate_street* c, int n)
- {
- setlocale(LC_CTYPE, "ukr");
- for (int i = 0; i < n; i++)
- {
- cout << "Номер - " << i << endl;
- cout << "Освiтленiсть - " << a[i].light << " %\n";
- cout << "Води - " << a[i].water << " % " << "( Максимальна норма - " << c[i].critical_water << " )\n";
- cout << "Кислотнiсть - " << a[i].cys << " % " << "( Максимальна норма - " << c[i].critical_cys << " )\n";
- /*if (a[i].water > c[i].critical_water)
- cout << "Знайдено критичний рiвень води в [" << i << "]. Вiн становить - " << a[i].water << " . Норма - " << c[i].critical_water << endl;
- if (a[i].cys > c[i].critical_cys)
- cout << "Знайдено критичний рiвень кислотностi в [" << i << "]. Вiн становить - " << a[i].cys << " . Норма - " << c[i].critical_cys << endl;*/
- if (a[i] > c[i])
- {
- a[i]++;
- cout << "Було знайдено критичний параметр. Процент води повищено. Тепер становить - " << a[i].water;
- }
- cout << "\n\n";
- }
- }
- climate_street::climate_street()
- {
- }
- climate_street::~climate_street()
- {
- }
- climate_build::climate_build()
- {
- }
- climate_build::~climate_build()
- {
- }
- climate::climate()
- {
- }
- climate::~climate()
- {
- }
- int main()
- {
- climate a[max_size];
- climate_build b[max_size];
- climate_street c[max_size];
- for(int i = 0; i < max_size; i++)
- enter_value(a[i], b[i], c[i]);
- cout << "Random Value entered.\n";
- print_value(a, b, c, max_size);
- return 0;
- }
- float frand(float fMin, float fMax)
- {
- float f = (float)rand() / RAND_MAX;
- return fMin + f * (fMax - fMin);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement