Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- #include <climits>
- using namespace std;
- struct Interval
- {
- int a, b;
- };
- int n;
- Interval in[1000];
- void Citire()
- {
- ifstream fin("interv.in");
- fin >> n;
- for(int i = 0; i < n; i++)
- fin >> in[i].a >> in[i].b;
- fin.close();
- }
- ofstream fout("interv.out");
- void Afisare()
- {
- for(int i = 0; i < n; i++)
- fout << "\t" << in[i].a << " " << in[i].b << "\n";
- }
- //a)
- void LungMax()
- {
- int mx = INT_MIN, lung;
- for(int i = 0; i < n; i++)
- {
- lung = in[i].b - in[i].a;
- if(lung > mx) mx = lung;
- }
- fout << "a)Lungimea maxima a unui interval: " << mx;
- }
- //b
- void Intersec()
- {
- fout << "\n\nb)Intervalele care se intersecteaza cu intervalul [-5, 5]: \n";
- for(int i = 0; i < n; i++)
- if(((in[i].a >= -5)&&(in[i].a <= 5)) ||
- (in[i].b >= -5)&&(in[i].b <= 5))
- fout << "\t" << in[i].a << " " << in[i].b << "\n";
- }
- //c)
- void Intersch(int x, int y)
- {
- Interval aux;
- aux = in[x];
- in[x] = in[y];
- in[y] = aux;
- }
- void Ord()
- {
- for(int i = 0; i < n-1; i++)
- for(int j = i+1; j < n; j++)
- if(in[i].b > in[j].b) Intersch(i, j);
- fout << "\nc)Intervalele ordonate crescator dupa capatul dreapt :\n";
- Afisare();
- }
- //d)
- int axa_neg[1000], axa_poz[1000];
- void Submult()
- {
- for(int i = 0; i < n; i++)
- {
- for(int a = in[i].a; a <= in[i].b; i++)
- {
- if(a < 0) axa_neg[a * -1]++;
- else axa_poz[a]++;
- }
- }
- }
- int main()
- {
- Citire();
- LungMax();
- Intersec();
- Ord();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement